Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-33510

dir('foo') inside "docker.image().inside{}" does not affect CWD of launched processes

    XMLWordPrintable

Details

    Description

      The "dir('foo')" step inside "docker.image('my-image').inside" creates a directory "foo@tmp" instead of changing the current directory as expected.

      In the test below, ">>> SHOULD LS THE foo DIR" is showing an "ls" is the parent dir instead of changing to the "foo" dir and we see a dir "foo@tmp" that have been created.

      This problem is specific to "docker.image('my-image').inside", it does not happen with a standard "node".

      docker.image('cloudbees/java-build-tools:0.0.7.1').inside {
          sh 'rm -rf foo*' // RE INIT TEST
          println '>>> LS THE PARENT DIR'
          sh 'mkdir -p foo/bar'
          sh 'ls -al'
          dir('foo') {
              println '>>> SHOULD LS THE foo DIR'
              sh 'ls -al'
          }
      }
      
      Started by user admin
      [Pipeline] Allocate node : Start
      Running on jenkins-agent.beesshop.org in /home/ubuntu/jenkins-aws-home/workspace/tests/test-change-dir-4
      [Pipeline] node {
      [Pipeline] sh
      [test-change-dir-4] Running shell script
      + docker inspect -f . cloudbees/java-build-tools:0.0.7.1
      .
      [Pipeline] Run build steps inside a Docker container : Start
      $ docker run -t -d -u 1000:1000 -w /home/ubuntu/jenkins-aws-home/workspace/tests/test-change-dir-4 -v /home/ubuntu/jenkins-aws-home/workspace/tests/test-change-dir-4:/home/ubuntu/jenkins-aws-home/workspace/tests/test-change-dir-4:rw -v /home/ubuntu/jenkins-aws-home/workspace/tests/test-change-dir-4@tmp:/home/ubuntu/jenkins-aws-home/workspace/tests/test-change-dir-4@tmp:rw -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** cloudbees/java-build-tools:0.0.7.1 cat
      [Pipeline] withDockerContainer {
      [Pipeline] sh
      [test-change-dir-4] Running shell script
      + rm -rf foo foo@tmp
      [Pipeline] echo
      >>> LS THE PARENT DIR
      [Pipeline] sh
      [test-change-dir-4] Running shell script
      + mkdir -p foo/bar
      [Pipeline] sh
      [test-change-dir-4] Running shell script
      + ls -al
      total 12
      drwxrwxr-x 3 jenkins jenkins 4096 Mar 13 21:50 .
      drwxr-xr-x 4 root    root    4096 Mar 13 21:50 ..
      drwxr-xr-x 3 jenkins jenkins 4096 Mar 13 21:50 foo
      [Pipeline] Change current directory : Start
      Running in /home/ubuntu/jenkins-aws-home/workspace/tests/test-change-dir-4/foo
      [Pipeline] dir {
      [Pipeline] echo
      >>> SHOULD LS THE foo DIR
      [Pipeline] sh
      [foo] Running shell script
      + ls -al
      total 16
      drwxrwxr-x 4 jenkins jenkins 4096 Mar 13 21:50 .
      drwxr-xr-x 4 root    root    4096 Mar 13 21:50 ..
      drwxr-xr-x 3 jenkins jenkins 4096 Mar 13 21:50 foo
      drwxrwxr-x 3 jenkins jenkins 4096 Mar 13 21:50 foo@tmp
      [Pipeline] } //dir
      [Pipeline] Change current directory : End
      

      Attachments

        Issue Links

          Activity

            cleclerc Cyrille Le Clerc created issue -
            jglick Jesse Glick made changes -
            Field Original Value New Value
            Summary dir('foo') inside "docker.image().inside{}" creates "foo@tmp" instead of changing dir dir('foo') inside "docker.image().inside{}" does not affect CWD of launched processes
            jglick Jesse Glick made changes -
            Remote Link This issue links to "PR 38 (Web Link)" [ 14075 ]
            ndeloof Nicolas De Loof made changes -
            Link This issue is blocking JENKINS-35518 [ JENKINS-35518 ]
            michaelneale Michael Neale made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            jglick Jesse Glick made changes -
            Link This issue is duplicated by JENKINS-35406 [ JENKINS-35406 ]
            rtyler R. Tyler Croy made changes -
            Workflow JNJira [ 169439 ] JNJira + In-Review [ 185700 ]
            abayer Andrew Bayer made changes -
            Component/s pipeline-general [ 21692 ]
            abayer Andrew Bayer made changes -
            Component/s workflow-plugin [ 18820 ]
            jglick Jesse Glick made changes -
            Component/s pipeline [ 21692 ]
            ndeloof Nicolas De Loof made changes -
            Link This issue is blocked by JENKINS-41474 [ JENKINS-41474 ]
            csanchez Carlos Sanchez made changes -
            Link This issue is related to JENKINS-40925 [ JENKINS-40925 ]
            dene14 Denis Boulas made changes -
            Priority Minor [ 4 ] Critical [ 2 ]
            jglick Jesse Glick made changes -
            Status In Progress [ 3 ] Open [ 1 ]
            jglick Jesse Glick made changes -
            Assignee Jesse Glick [ jglick ]
            jamesdumay James Dumay made changes -
            Epic Link JENKINS-47962 [ 186491 ]
            jamesdumay James Dumay made changes -
            Labels cloudbees-internal-pipeline
            cloudbees CloudBees Inc. made changes -
            Remote Link This issue links to "CloudBees Internal CD-187 (Web Link)" [ 18949 ]
            scm_issue_link SCM/JIRA link daemon made changes -
            Resolution Fixed [ 1 ]
            Status Open [ 1 ] Resolved [ 5 ]
            ndeloof Nicolas De Loof made changes -
            Assignee Nicolas De Loof [ ndeloof ]
            weakcamel Waldek M made changes -
            Link This issue relates to JENKINS-38331 [ JENKINS-38331 ]
            amcsi Attila Szeremi made changes -
            Link This issue is duplicated by JENKINS-55351 [ JENKINS-55351 ]
            jglick Jesse Glick made changes -
            Link This issue relates to JENKINS-47305 [ JENKINS-47305 ]

            People

              ndeloof Nicolas De Loof
              cleclerc Cyrille Le Clerc
              Votes:
              49 Vote for this issue
              Watchers:
              74 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: