Started by upstream project "Mrel_trigger-jobs" build number 30124 originally caused by: Started by timer Running as SYSTEM Building remotely on build client 1 (slave buildslave indigo_devel_default buildagent) in workspace /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source [ssh-agent] Looking for ssh-agent implementation... [ssh-agent] Exec ssh-agent (binary ssh-agent on a remote machine) $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-DWkcb0OQRIfE/agent.27811 SSH_AGENT_PID=27813 [ssh-agent] Started. Running ssh-add (command line suppressed) Identity added: /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source@tmp/private_key_6637408665176003607.key (/home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source@tmp/private_key_6637408665176003607.key) [ssh-agent] Using credentials jenkins-slave # BEGIN SECTION: Check free disk space Usable disk space = 109507022848 bytes Free space threshold = 5368709120 bytes # END SECTION [Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source] $ /bin/sh -xe /tmp/jenkins5195419332913734737.sh + echo # BEGIN SECTION: docker version # BEGIN SECTION: docker version + docker version Client: Version: 17.05.0-ce API version: 1.29 Go version: go1.7.5 Git commit: 89658be Built: Thu May 4 22:06:06 2017 OS/Arch: linux/amd64 Server: Version: 17.05.0-ce API version: 1.29 (minimum version 1.12) Go version: go1.7.5 Git commit: 89658be Built: Thu May 4 22:06:06 2017 OS/Arch: linux/amd64 Experimental: false + echo # END SECTION # END SECTION + echo # BEGIN SECTION: docker info # BEGIN SECTION: docker info + docker info Containers: 4 Running: 1 Paused: 0 Stopped: 3 Images: 101 Server Version: 17.05.0-ce Storage Driver: aufs Root Dir: /var/lib/docker/aufs Backing Filesystem: extfs Dirs: 1008 Dirperm1 Supported: false Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: bridge host macvlan null overlay Swarm: inactive Runtimes: runc Default Runtime: runc Init Binary: docker-init containerd version: 9048e5e50717ea4497b757314bad98ea3763c145 runc version: 9c2d8d184e5da67c95d601382adf14862e4f2228 init version: 949e6fa Security Options: apparmor Kernel Version: 3.13.0-29-generic Operating System: Ubuntu 14.04.6 LTS OSType: linux Architecture: x86_64 CPUs: 2 Total Memory: 3.861GiB Name: lcas-buildfarm-slave-2 ID: LZSS:PF7G:CREH:TEQW:FH57:3M6D:KCSS:ODQY:SPHA:ND7A:FHYG:PNDE Docker Root Dir: /var/lib/docker Debug Mode (client): false Debug Mode (server): false Registry: https://index.docker.io/v1/ Experimental: false Insecure Registries: 127.0.0.0/8 Live Restore Enabled: false WARNING: No swap limit support + echo # END SECTION # END SECTION [Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source] $ /bin/sh -xe /tmp/jenkins6704129274267985901.sh + echo # BEGIN SECTION: Check docker status # BEGIN SECTION: Check docker status + echo Testing trivial docker invocation... Testing trivial docker invocation... + docker run --rm ubuntu:bionic true + echo 'docker run' returned 0 'docker run' returned 0 docker seems operational, continuing [Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source] $ /bin/sh -xe /tmp/jenkins2657005222262167033.sh + echo # END SECTION # END SECTION [Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source] $ /bin/sh -xe /tmp/jenkins9141064480682002747.sh + echo # BEGIN SECTION: Embed wrapper scripts # BEGIN SECTION: Embed wrapper scripts + rm -fr wrapper_scripts + mkdir wrapper_scripts + printf #!/usr/bin/env python3\n\n# Copyright 2016 Open Source Robotics Foundation, Inc.\n#\n# Licensed under the Apache License, Version 2.0 (the "License");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an "AS IS" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport subprocess\nimport sys\nfrom time import sleep\n\n\ndef main(argv=sys.argv[1:]):\n max_tries = 10\n known_error_strings = [\n 'Connection timed out',\n ]\n\n command = argv[0]\n if command == 'clone':\n rc, _, _ = call_git_repeatedly(\n argv, known_error_strings, max_tries)\n return rc\n else:\n assert "Command '%%s' not implemented" %% command\n\n\ndef call_git_repeatedly(argv, known_error_strings, max_tries):\n command = argv[0]\n for i in range(1, max_tries + 1):\n if i > 1:\n sleep_time = 5 + 2 * i\n print("Reinvoke 'git %%s' (%%d/%%d) after sleeping %%s seconds" %%\n (command, i, max_tries, sleep_time))\n sleep(sleep_time)\n rc, known_error_conditions = call_git(argv, known_error_strings)\n if rc == 0 or not known_error_conditions:\n break\n print('')\n print('Invocation failed due to the following known error conditions: '\n ', '.join(known_error_conditions))\n print('')\n # retry in case of failure with known error condition\n return rc, known_error_conditions, i\n\n\ndef call_git(argv, known_error_strings):\n known_error_conditions = []\n\n cmd = ['git'] + argv\n print("Invoking '%%s'" %% ' '.join(cmd))\n proc = subprocess.Popen(\n cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)\n while True:\n line = proc.stdout.readline()\n if not line:\n break\n line = line.decode()\n sys.stdout.write(line)\n for known_error_string in known_error_strings:\n if known_error_string in line:\n if known_error_string not in known_error_conditions:\n known_error_conditions.append(known_error_string)\n proc.wait()\n rc = proc.returncode\n return rc, known_error_conditions\n\n\nif __name__ == '__main__':\n sys.exit(main()) + echo # END SECTION # END SECTION [Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source] $ /bin/sh -xe /tmp/jenkins3212287613851148776.sh + echo # BEGIN SECTION: Clone ros_buildfarm # BEGIN SECTION: Clone ros_buildfarm + rm -fr ros_buildfarm + python3 -u wrapper_scripts/git.py clone --depth 1 -b pull_upstream https://github.com/lcas/ros_buildfarm.git ros_buildfarm Invoking 'git clone --depth 1 -b pull_upstream https://github.com/lcas/ros_buildfarm.git ros_buildfarm' Cloning into 'ros_buildfarm'... + git -C ros_buildfarm --no-pager log -n 1 commit 5847ba20c70a194f12d32fd0ad5364bed338f8e2 Author: Marc Hanheide Date: Fri Jun 5 12:50:43 2020 +0100 added openssl + rm -fr ros_buildfarm/.git + rm -fr ros_buildfarm/doc + echo # END SECTION # END SECTION [Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source] $ /bin/sh -xe /tmp/jenkins1612477690252353410.sh + echo # BEGIN SECTION: Write PGP repository keys # BEGIN SECTION: Write PGP repository keys + mkdir -p /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/keys + rm -fr /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/keys/* + echo -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1.4.11 (GNU/Linux) mQENBFPzE4sBCAC9c8hzt+gqe6YqXAW9Yd10jx68M0q8IowAe182yVtIvYf5l+qn MsXiDUz4l7c1TcRpdzZ1WwEQoNNjQKq51ip2Ln3Uhri/GsPBk+psIJPt5AeXYrSf xcDs8k4FMWgJtYMlZLuNk1YPaS6Vf1+Ygbe0u+ssORWg3cWhgLWPDydXdlhinUgw kPd9ZYi8aaAxi94DMuOnAjItfPbuX52NHmPR2cXuh3fZklhA6cCGRYkSVqijKhEv /o8fTnjcTama8ml5jnaAhcZ/4UV3terLeXEQn3+WM+VbTsEr58zca5fOv8MjC+Uh EBgDgnHb8/n7OgSUvv9efQgYXBRQ1mD//JaZABEBAAG0LE1hcmMgSGFuaGVpZGUg KFJPU0J1aWxkKSA8bWFyY0BoYW5oZWlkZS5uZXQ+iQE4BBMBAgAiBQJT8xOLAhsD BgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRDc10MYrtOYVB9cCACQwB9auPEX yQdVwliJMLwVihKz0AU0UCG6qra2pdXx9l5kgkQCuDV5FQqMpk/MIJPn8Zj0l1MI 7Yn/EAqBhXjtO2BcTuUC/9epzt1p3C++vK7RSsBDXfKzZN22apIUT0njOkL9Vuoy JjFetmLDaZVbmFU+4ZaX3CFtBL3ewlFiT7G6StKj40JI8QJOlDOziX2OUsqZaI2T Yh681980od3f2OfV3LPVroz7xnyECDfBaPBPaDdb8XWSNVLhuyglb15eewK0hj++ Cut3swWH02Y3yVhzFBnosqqjyzPLBQeDMOoHAPpJHRgprfIRDoUkWAXO5re3GIUQ cvk0d1I1jh3luQENBFPzE4sBCACmSxiM1vpPI7BpgUNAhu0B8SWptULpiYOnDHfM hU1u95Z5Lu/hy3sfm4BEKgLju7Y1I3jToWTwJJzgWZRr+iuuwj3fbfHCISYIK7f3 IWGL2iM2+kLIH6E9oqRgGbJmhiwbz6OokxG0W7atdqpBxOKqhaH0AH3qRicwnuPm Z4/mNHYQ0vBffENewujn1bCAz4C1WB66/AXBYF8dpCP42qB5yK7FRNv4JubMmqhK 7fkD88uu7JVGRYU+temWuJHH4WDxiCmvK8nXacFaZT1NGdTL9/2EukKLguTtZumb oRWgFqV6WFcEnh/V/Ma51D2+K9QbCWa8Bb6c/wKOd9Ii1aDZABEBAAGJAR8EGAEC AAkFAlPzE4sCGwwACgkQ3NdDGK7TmFT2rwf+MzLFPn4Rkko38nctysbXm6qmk34U NTtqirOlxg3mWeUCp7VQGU2Rg2msdo764SxCK12OhJqlXGMd2efCoQhYbMOqG6C0 ikBZPkd5BVFuTKsAUiuVoiQd8bDaZSpO2QdE0RdHE/yYfO66pceEKkGlcjkTRFFU M7nTm7IQj4BBZclMLPr4fX520ZOVUepxAARMHW5A6EcHXvhXmblZOJM36fOv3T5N l9L5tWdt/wybaRE4xuwVSs0n7MyMlWmkQxz8Z6OQscbKmuI4tcYSbvvB5tzjLBwZ Chb0eEZA5ePvnGofu+3JH48FmCIPveD+4kI9GhtGkCL3Q2PiPiLcSnWQWQ== =nFcN -----END PGP PUBLIC KEY BLOCK----- + echo -----BEGIN PGP PUBLIC KEY BLOCK----- Version: SKS 1.1.6 Comment: Hostname: keyserver.ubuntu.com mQINBFzvJpYBEADY8l1YvO7iYW5gUESyzsTGnMvVUmlV3XarBaJz9bGRmgPXh7jcVFrQhE0L /HV7LOfoLI9H2GWYyHBqN5ERBlcA8XxG3ZvX7t9nAZPQT2Xxe3GT3trou5oCR+SyHN9xPnUw DuqUSvJ2eqMYb9B/Hph3OmtjG30jSNq9kOF5bBTk1hOTGPH4K/AY0jzT6OpHfXU6ytlFsI47 ZKsnTUhipGsKucQ1CXlyirndZ3V3k70YaooZ55rGaIoAWlx2H0J7sAHmqS29N9jV9mo135d+ d+TdLBXI0PXtiHzE9IPaX+ctdSUrPnp+TwR99lxglpIG6hLuvOMAaxiqFBB/Jf3XJ8OBakfS 6nHrWH2WqQxRbiITl0irkQozpwNEF2Bv0+Jvs1UFEdVGz5a8xexQHst/RmKrtHLct3iOCvBN qoAQRbvWvBhPjO/pV5cYeUljZ5wpHyFkaEViClaVWqa6PIsyLqmyjsruPCWlURLsQoQxABcL 8bwxX7UThM6CtH6tGlYZ85RIzRifIm2oudzV5l+8oRgFr9yVcwyOFT6JCioqkwldW52P1pk/ /SnuexC6LYqqDuHUs5NnokzzpfS6QaWfTY5P5tz4KHJfsjDIktly3mKVfY0fSPVVokdGpcUz vz2hq1fqjxB6MlB/1vtk0bImfcsoxBmF7H+4E9ZN1sX/tSb0KQARAQABtCZPcGVuIFJvYm90 aWNzIDxpbmZvQG9zcmZvdW5kYXRpb24ub3JnPokCVAQTAQoAPhYhBMHPbjHmut6IaLFytPQu 1vurF8ZUBQJc7yaWAhsDBQkDwmcABQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEPQu1vur F8ZUkhIP/RbZY1ErvCEUy8iLJm9aSpLQnDZl5xILOxyZlzpg+Ml5bb0EkQDr92foCgcvLeAN KARNCaGLyNIWkuyDovPV0xZJrEy0kgBrDNb3++NmdI/+GA92pkedMXXioQvqdsxUagXAIB/s NGByJEhs37F05AnFvZbjUhceq3xTlvAMcrBWrgB4NwBivZY6IgLvl/CRQpVYwANShIQdbvHv ZSxRonWhNXr6v/Wcf8rsp7g2VqJ2N2AcWT84aa9BLQ3Oe/SgrNx4QEhA1y7rc3oaqPVu5ZXO K+4O14JrpbEZ3Xs9YEjrcOuEDEpYktA8qqUDTdFyZrxb9S6BquUKrA6jZgT913kjJ4e7YAZo bC4rH0w4u0PrqDgYOkXA9Mo7L601/7ZaDJob80UcK+Z12ZSw73IgBix6DiJVfXuWkk5PM2zs Fn6UOQXUNlZlDAOj5NC01V0fJ8P0v6GO9YOSSQx0j5UtkUbRfp/4W7uCPFvwAatWEHJhlM3s QNiMNStJFegr56xQu1a/cbJH7GdbseMhG/f0BaKQqXCI3ffB5y5AOLc9Hw7PYiTFQsuY1ePR hE+J9mejgWRZxkjAH/FlAubqXkDgterCh+sLkzGf+my2IbsMCuc+3aeNMJ5Ej/vlXefCH/Mp PWAHCqpQhe2DET/jRSaM53USAHNx8kw4MPUkxExgI7Sd =4Ofr -----END PGP PUBLIC KEY BLOCK----- + echo # END SECTION # END SECTION [Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source] $ /bin/sh -xe /tmp/jenkins209828292960926861.sh + rm -fr /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/docker_sourcedeb + mkdir -p /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/docker_sourcedeb + sleep 1 + python3 -u /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/ros_buildfarm/scripts/subprocess_reaper.py 28091 --cid-file /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/docker_sourcedeb/docker.cid + echo # BEGIN SECTION: Generate Dockerfile - sourcedeb task # BEGIN SECTION: Generate Dockerfile - sourcedeb task + export TZ=GMT+00 + export PYTHONPATH=/home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/ros_buildfarm: + python3 -u /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/ros_buildfarm/scripts/release/run_sourcedeb_job.py --rosdistro-index-url https://raw.githubusercontent.com/LCAS/rosdistro/master/index.yaml melodic thorvald_twist_mux ubuntu bionic --distribution-repository-urls http://10.210.9.154/ubuntu/building http://packages.ros.org/ros/ubuntu --distribution-repository-key-files /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/keys/0.key /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/keys/1.key --source-dir /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/sourcedeb/source --dockerfile-dir /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/docker_sourcedeb Using the following distribution repositories: http://10.210.9.154/ubuntu/building (/home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/keys/0.key) http://packages.ros.org/ros/ubuntu (/home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/keys/1.key) Generating Dockerfile '/home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/docker_sourcedeb/Dockerfile': # generated from release/sourcedeb_task.Dockerfile.em FROM ubuntu:bionic VOLUME ["/var/cache/apt/archives"] ENV DEBIAN_FRONTEND noninteractive RUN for i in 1 2 3; do apt-get update && apt-get install -q -y locales && apt-get clean && break || if [ $i -lt 3 ]; then sleep 5; else false; fi; done RUN echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen RUN locale-gen en_US.UTF-8 ENV LANG en_US.UTF-8 ENV TZ GMT+00 RUN useradd -u 1002 -l -m buildfarm RUN mkdir /tmp/keys RUN for i in 1 2 3; do apt-get update && apt-get install -q -y gnupg && apt-get clean && break || if [ $i -lt 3 ]; then sleep 5; else false; fi; done RUN echo "-----BEGIN PGP PUBLIC KEY BLOCK-----\nVersion: GnuPG v1.4.11 (GNU/Linux)\n\nmQENBFPzE4sBCAC9c8hzt+gqe6YqXAW9Yd10jx68M0q8IowAe182yVtIvYf5l+qn\nMsXiDUz4l7c1TcRpdzZ1WwEQoNNjQKq51ip2Ln3Uhri/GsPBk+psIJPt5AeXYrSf\nxcDs8k4FMWgJtYMlZLuNk1YPaS6Vf1+Ygbe0u+ssORWg3cWhgLWPDydXdlhinUgw\nkPd9ZYi8aaAxi94DMuOnAjItfPbuX52NHmPR2cXuh3fZklhA6cCGRYkSVqijKhEv\n/o8fTnjcTama8ml5jnaAhcZ/4UV3terLeXEQn3+WM+VbTsEr58zca5fOv8MjC+Uh\nEBgDgnHb8/n7OgSUvv9efQgYXBRQ1mD//JaZABEBAAG0LE1hcmMgSGFuaGVpZGUg\nKFJPU0J1aWxkKSA8bWFyY0BoYW5oZWlkZS5uZXQ+iQE4BBMBAgAiBQJT8xOLAhsD\nBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRDc10MYrtOYVB9cCACQwB9auPEX\nyQdVwliJMLwVihKz0AU0UCG6qra2pdXx9l5kgkQCuDV5FQqMpk/MIJPn8Zj0l1MI\n7Yn/EAqBhXjtO2BcTuUC/9epzt1p3C++vK7RSsBDXfKzZN22apIUT0njOkL9Vuoy\nJjFetmLDaZVbmFU+4ZaX3CFtBL3ewlFiT7G6StKj40JI8QJOlDOziX2OUsqZaI2T\nYh681980od3f2OfV3LPVroz7xnyECDfBaPBPaDdb8XWSNVLhuyglb15eewK0hj++\nCut3swWH02Y3yVhzFBnosqqjyzPLBQeDMOoHAPpJHRgprfIRDoUkWAXO5re3GIUQ\ncvk0d1I1jh3luQENBFPzE4sBCACmSxiM1vpPI7BpgUNAhu0B8SWptULpiYOnDHfM\nhU1u95Z5Lu/hy3sfm4BEKgLju7Y1I3jToWTwJJzgWZRr+iuuwj3fbfHCISYIK7f3\nIWGL2iM2+kLIH6E9oqRgGbJmhiwbz6OokxG0W7atdqpBxOKqhaH0AH3qRicwnuPm\nZ4/mNHYQ0vBffENewujn1bCAz4C1WB66/AXBYF8dpCP42qB5yK7FRNv4JubMmqhK\n7fkD88uu7JVGRYU+temWuJHH4WDxiCmvK8nXacFaZT1NGdTL9/2EukKLguTtZumb\noRWgFqV6WFcEnh/V/Ma51D2+K9QbCWa8Bb6c/wKOd9Ii1aDZABEBAAGJAR8EGAEC\nAAkFAlPzE4sCGwwACgkQ3NdDGK7TmFT2rwf+MzLFPn4Rkko38nctysbXm6qmk34U\nNTtqirOlxg3mWeUCp7VQGU2Rg2msdo764SxCK12OhJqlXGMd2efCoQhYbMOqG6C0\nikBZPkd5BVFuTKsAUiuVoiQd8bDaZSpO2QdE0RdHE/yYfO66pceEKkGlcjkTRFFU\nM7nTm7IQj4BBZclMLPr4fX520ZOVUepxAARMHW5A6EcHXvhXmblZOJM36fOv3T5N\nl9L5tWdt/wybaRE4xuwVSs0n7MyMlWmkQxz8Z6OQscbKmuI4tcYSbvvB5tzjLBwZ\nChb0eEZA5ePvnGofu+3JH48FmCIPveD+4kI9GhtGkCL3Q2PiPiLcSnWQWQ==\n=nFcN\n-----END PGP PUBLIC KEY BLOCK----- \n" > /tmp/keys/0.key && apt-key add /tmp/keys/0.key RUN echo "-----BEGIN PGP PUBLIC KEY BLOCK-----\nVersion: SKS 1.1.6\nComment: Hostname: keyserver.ubuntu.com\n\nmQINBFzvJpYBEADY8l1YvO7iYW5gUESyzsTGnMvVUmlV3XarBaJz9bGRmgPXh7jcVFrQhE0L\n/HV7LOfoLI9H2GWYyHBqN5ERBlcA8XxG3ZvX7t9nAZPQT2Xxe3GT3trou5oCR+SyHN9xPnUw\nDuqUSvJ2eqMYb9B/Hph3OmtjG30jSNq9kOF5bBTk1hOTGPH4K/AY0jzT6OpHfXU6ytlFsI47\nZKsnTUhipGsKucQ1CXlyirndZ3V3k70YaooZ55rGaIoAWlx2H0J7sAHmqS29N9jV9mo135d+\nd+TdLBXI0PXtiHzE9IPaX+ctdSUrPnp+TwR99lxglpIG6hLuvOMAaxiqFBB/Jf3XJ8OBakfS\n6nHrWH2WqQxRbiITl0irkQozpwNEF2Bv0+Jvs1UFEdVGz5a8xexQHst/RmKrtHLct3iOCvBN\nqoAQRbvWvBhPjO/pV5cYeUljZ5wpHyFkaEViClaVWqa6PIsyLqmyjsruPCWlURLsQoQxABcL\n8bwxX7UThM6CtH6tGlYZ85RIzRifIm2oudzV5l+8oRgFr9yVcwyOFT6JCioqkwldW52P1pk/\n/SnuexC6LYqqDuHUs5NnokzzpfS6QaWfTY5P5tz4KHJfsjDIktly3mKVfY0fSPVVokdGpcUz\nvz2hq1fqjxB6MlB/1vtk0bImfcsoxBmF7H+4E9ZN1sX/tSb0KQARAQABtCZPcGVuIFJvYm90\naWNzIDxpbmZvQG9zcmZvdW5kYXRpb24ub3JnPokCVAQTAQoAPhYhBMHPbjHmut6IaLFytPQu\n1vurF8ZUBQJc7yaWAhsDBQkDwmcABQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEPQu1vur\nF8ZUkhIP/RbZY1ErvCEUy8iLJm9aSpLQnDZl5xILOxyZlzpg+Ml5bb0EkQDr92foCgcvLeAN\nKARNCaGLyNIWkuyDovPV0xZJrEy0kgBrDNb3++NmdI/+GA92pkedMXXioQvqdsxUagXAIB/s\nNGByJEhs37F05AnFvZbjUhceq3xTlvAMcrBWrgB4NwBivZY6IgLvl/CRQpVYwANShIQdbvHv\nZSxRonWhNXr6v/Wcf8rsp7g2VqJ2N2AcWT84aa9BLQ3Oe/SgrNx4QEhA1y7rc3oaqPVu5ZXO\nK+4O14JrpbEZ3Xs9YEjrcOuEDEpYktA8qqUDTdFyZrxb9S6BquUKrA6jZgT913kjJ4e7YAZo\nbC4rH0w4u0PrqDgYOkXA9Mo7L601/7ZaDJob80UcK+Z12ZSw73IgBix6DiJVfXuWkk5PM2zs\nFn6UOQXUNlZlDAOj5NC01V0fJ8P0v6GO9YOSSQx0j5UtkUbRfp/4W7uCPFvwAatWEHJhlM3s\nQNiMNStJFegr56xQu1a/cbJH7GdbseMhG/f0BaKQqXCI3ffB5y5AOLc9Hw7PYiTFQsuY1ePR\nhE+J9mejgWRZxkjAH/FlAubqXkDgterCh+sLkzGf+my2IbsMCuc+3aeNMJ5Ej/vlXefCH/Mp\nPWAHCqpQhe2DET/jRSaM53USAHNx8kw4MPUkxExgI7Sd\n=4Ofr\n-----END PGP PUBLIC KEY BLOCK-----\n" > /tmp/keys/1.key && apt-key add /tmp/keys/1.key RUN echo deb http://10.210.9.154/ubuntu/building bionic main | tee -a /etc/apt/sources.list.d/buildfarm.list RUN echo deb http://packages.ros.org/ros/ubuntu bionic main | tee -a /etc/apt/sources.list.d/buildfarm.list RUN mkdir /tmp/wrapper_scripts RUN echo "#!/usr/bin/env python3\n\n# Copyright 2014-2016 Open Source Robotics Foundation, Inc.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport subprocess\nimport sys\nfrom time import sleep\n\n\ndef main(argv=sys.argv[1:]):\n max_tries = 10\n known_error_strings = [\n 'Failed to fetch',\n 'Failed to stat',\n 'Hash Sum mismatch',\n 'Unable to locate package',\n 'is not what the server reported',\n ]\n\n command = argv[0]\n if command in ['update', 'source']:\n rc, _, _ = call_apt_repeatedly(\n argv, known_error_strings, max_tries)\n return rc\n elif command == 'update-install-clean':\n return call_apt_update_install_clean(\n argv[1:], known_error_strings, max_tries)\n else:\n assert \"Command '%s' not implemented\" % command\n\n\ndef call_apt_update_install_clean(\n install_argv, known_error_strings, max_tries):\n tries = 0\n command = 'update'\n while tries < max_tries:\n if command == 'update':\n rc, _, tries = call_apt_repeatedly(\n [command], known_error_strings, max_tries - tries,\n offset=tries)\n if rc != 0:\n # abort if update was unsuccessful even after retries\n break\n # move on to the install command if update was successful\n command = 'install'\n\n if command == 'install':\n # any call is considered a try\n tries += 1\n known_error_strings_redo_update = [\n 'Size mismatch',\n 'maybe run apt update',\n 'The following packages cannot be authenticated!',\n 'Unable to locate package',\n 'has no installation candidate',\n 'corrupted package archive',\n ]\n rc, known_error_conditions = \\\\\n call_apt(\n [command] + install_argv,\n known_error_strings + known_error_strings_redo_update)\n if not known_error_conditions:\n if rc != 0:\n # abort if install was unsuccessful\n break\n # move on to the clean command if install was successful\n command = 'clean'\n continue\n\n # known errors are always interpreted as a non-zero rc\n if rc == 0:\n rc = 1\n # check if update needs to be rerun\n if (\n set(known_error_conditions) &\n set(known_error_strings_redo_update)\n ):\n command = 'update'\n print(\"'apt install' failed and likely requires \" +\n \"'apt update' to run again\")\n # retry with update command\n continue\n\n print('')\n print('Invocation failed due to the following known error '\n 'conditions: ' + ', '.join(known_error_conditions))\n print('')\n if tries < max_tries:\n sleep_time = 5\n print(\"Reinvoke 'apt install' after sleeping %s seconds\" %\n sleep_time)\n sleep(sleep_time)\n # retry install command\n\n if command == 'clean':\n rc, _ = call_apt([command], [])\n break\n\n return rc\n\n\ndef call_apt_repeatedly(argv, known_error_strings, max_tries, offset=0):\n command = argv[0]\n for i in range(1, max_tries + 1):\n if i > 1:\n sleep_time = 5 + 2 * (i + offset)\n print(\"Reinvoke 'apt %s' (%d/%d) after sleeping %s seconds\" %\n (command, i + offset, max_tries + offset, sleep_time))\n sleep(sleep_time)\n rc, known_error_conditions = call_apt(argv, known_error_strings)\n if not known_error_conditions:\n # break the loop and return the reported rc\n break\n # known errors are always interpreted as a non-zero rc\n if rc == 0:\n rc = 1\n print('')\n print('Invocation failed due to the following known error conditions: '\n ', '.join(known_error_conditions))\n print('')\n # retry in case of failure with known error condition\n return rc, known_error_conditions, i + offset\n\n\ndef call_apt(argv, known_error_strings):\n known_error_conditions = []\n\n # some of the used options are not supported in older distros\n # e.g. Ubuntu Wily, Debian Jessie\n cmd = ['apt-get'] + argv\n print(\"Invoking '%s'\" % ' '.join(cmd))\n proc = subprocess.Popen(\n cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)\n lines = []\n while True:\n line = proc.stdout.readline()\n if not line:\n break\n line = line.decode()\n lines.append(line)\n sys.stdout.write(line)\n for known_error_string in known_error_strings:\n if known_error_string in line:\n if known_error_string not in known_error_conditions:\n known_error_conditions.append(known_error_string)\n proc.wait()\n rc = proc.returncode\n if rc and not known_error_conditions:\n print('Invocation failed without any known error condition, '\n 'printing all lines to debug known error detection:')\n for index, line in enumerate(lines):\n print(' ', index + 1, \"'%s'\" % line.rstrip('\\\\n\\\\r'))\n print('None of the following known errors were detected:')\n for index, known_error_string in enumerate(known_error_strings):\n print(' ', index + 1, \"'%s'\" % known_error_string)\n return rc, known_error_conditions\n\n\nif __name__ == '__main__':\n sys.exit(main())" > /tmp/wrapper_scripts/apt.py RUN echo "#!/usr/bin/env python3\n\n# Copyright 2016 Open Source Robotics Foundation, Inc.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport subprocess\nimport sys\nfrom time import sleep\n\n\ndef main(argv=sys.argv[1:]):\n max_tries = 10\n known_error_strings = [\n 'Connection timed out',\n ]\n\n command = argv[0]\n if command == 'clone':\n rc, _, _ = call_git_repeatedly(\n argv, known_error_strings, max_tries)\n return rc\n else:\n assert \"Command '%s' not implemented\" % command\n\n\ndef call_git_repeatedly(argv, known_error_strings, max_tries):\n command = argv[0]\n for i in range(1, max_tries + 1):\n if i > 1:\n sleep_time = 5 + 2 * i\n print(\"Reinvoke 'git %s' (%d/%d) after sleeping %s seconds\" %\n (command, i, max_tries, sleep_time))\n sleep(sleep_time)\n rc, known_error_conditions = call_git(argv, known_error_strings)\n if rc == 0 or not known_error_conditions:\n break\n print('')\n print('Invocation failed due to the following known error conditions: '\n ', '.join(known_error_conditions))\n print('')\n # retry in case of failure with known error condition\n return rc, known_error_conditions, i\n\n\ndef call_git(argv, known_error_strings):\n known_error_conditions = []\n\n cmd = ['git'] + argv\n print(\"Invoking '%s'\" % ' '.join(cmd))\n proc = subprocess.Popen(\n cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)\n while True:\n line = proc.stdout.readline()\n if not line:\n break\n line = line.decode()\n sys.stdout.write(line)\n for known_error_string in known_error_strings:\n if known_error_string in line:\n if known_error_string not in known_error_conditions:\n known_error_conditions.append(known_error_string)\n proc.wait()\n rc = proc.returncode\n return rc, known_error_conditions\n\n\nif __name__ == '__main__':\n sys.exit(main())" > /tmp/wrapper_scripts/git.py # automatic invalidation once every day RUN echo "2020-09-17 (+0000)" RUN for i in 1 2 3; do apt-get update && apt-get install -q -y python3 && apt-get clean && break || if [ $i -lt 3 ]; then sleep 5; else false; fi; done RUN python3 -u /tmp/wrapper_scripts/apt.py update-install-clean -q -y dh-python RUN python3 -u /tmp/wrapper_scripts/apt.py update-install-clean -q -y debhelper dpkg dpkg-dev git git-buildpackage python3-catkin-pkg-modules python3-rosdistro-modules python3-yaml COPY .git-credentials /home/buildfarm/.git-credentials RUN chmod 600 /home/buildfarm/.git-credentials RUN chown buildfarm /home/buildfarm/.git-credentials USER buildfarm RUN git config --global credential.helper 'store' RUN git config --global http.sslVerify false ENTRYPOINT ["sh", "-c"] CMD ["PYTHONPATH=/tmp/ros_buildfarm:$PYTHONPATH python3 -u /tmp/ros_buildfarm/scripts/release/get_sources.py --rosdistro-index-url https://raw.githubusercontent.com/LCAS/rosdistro/master/index.yaml melodic thorvald_twist_mux ubuntu bionic http://10.210.9.154/ubuntu/building http://packages.ros.org/ros/ubuntu --source-dir /tmp/sourcedeb/source && PYTHONPATH=/tmp/ros_buildfarm:$PYTHONPATH python3 -u /tmp/ros_buildfarm/scripts/release/build_sourcedeb.py ubuntu bionic --source-dir /tmp/sourcedeb/source"] + echo # END SECTION # END SECTION + echo # BEGIN SECTION: Build Dockerfile - generate sourcedeb # BEGIN SECTION: Build Dockerfile - generate sourcedeb + cd /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/docker_sourcedeb + cp -L **** /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/docker_sourcedeb/.git-credentials + python3 -u /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/ros_buildfarm/scripts/misc/docker_pull_baseimage.py Get base image name from Dockerfile 'Dockerfile': ubuntu:bionic Check docker base image for updates: docker pull ubuntu:bionic bionic: Pulling from library/ubuntu Digest: sha256:2f1aaf987e9f4806f076a08b1263f2b81376a54f811bb971434c483bd78eb858 Status: Image is up to date for ubuntu:bionic + docker build --force-rm -t sourcedeb.melodic_ubuntu_bionic_thorvald_twist_mux . Sending build context to Docker daemon 18.94kB Step 1/30 : FROM ubuntu:bionic ---> c14bccfdea1c Step 2/30 : VOLUME /var/cache/apt/archives ---> Using cache ---> 121158a7ad3e Step 3/30 : ENV DEBIAN_FRONTEND noninteractive ---> Using cache ---> 959f12229c94 Step 4/30 : RUN for i in 1 2 3; do apt-get update && apt-get install -q -y locales && apt-get clean && break || if [ $i -lt 3 ]; then sleep 5; else false; fi; done ---> Using cache ---> 32fa48442cb7 Step 5/30 : RUN echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen ---> Using cache ---> ecc16f0ab14a Step 6/30 : RUN locale-gen en_US.UTF-8 ---> Using cache ---> 1ee3616bbbf2 Step 7/30 : ENV LANG en_US.UTF-8 ---> Using cache ---> 85b6d78143f8 Step 8/30 : ENV TZ GMT+00 ---> Using cache ---> 8e586e3985fc Step 9/30 : RUN useradd -u 1002 -l -m buildfarm ---> Using cache ---> a16470df1aa8 Step 10/30 : RUN mkdir /tmp/keys ---> Using cache ---> 270787d942cb Step 11/30 : RUN for i in 1 2 3; do apt-get update && apt-get install -q -y gnupg && apt-get clean && break || if [ $i -lt 3 ]; then sleep 5; else false; fi; done ---> Using cache ---> 2195fc667b32 Step 12/30 : RUN echo "-----BEGIN PGP PUBLIC KEY BLOCK-----\nVersion: GnuPG v1.4.11 (GNU/Linux)\n\nmQENBFPzE4sBCAC9c8hzt+gqe6YqXAW9Yd10jx68M0q8IowAe182yVtIvYf5l+qn\nMsXiDUz4l7c1TcRpdzZ1WwEQoNNjQKq51ip2Ln3Uhri/GsPBk+psIJPt5AeXYrSf\nxcDs8k4FMWgJtYMlZLuNk1YPaS6Vf1+Ygbe0u+ssORWg3cWhgLWPDydXdlhinUgw\nkPd9ZYi8aaAxi94DMuOnAjItfPbuX52NHmPR2cXuh3fZklhA6cCGRYkSVqijKhEv\n/o8fTnjcTama8ml5jnaAhcZ/4UV3terLeXEQn3+WM+VbTsEr58zca5fOv8MjC+Uh\nEBgDgnHb8/n7OgSUvv9efQgYXBRQ1mD//JaZABEBAAG0LE1hcmMgSGFuaGVpZGUg\nKFJPU0J1aWxkKSA8bWFyY0BoYW5oZWlkZS5uZXQ+iQE4BBMBAgAiBQJT8xOLAhsD\nBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRDc10MYrtOYVB9cCACQwB9auPEX\nyQdVwliJMLwVihKz0AU0UCG6qra2pdXx9l5kgkQCuDV5FQqMpk/MIJPn8Zj0l1MI\n7Yn/EAqBhXjtO2BcTuUC/9epzt1p3C++vK7RSsBDXfKzZN22apIUT0njOkL9Vuoy\nJjFetmLDaZVbmFU+4ZaX3CFtBL3ewlFiT7G6StKj40JI8QJOlDOziX2OUsqZaI2T\nYh681980od3f2OfV3LPVroz7xnyECDfBaPBPaDdb8XWSNVLhuyglb15eewK0hj++\nCut3swWH02Y3yVhzFBnosqqjyzPLBQeDMOoHAPpJHRgprfIRDoUkWAXO5re3GIUQ\ncvk0d1I1jh3luQENBFPzE4sBCACmSxiM1vpPI7BpgUNAhu0B8SWptULpiYOnDHfM\nhU1u95Z5Lu/hy3sfm4BEKgLju7Y1I3jToWTwJJzgWZRr+iuuwj3fbfHCISYIK7f3\nIWGL2iM2+kLIH6E9oqRgGbJmhiwbz6OokxG0W7atdqpBxOKqhaH0AH3qRicwnuPm\nZ4/mNHYQ0vBffENewujn1bCAz4C1WB66/AXBYF8dpCP42qB5yK7FRNv4JubMmqhK\n7fkD88uu7JVGRYU+temWuJHH4WDxiCmvK8nXacFaZT1NGdTL9/2EukKLguTtZumb\noRWgFqV6WFcEnh/V/Ma51D2+K9QbCWa8Bb6c/wKOd9Ii1aDZABEBAAGJAR8EGAEC\nAAkFAlPzE4sCGwwACgkQ3NdDGK7TmFT2rwf+MzLFPn4Rkko38nctysbXm6qmk34U\nNTtqirOlxg3mWeUCp7VQGU2Rg2msdo764SxCK12OhJqlXGMd2efCoQhYbMOqG6C0\nikBZPkd5BVFuTKsAUiuVoiQd8bDaZSpO2QdE0RdHE/yYfO66pceEKkGlcjkTRFFU\nM7nTm7IQj4BBZclMLPr4fX520ZOVUepxAARMHW5A6EcHXvhXmblZOJM36fOv3T5N\nl9L5tWdt/wybaRE4xuwVSs0n7MyMlWmkQxz8Z6OQscbKmuI4tcYSbvvB5tzjLBwZ\nChb0eEZA5ePvnGofu+3JH48FmCIPveD+4kI9GhtGkCL3Q2PiPiLcSnWQWQ==\n=nFcN\n-----END PGP PUBLIC KEY BLOCK----- \n" > /tmp/keys/0.key && apt-key add /tmp/keys/0.key ---> Using cache ---> 870e5c08b5c8 Step 13/30 : RUN echo "-----BEGIN PGP PUBLIC KEY BLOCK-----\nVersion: SKS 1.1.6\nComment: Hostname: keyserver.ubuntu.com\n\nmQINBFzvJpYBEADY8l1YvO7iYW5gUESyzsTGnMvVUmlV3XarBaJz9bGRmgPXh7jcVFrQhE0L\n/HV7LOfoLI9H2GWYyHBqN5ERBlcA8XxG3ZvX7t9nAZPQT2Xxe3GT3trou5oCR+SyHN9xPnUw\nDuqUSvJ2eqMYb9B/Hph3OmtjG30jSNq9kOF5bBTk1hOTGPH4K/AY0jzT6OpHfXU6ytlFsI47\nZKsnTUhipGsKucQ1CXlyirndZ3V3k70YaooZ55rGaIoAWlx2H0J7sAHmqS29N9jV9mo135d+\nd+TdLBXI0PXtiHzE9IPaX+ctdSUrPnp+TwR99lxglpIG6hLuvOMAaxiqFBB/Jf3XJ8OBakfS\n6nHrWH2WqQxRbiITl0irkQozpwNEF2Bv0+Jvs1UFEdVGz5a8xexQHst/RmKrtHLct3iOCvBN\nqoAQRbvWvBhPjO/pV5cYeUljZ5wpHyFkaEViClaVWqa6PIsyLqmyjsruPCWlURLsQoQxABcL\n8bwxX7UThM6CtH6tGlYZ85RIzRifIm2oudzV5l+8oRgFr9yVcwyOFT6JCioqkwldW52P1pk/\n/SnuexC6LYqqDuHUs5NnokzzpfS6QaWfTY5P5tz4KHJfsjDIktly3mKVfY0fSPVVokdGpcUz\nvz2hq1fqjxB6MlB/1vtk0bImfcsoxBmF7H+4E9ZN1sX/tSb0KQARAQABtCZPcGVuIFJvYm90\naWNzIDxpbmZvQG9zcmZvdW5kYXRpb24ub3JnPokCVAQTAQoAPhYhBMHPbjHmut6IaLFytPQu\n1vurF8ZUBQJc7yaWAhsDBQkDwmcABQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEPQu1vur\nF8ZUkhIP/RbZY1ErvCEUy8iLJm9aSpLQnDZl5xILOxyZlzpg+Ml5bb0EkQDr92foCgcvLeAN\nKARNCaGLyNIWkuyDovPV0xZJrEy0kgBrDNb3++NmdI/+GA92pkedMXXioQvqdsxUagXAIB/s\nNGByJEhs37F05AnFvZbjUhceq3xTlvAMcrBWrgB4NwBivZY6IgLvl/CRQpVYwANShIQdbvHv\nZSxRonWhNXr6v/Wcf8rsp7g2VqJ2N2AcWT84aa9BLQ3Oe/SgrNx4QEhA1y7rc3oaqPVu5ZXO\nK+4O14JrpbEZ3Xs9YEjrcOuEDEpYktA8qqUDTdFyZrxb9S6BquUKrA6jZgT913kjJ4e7YAZo\nbC4rH0w4u0PrqDgYOkXA9Mo7L601/7ZaDJob80UcK+Z12ZSw73IgBix6DiJVfXuWkk5PM2zs\nFn6UOQXUNlZlDAOj5NC01V0fJ8P0v6GO9YOSSQx0j5UtkUbRfp/4W7uCPFvwAatWEHJhlM3s\nQNiMNStJFegr56xQu1a/cbJH7GdbseMhG/f0BaKQqXCI3ffB5y5AOLc9Hw7PYiTFQsuY1ePR\nhE+J9mejgWRZxkjAH/FlAubqXkDgterCh+sLkzGf+my2IbsMCuc+3aeNMJ5Ej/vlXefCH/Mp\nPWAHCqpQhe2DET/jRSaM53USAHNx8kw4MPUkxExgI7Sd\n=4Ofr\n-----END PGP PUBLIC KEY BLOCK-----\n" > /tmp/keys/1.key && apt-key add /tmp/keys/1.key ---> Using cache ---> 9d50123eeba9 Step 14/30 : RUN echo deb http://10.210.9.154/ubuntu/building bionic main | tee -a /etc/apt/sources.list.d/buildfarm.list ---> Using cache ---> 5be6e345d6ef Step 15/30 : RUN echo deb http://packages.ros.org/ros/ubuntu bionic main | tee -a /etc/apt/sources.list.d/buildfarm.list ---> Using cache ---> 2df50aed5161 Step 16/30 : RUN mkdir /tmp/wrapper_scripts ---> Using cache ---> 6318df32df01 Step 17/30 : RUN echo "#!/usr/bin/env python3\n\n# Copyright 2014-2016 Open Source Robotics Foundation, Inc.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport subprocess\nimport sys\nfrom time import sleep\n\n\ndef main(argv=sys.argv[1:]):\n max_tries = 10\n known_error_strings = [\n 'Failed to fetch',\n 'Failed to stat',\n 'Hash Sum mismatch',\n 'Unable to locate package',\n 'is not what the server reported',\n ]\n\n command = argv[0]\n if command in ['update', 'source']:\n rc, _, _ = call_apt_repeatedly(\n argv, known_error_strings, max_tries)\n return rc\n elif command == 'update-install-clean':\n return call_apt_update_install_clean(\n argv[1:], known_error_strings, max_tries)\n else:\n assert \"Command '%s' not implemented\" % command\n\n\ndef call_apt_update_install_clean(\n install_argv, known_error_strings, max_tries):\n tries = 0\n command = 'update'\n while tries < max_tries:\n if command == 'update':\n rc, _, tries = call_apt_repeatedly(\n [command], known_error_strings, max_tries - tries,\n offset=tries)\n if rc != 0:\n # abort if update was unsuccessful even after retries\n break\n # move on to the install command if update was successful\n command = 'install'\n\n if command == 'install':\n # any call is considered a try\n tries += 1\n known_error_strings_redo_update = [\n 'Size mismatch',\n 'maybe run apt update',\n 'The following packages cannot be authenticated!',\n 'Unable to locate package',\n 'has no installation candidate',\n 'corrupted package archive',\n ]\n rc, known_error_conditions = \\\\\n call_apt(\n [command] + install_argv,\n known_error_strings + known_error_strings_redo_update)\n if not known_error_conditions:\n if rc != 0:\n # abort if install was unsuccessful\n break\n # move on to the clean command if install was successful\n command = 'clean'\n continue\n\n # known errors are always interpreted as a non-zero rc\n if rc == 0:\n rc = 1\n # check if update needs to be rerun\n if (\n set(known_error_conditions) &\n set(known_error_strings_redo_update)\n ):\n command = 'update'\n print(\"'apt install' failed and likely requires \" +\n \"'apt update' to run again\")\n # retry with update command\n continue\n\n print('')\n print('Invocation failed due to the following known error '\n 'conditions: ' + ', '.join(known_error_conditions))\n print('')\n if tries < max_tries:\n sleep_time = 5\n print(\"Reinvoke 'apt install' after sleeping %s seconds\" %\n sleep_time)\n sleep(sleep_time)\n # retry install command\n\n if command == 'clean':\n rc, _ = call_apt([command], [])\n break\n\n return rc\n\n\ndef call_apt_repeatedly(argv, known_error_strings, max_tries, offset=0):\n command = argv[0]\n for i in range(1, max_tries + 1):\n if i > 1:\n sleep_time = 5 + 2 * (i + offset)\n print(\"Reinvoke 'apt %s' (%d/%d) after sleeping %s seconds\" %\n (command, i + offset, max_tries + offset, sleep_time))\n sleep(sleep_time)\n rc, known_error_conditions = call_apt(argv, known_error_strings)\n if not known_error_conditions:\n # break the loop and return the reported rc\n break\n # known errors are always interpreted as a non-zero rc\n if rc == 0:\n rc = 1\n print('')\n print('Invocation failed due to the following known error conditions: '\n ', '.join(known_error_conditions))\n print('')\n # retry in case of failure with known error condition\n return rc, known_error_conditions, i + offset\n\n\ndef call_apt(argv, known_error_strings):\n known_error_conditions = []\n\n # some of the used options are not supported in older distros\n # e.g. Ubuntu Wily, Debian Jessie\n cmd = ['apt-get'] + argv\n print(\"Invoking '%s'\" % ' '.join(cmd))\n proc = subprocess.Popen(\n cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)\n lines = []\n while True:\n line = proc.stdout.readline()\n if not line:\n break\n line = line.decode()\n lines.append(line)\n sys.stdout.write(line)\n for known_error_string in known_error_strings:\n if known_error_string in line:\n if known_error_string not in known_error_conditions:\n known_error_conditions.append(known_error_string)\n proc.wait()\n rc = proc.returncode\n if rc and not known_error_conditions:\n print('Invocation failed without any known error condition, '\n 'printing all lines to debug known error detection:')\n for index, line in enumerate(lines):\n print(' ', index + 1, \"'%s'\" % line.rstrip('\\\\n\\\\r'))\n print('None of the following known errors were detected:')\n for index, known_error_string in enumerate(known_error_strings):\n print(' ', index + 1, \"'%s'\" % known_error_string)\n return rc, known_error_conditions\n\n\nif __name__ == '__main__':\n sys.exit(main())" > /tmp/wrapper_scripts/apt.py ---> Using cache ---> c849d6d84f84 Step 18/30 : RUN echo "#!/usr/bin/env python3\n\n# Copyright 2016 Open Source Robotics Foundation, Inc.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport subprocess\nimport sys\nfrom time import sleep\n\n\ndef main(argv=sys.argv[1:]):\n max_tries = 10\n known_error_strings = [\n 'Connection timed out',\n ]\n\n command = argv[0]\n if command == 'clone':\n rc, _, _ = call_git_repeatedly(\n argv, known_error_strings, max_tries)\n return rc\n else:\n assert \"Command '%s' not implemented\" % command\n\n\ndef call_git_repeatedly(argv, known_error_strings, max_tries):\n command = argv[0]\n for i in range(1, max_tries + 1):\n if i > 1:\n sleep_time = 5 + 2 * i\n print(\"Reinvoke 'git %s' (%d/%d) after sleeping %s seconds\" %\n (command, i, max_tries, sleep_time))\n sleep(sleep_time)\n rc, known_error_conditions = call_git(argv, known_error_strings)\n if rc == 0 or not known_error_conditions:\n break\n print('')\n print('Invocation failed due to the following known error conditions: '\n ', '.join(known_error_conditions))\n print('')\n # retry in case of failure with known error condition\n return rc, known_error_conditions, i\n\n\ndef call_git(argv, known_error_strings):\n known_error_conditions = []\n\n cmd = ['git'] + argv\n print(\"Invoking '%s'\" % ' '.join(cmd))\n proc = subprocess.Popen(\n cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)\n while True:\n line = proc.stdout.readline()\n if not line:\n break\n line = line.decode()\n sys.stdout.write(line)\n for known_error_string in known_error_strings:\n if known_error_string in line:\n if known_error_string not in known_error_conditions:\n known_error_conditions.append(known_error_string)\n proc.wait()\n rc = proc.returncode\n return rc, known_error_conditions\n\n\nif __name__ == '__main__':\n sys.exit(main())" > /tmp/wrapper_scripts/git.py ---> Using cache ---> 2aedc91dbac6 Step 19/30 : RUN echo "2020-09-17 (+0000)" ---> Using cache ---> bb0484a866e4 Step 20/30 : RUN for i in 1 2 3; do apt-get update && apt-get install -q -y python3 && apt-get clean && break || if [ $i -lt 3 ]; then sleep 5; else false; fi; done ---> Using cache ---> 917d310074b8 Step 21/30 : RUN python3 -u /tmp/wrapper_scripts/apt.py update-install-clean -q -y dh-python ---> Using cache ---> 52cad45a162e Step 22/30 : RUN python3 -u /tmp/wrapper_scripts/apt.py update-install-clean -q -y debhelper dpkg dpkg-dev git git-buildpackage python3-catkin-pkg-modules python3-rosdistro-modules python3-yaml ---> Using cache ---> 3f29bc68387b Step 23/30 : COPY .git-credentials /home/buildfarm/.git-credentials ---> Using cache ---> 556538378239 Step 24/30 : RUN chmod 600 /home/buildfarm/.git-credentials ---> Using cache ---> 898f30ea393a Step 25/30 : RUN chown buildfarm /home/buildfarm/.git-credentials ---> Using cache ---> 8e9b360ae134 Step 26/30 : USER buildfarm ---> Using cache ---> 6d63948e1c8f Step 27/30 : RUN git config --global credential.helper 'store' ---> Using cache ---> f5279c1b74da Step 28/30 : RUN git config --global http.sslVerify false ---> Using cache ---> 5f0a8c19a879 Step 29/30 : ENTRYPOINT sh -c ---> Using cache ---> c48dc3c65cbe Step 30/30 : CMD PYTHONPATH=/tmp/ros_buildfarm:$PYTHONPATH python3 -u /tmp/ros_buildfarm/scripts/release/get_sources.py --rosdistro-index-url https://raw.githubusercontent.com/LCAS/rosdistro/master/index.yaml melodic thorvald_twist_mux ubuntu bionic http://10.210.9.154/ubuntu/building http://packages.ros.org/ros/ubuntu --source-dir /tmp/sourcedeb/source && PYTHONPATH=/tmp/ros_buildfarm:$PYTHONPATH python3 -u /tmp/ros_buildfarm/scripts/release/build_sourcedeb.py ubuntu bionic --source-dir /tmp/sourcedeb/source ---> Running in ba99f4eedd8f ---> d68d9f088ffb Removing intermediate container ba99f4eedd8f Successfully built d68d9f088ffb Successfully tagged sourcedeb.melodic_ubuntu_bionic_thorvald_twist_mux:latest + echo # END SECTION # END SECTION + echo # BEGIN SECTION: Run Dockerfile - generate sourcedeb # BEGIN SECTION: Run Dockerfile - generate sourcedeb + rm -fr /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/sourcedeb + mkdir -p /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/sourcedeb/source + docker run --rm --cidfile=/home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/docker_sourcedeb/docker.cid -e=TRAVIS= --net=host -v /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/ros_buildfarm:/tmp/ros_buildfarm:ro -v /home/jenkins-slave/workspace/Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source/sourcedeb:/tmp/sourcedeb sourcedeb.melodic_ubuntu_bionic_thorvald_twist_mux # BEGIN SUBSECTION: get sources Invoking 'git clone --branch debian/ros-melodic-thorvald-twist-mux_2.0.0-1_bionic --depth 1 --no-single-branch https://github.com/SAGARobotics/thorvald-releases.git /tmp/sourcedeb/source' Cloning into '/tmp/sourcedeb/source'... Note: checking out '2daaf7f4860bb3cbff6fcf81d8efebea590b840f'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by performing another checkout. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -b with the checkout command again. Example: git checkout -b No tarball found at 'http://10.210.9.154/ubuntu/building/pool/main/r/ros-melodic-thorvald-twist-mux/ros-melodic-thorvald-twist-mux_2.0.0.orig.tar.gz' No tarball found at 'http://packages.ros.org/ros/ubuntu/pool/main/r/ros-melodic-thorvald-twist-mux/ros-melodic-thorvald-twist-mux_2.0.0.orig.tar.gz' Package 'thorvald_twist_mux' version: 2.0.0-1bionic Package maintainer emails: lgrimstad@sagarobotics.com # END SUBSECTION # BEGIN SUBSECTION: build sourcedeb Invoking 'gbp buildpackage --git-ignore-new --git-ignore-branch -S -d -ui -us -uc --lintian-opts --suppress-tags newer-standards-version' in '/tmp/sourcedeb/source' gbp:warning: Old style config section [git-buildpackage] found please rename to [buildpackage] gbp:info: Creating ros-melodic-thorvald-twist-mux_2.0.0.orig.tar.gz from 'release/melodic/thorvald_twist_mux/2.0.0-1' gbp:info: Performing the build dpkg-buildpackage -rfakeroot -us -uc -ui -i -I -S -d dpkg-buildpackage: info: source package ros-melodic-thorvald-twist-mux dpkg-buildpackage: info: source version 2.0.0-1bionic dpkg-buildpackage: info: source distribution bionic dpkg-buildpackage: info: source changed by Lars Grimstad dpkg-source -i -I --before-build source dpkg-source: info: using options from source/debian/source/options: --auto-commit fakeroot debian/rules clean dh clean -v --buildsystem=cmake dh_testdir -O-v -O--buildsystem=cmake dh_auto_clean -O-v -O--buildsystem=cmake dh_clean -O-v -O--buildsystem=cmake rm -f debian/debhelper-build-stamp rm -rf debian/.debhelper/ rm -f -- debian/ros-melodic-thorvald-twist-mux.substvars debian/files rm -fr -- debian/ros-melodic-thorvald-twist-mux/ debian/tmp/ find . \( \( \ \( -path .\*/.git -o -path .\*/.svn -o -path .\*/.bzr -o -path .\*/.hg -o -path .\*/CVS -o -path .\*/.pc -o -path .\*/_darcs \) -prune -o -type f -a \ \( -name '#*#' -o -name '.*~' -o -name '*~' -o -name DEADJOE \ -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \ -o -name '.*.orig' -o -name .*.rej -o -name '.SUMS' \ -o -name TAGS -o \( -path '*/.deps/*' -a -name '*.P' \) \ \) -exec rm -f {} + \) -o \ \( -type d -a -name autom4te.cache -prune -exec rm -rf {} + \) \) dpkg-source -i -I -b source dpkg-source: info: using options from source/debian/source/options: --auto-commit dpkg-source: info: using source format '3.0 (quilt)' dpkg-source: info: building ros-melodic-thorvald-twist-mux using existing ./ros-melodic-thorvald-twist-mux_2.0.0.orig.tar.gz dpkg-source: info: building ros-melodic-thorvald-twist-mux in ros-melodic-thorvald-twist-mux_2.0.0-1bionic.debian.tar.xz dpkg-source: info: building ros-melodic-thorvald-twist-mux in ros-melodic-thorvald-twist-mux_2.0.0-1bionic.dsc dpkg-genbuildinfo --build=source dpkg-genchanges --build=source >../ros-melodic-thorvald-twist-mux_2.0.0-1bionic_source.changes dpkg-genchanges: info: including full source code in upload dpkg-source -i -I --after-build source dpkg-source: info: using options from source/debian/source/options: --auto-commit dpkg-buildpackage: info: full upload (original source is included) Now running lintian --suppress-tags newer-standards-version ros-melodic-thorvald-twist-mux_2.0.0-1bionic_source.changes ... W: ros-melodic-thorvald-twist-mux source: no-debian-copyright W: ros-melodic-thorvald-twist-mux source: ancient-standards-version 3.9.2 (released 2011-04-07) (current is 4.1.4) Finished running lintian. # END SUBSECTION + echo # END SECTION # END SECTION [Msrc_uB__thorvald_twist_mux__ubuntu_bionic__source] $ /bin/sh -xe /tmp/jenkins683889852381591091.sh + [ false = false ] + echo # BEGIN SECTION: Clean up to save disk space on agents # BEGIN SECTION: Clean up to save disk space on agents + rm -fr sourcedeb/source + echo # END SECTION # END SECTION SSH: Connecting from host [lcas-buildfarm-slave-2] SSH: Connecting with configuration [repo] ... SSH: Disconnecting configuration [repo] ... SSH: Transferred 5 file(s) Build step 'Send files or execute commands over SSH' changed build result to SUCCESS Waiting for the completion of Mrel_import-package Mrel_import-package #716 started. Mrel_import-package #716 completed. Result was SUCCESS # BEGIN SECTION: Check if triggered build failed Pattern not found in build log, continuing... # END SECTION $ ssh-agent -k unset SSH_AUTH_SOCK; unset SSH_AGENT_PID; echo Agent pid 27813 killed; [ssh-agent] Stopped. [description-setter] Description set: 2.0.0-1bionic Triggering a new build of Mbin_uB64__thorvald_twist_mux__ubuntu_bionic_amd64__binary Finished: SUCCESS