I'm using Jenkins 2.263.1 & I want to use docker with pipeline.
My jenkinsfile is:
pipeline {
agent {
docker {
image 'android-build:android-gradle'
args '-v $PWD/Android:/app -w /app'
}
}
stages {
stage('Build') {
steps {
sh 'cd /app && ./gradlew build'
}
}
}
}
I get the following error:
Started by user bani ertebat mahan
Obtained Jenkinsfile from git http://git.banicodevelopers.com/ci-cd/android-app.git
Running in Durability level: MAX_SURVIVABILITY
[Pipeline] Start of Pipeline
[Pipeline] node
Running on Jenkins in /var/lib/jenkins/workspace/Android-App
[Pipeline] {
[Pipeline] stage
[Pipeline] { (Declarative: Checkout SCM)
[Pipeline] checkout
The recommended git tool is: NONE
using credential cd5d4a9e-e5e5-4808-b1a4-dcac90da701f
> git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
> git config remote.origin.url http://git.banicodevelopers.com/ci-cd/android-app.git # timeout=10
Fetching upstream changes from http://git.banicodevelopers.com/ci-cd/android-app.git
> git --version # timeout=10
> git --version # 'git version 1.8.3.1'
using GIT_ASKPASS to set credentials
> git fetch --tags --progress http://git.banicodevelopers.com/ci-cd/android-app.git +refs/heads/*:refs/remotes/origin/* # timeout=10
> git rev-parse refs/remotes/origin/master^{commit} # timeout=10
Checking out Revision d02dcbf66909c49106ea102d94c42df03d424cc4 (refs/remotes/origin/master)
> git config core.sparsecheckout # timeout=10
> git checkout -f d02dcbf66909c49106ea102d94c42df03d424cc4 # timeout=10
Commit message: "remove --rm options"
> git rev-list --no-walk 64ad06f998001cb9cbedb8b88df32cfe8a86b679 # timeout=10
[Pipeline] }
[Pipeline] // stage
[Pipeline] withEnv
[Pipeline] {
[Pipeline] isUnix
[Pipeline] sh
+ docker inspect -f . android-build:android-gradle
.
[Pipeline] withDockerContainer
Jenkins does not seem to be running inside a container
$ docker run -t -d -u 998:996 -v $PWD/Android:/app -w /app -w /var/lib/jenkins/workspace/Android-App -v /var/lib/jenkins/workspace/Android-App:/var/lib/jenkins/workspace/Android-App:rw,z -v /var/lib/jenkins/workspace/Android-App@tmp:/var/lib/jenkins/workspace/Android-App@tmp:rw,z -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** android-build:android-gradle cat
$ docker top c8729930a9b86c9ea66bfd674e233c75778d61376edfb7278d930acc6401595a -eo pid,comm
[Pipeline] {
[Pipeline] stage
[Pipeline] { (Build)
[Pipeline] sh
+ ./gradlew build
/var/lib/jenkins/workspace/Android-App@tmp/durable-83d3c6ea/script.sh: 1: /var/lib/jenkins/workspace/Android-App@tmp/durable-83d3c6ea/script.sh: ./gradlew: not found
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
$ docker stop --time=1 c8729930a9b86c9ea66bfd674e233c75778d61376edfb7278d930acc6401595a
$ docker rm -f c8729930a9b86c9ea66bfd674e233c75778d61376edfb7278d930acc6401595a
[Pipeline] // withDockerContainer
[Pipeline] }
[Pipeline] // withEnv
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
ERROR: script returned exit code 127
Finished: FAILURE
Despite me never defining -w,-d,-u,-t options in my jenkisfile, they are being defined.
I mean just define one -w option but, it also define for /var/lib/jenkins/workspace/
I have added jenkins user to docker group.
Any help appreciated.