can not get container id if the Jenkins is running in a podman

This issue is archived. You can view it, but you can't modify it. Learn more

XMLWordPrintable

      when try to use docker.image(), it will find the container id first. However, the current method getContainerIdIfContainerized() can not parse the container id because the return message of /proc/1/moutninfo is different. Please refer to the following.

      cat /proc/1/mountinfo | grep /hostname

      1339 1333 0:48 /containers/overlay-containers/4c4d5c5475f78f2b8a98e2894adcc3152ac587ac3c406a5c4eb74cc3f129c03c/userdata/hostname /etc/hostname rw,nosuid,nodev,relatime - tmpfs tmpfs rw,seclabel,size=1609596k,mode=700,uid=1001,gid=1001

       

      Reproduction steps

      1. run a docker container in a podman container, on REHL8.
      2. go to the docker conainer
      3. run command: cat /proc/1/mountinfo | grep /hostname
      4. check the string which contains the contianer id.

      Expected Results

      the current code uses regexp "/containers/([a-z0-9]{64})/hostname" to parse the container id, so it expects /containers/[id]/hostname.

      Actual Results

      1339 1333 0:48 /containers/overlay-containers/4c4d5c5475f78f2b8a98e2894adcc3152ac587ac3c406a5c4eb74cc3f129c03c/userdata/hostname /etc/hostname rw,nosuid,nodev,relatime - tmpfs tmpfs rw,seclabel,size=1609596k,mode=700,uid=1001,gid=1001

            Assignee:
            Naveen Boni
            Reporter:
            Braden
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Archived: