Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to integrate with Jenkins #116

Open
nadishan opened this issue Jan 10, 2021 · 4 comments
Open

Unable to integrate with Jenkins #116

nadishan opened this issue Jan 10, 2021 · 4 comments

Comments

@nadishan
Copy link

I run this image using Jenkins. But gradlew is failed with this error message.

The SDK directory is not writable (/opt/android)

Jenkinsefile

pipeline {
  agent {
    docker {
      image 'reactnativecommunity/react-native-android'
    }

  }
  stages {
    stage('Test') {
      steps {
        sh 'npm install'
      }
    }

    stage('Build') {
      steps {
        sh 'cd android && chmod +x gradlew && ./gradlew assembleRelease'
      }
    }

    stage('PROD') {
      parallel {
        stage('PROD') {
          steps {
            echo 'prod'
          }
        }

        stage('DEV') {
          steps {
            echo 'dev'
          }
        }

      }
    }

  }
  environment {
    npm_config_cache = 'npm-cache'
  }
}
@gengjiawen
Copy link
Member

Not sure jenkins version you are using. Works well on our jenkins server.

@robcee
Copy link

robcee commented Aug 31, 2021

I'm having issues with our jenkins installation as well. We're on Jenkins 2.289 and when using the docker agent, we're running inside it as the jenkins user on the node. This runs into a bunch of permissions and home directory issues inside the container during yarn / npm installs.

To get around this, we've tried running the container as root by passing -u 0:0. This works fine, but the outputs on our workspace are all owned by the root user (uid 0) and not readable by any of the subsequent steps (e.g., archiving artifacts).

If you @gengjiawen have any insights, I'd love to hear them. Thanks!

@HugoGresse
Copy link

the issue on my side was using another buildToolsVersion from the one referenced in this repo.
For android 30, the build tools available is 30.0.3 which is different from the one react native used (30.0.2). This cause gradle to download it, which is something not possible.

@amdrade
Copy link

amdrade commented Jul 31, 2024

Can I pass it by ARG parameter?
ANDROID_TOOLS_VERSION

docker build --build-arg ANDROID_TOOLS_VERSION=31.0.0 --build-arg ANDROID_BUILD_VERSION=31 . -f Dockerfile -t docker-rn

even so it only installs version 33.0.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants