Started by upstream project "Msrc_uB__strands_description__ubuntu_bionic__source" build number 1 originally caused by: Started by upstream project "Mrel_trigger-jobs" build number 1830 originally caused by: Started by timer Started by upstream project "Mbin_uB64__calibrate_chest__ubuntu_bionic_amd64__binary" build number 1 originally caused by: Started by upstream project "Msrc_uB__calibrate_chest__ubuntu_bionic__source" build number 1 originally caused by: Started by upstream project "Mrel_trigger-jobs" build number 1830 originally caused by: Started by timer Building remotely on build client 2 (buildagent slave buildslave indigo_devel_default) in workspace /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary [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-2BAenjDWGcYr/agent.31177 SSH_AGENT_PID=31179 [ssh-agent] Started. $ ssh-add /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary@tmp/private_key_2788284226102359841.key Identity added: /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary@tmp/private_key_2788284226102359841.key (/home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary@tmp/private_key_2788284226102359841.key) [ssh-agent] Using credentials jenkins-slave # BEGIN SECTION: Check upstream projects Verify that no recursive upstream project is broken: - 'Mbin_uB64__calibrate_chest__ubuntu_bionic_amd64__binary' build '1' has result 'SUCCESS' - 'Msrc_uB__calibrate_chest__ubuntu_bionic__source' build '1' has result 'SUCCESS' - 'Msrc_uB__strands_description__ubuntu_bionic__source' build '1' has result 'SUCCESS' All recursive upstream projects are (un)stable # END SECTION # BEGIN SECTION: Check free disk space Usable disk space = 49582682112 bytes Free space threshold = 5368709120 bytes # END SECTION [Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary] $ /bin/sh -xe /tmp/hudson4952856907857254292.sh + echo # BEGIN SECTION: docker version # BEGIN SECTION: docker version + docker version Client: Version: 1.9.1 API version: 1.21 Go version: go1.4.2 Git commit: a34a1d5 Built: Fri Nov 20 13:12:04 UTC 2015 OS/Arch: linux/amd64 Server: Version: 1.9.1 API version: 1.21 Go version: go1.4.2 Git commit: a34a1d5 Built: Fri Nov 20 13:12:04 UTC 2015 OS/Arch: linux/amd64 + echo # END SECTION # END SECTION + echo # BEGIN SECTION: docker info # BEGIN SECTION: docker info + docker info Containers: 81 Images: 1677 Server Version: 1.9.1 Storage Driver: aufs Root Dir: /var/lib/docker/aufs Backing Filesystem: extfs Dirs: 2634 Dirperm1 Supported: false Execution Driver: native-0.2 Logging Driver: json-file Kernel Version: 3.13.0-29-generic Operating System: Ubuntu 14.04 LTS CPUs: 2 Total Memory: 3.861 GiB Name: lcas-buildfarm-slave-1 ID: LZSS:PF7G:CREH:TEQW:FH57:3M6D:KCSS:ODQY:SPHA:ND7A:FHYG:PNDE WARNING: No swap limit support + echo # END SECTION # END SECTION [Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary] $ /bin/sh -xe /tmp/hudson5065918667381757005.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 [Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary] $ /bin/sh -xe /tmp/hudson1767740914033965154.sh + echo # END SECTION # END SECTION [Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary] $ /bin/sh -xe /tmp/hudson9093035105106211780.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 [Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary] $ /bin/sh -xe /tmp/hudson7052061948864006786.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 769490a3a30c62410fc0c633da8552c554b6c221 Author: Marc Hanheide Date: Sun Nov 24 10:49:33 2019 +0000 added support for flat repos like NVIDIA + rm -fr ros_buildfarm/.git + rm -fr ros_buildfarm/doc + echo # END SECTION # END SECTION [Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary] $ /bin/sh -xe /tmp/hudson8791584772550947686.sh + echo # BEGIN SECTION: Write PGP repository keys # BEGIN SECTION: Write PGP repository keys + mkdir -p /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/keys + rm -fr /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/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 -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1 mQINBFdtt4UBEAC8FDSWMR07GJZ265giLn7kLF+EsJCWESUq6Cd13QN0JQ/tLibi QlW4ZjeOnEH9VPlqh/mKqNMG4SwRt8S+GHpePMQrr0aOkiRGfCclnAWIZURSAP+t PLelCt43fkw1BBTopd/0oOzO8kHu8j8WU4A8GHxqghfFWPv54FQs2iaZ2eWR7a6d 79IJrbDKaVCCiQrkhCM8m648pNKHhuoJ9cQXFV+uvwkpfmKWGQ4ultxlOyjLHJLF vuML2RuAO9IxbdZjzeYNN+T+wjFIBVcPnwEO+WrYgvGkT4r9aqVqTeg3EPb7QclV sKBVJdxk4jZl0y22HAWqScVi6SJ15uK9pXxywDZkbpuRBWx4ThWiGe/FiUa2igi9 /SIvqN2TBY0g18sRTrylVr1wE1UGa/y7nDx6PoGCP1frBt8YUYt3pkM8Xvb2CRxx CyWwmuFEQHC6jCEWf7FnoBHBYQwTVGNrU0vkuIeDrm+ZAcv8wx+ie1hlFhqCCJnf jqeQ0/zA9RPmCPOkLyTdSsNZtlxxk7bzCdTdFFKzBjGTR7Gz3SMSp23d11eIyRiF HQsp2v0SvnPJ6OcgB95Hmo544vi3RuoVfovtDOdfSBCRxP+GhhxkKSrTleQjD0/r CGkdG2Kox3m9YllAsvZchLXlS7bZV9mGRF61mVMjF3HJRUQfBBm89VPQ+QARAQAB tCBjdWRhdG9vbHMgPGN1ZGF0b29sc0BudmlkaWEuY29tPokCNwQTAQgAIQUCV223 hQIbAwULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRD2D0s9f6KvgNArEAChnfcW rYItgt7xXXubT6E+KpJyJ0RPrXf51S2mhciFbjDl+3EXRMRjOutVmgWYPWUUZaKR 8Iez3Lz4BRmwYOWBLtdnOLbKoSsQUX95rnPFjfly/DFLfjKxz4NRBmh4r4/rCYWm 2hmnXmOAi8kV7fqx3g5XMpJ//N6+T8ctEol2iZ82GrXjadcRWE4rAe7UyuEzJ74y 6ZKIzk5ijdgEKtcaBhzEWvoV5Pr9nkn7ByGsdehKR/gNnjPMYXrklSHGfphJIsS2 S32lMk/kuRjihBcWcYBXIPEQ7CV+PNW2TlkZj/YqTg637sZHwkhcjcNzxeqKvRYG 8V7Ju5hTDxL1UQBmgDS3cRx1lw7tYRG5bS67tbC2dc/CpPkG5agiZ/WyoHQDnn4r 1fRuOFx694QR6+0rAP6171xEEoNAPaH7gdJdhWKiYiJD0T2EEbW7wBUi/EupeKRv kR12R1jUa1mlpxNtWQxJ7qp98T9+DmkxI1XDmWx0/g4ryuicwLDSqoPgNcRNdSQb b8YfTqrkqaDdYzwLr/n0YKW3cYIvIeisV0WxRjb6OP7oAlAtaAhImlIc//51qNO7 /WAud6qMtnhFoZayR/BzLKqnCioN5GYr9BAKskpPHe9cDKVS3fg+Qvc1sNJID+jf k52PqyW24Qsr0A9+5zQyE4tH9dfv120gj9avmg== =0nKc -----END PGP PUBLIC KEY BLOCK----- + echo # END SECTION # END SECTION [Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary] $ /bin/sh -xe /tmp/hudson325823735924864413.sh + rm -fr /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/docker_generating_docker + mkdir -p /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/docker_generating_docker + sleep 1 + python3 -u /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/ros_buildfarm/scripts/subprocess_reaper.py 31275 --cid-file /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/docker_generating_docker/docker.cid + echo # BEGIN SECTION: Generate Dockerfile - binarydeb task # BEGIN SECTION: Generate Dockerfile - binarydeb task + export TZ=GMT+00 + export PYTHONPATH=/home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/ros_buildfarm: + python3 -u /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/ros_buildfarm/scripts/release/run_binarydeb_job.py --rosdistro-index-url https://raw.githubusercontent.com/LCAS/rosdistro/master/index.yaml melodic strands_description ubuntu bionic amd64 --distribution-repository-urls http://10.210.9.154/ubuntu/building http://packages.ros.org/ros/ubuntu http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/ --distribution-repository-key-files /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/keys/0.key /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/keys/1.key /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/keys/2.key --target-repository http://10.210.9.154/ubuntu/building --binarydeb-dir /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/binarydeb --dockerfile-dir /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/docker_generating_docker --env-vars --append-timestamp Using the following distribution repositories: http://10.210.9.154/ubuntu/building (/home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/keys/0.key) http://packages.ros.org/ros/ubuntu (/home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/keys/1.key) http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/ (/home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/keys/2.key) Generating Dockerfile '/home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/docker_generating_docker/Dockerfile': # generated from release/binarydeb_create_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 "-----BEGIN PGP PUBLIC KEY BLOCK-----\nVersion: GnuPG v1\n\nmQINBFdtt4UBEAC8FDSWMR07GJZ265giLn7kLF+EsJCWESUq6Cd13QN0JQ/tLibi\nQlW4ZjeOnEH9VPlqh/mKqNMG4SwRt8S+GHpePMQrr0aOkiRGfCclnAWIZURSAP+t\nPLelCt43fkw1BBTopd/0oOzO8kHu8j8WU4A8GHxqghfFWPv54FQs2iaZ2eWR7a6d\n79IJrbDKaVCCiQrkhCM8m648pNKHhuoJ9cQXFV+uvwkpfmKWGQ4ultxlOyjLHJLF\nvuML2RuAO9IxbdZjzeYNN+T+wjFIBVcPnwEO+WrYgvGkT4r9aqVqTeg3EPb7QclV\nsKBVJdxk4jZl0y22HAWqScVi6SJ15uK9pXxywDZkbpuRBWx4ThWiGe/FiUa2igi9\n/SIvqN2TBY0g18sRTrylVr1wE1UGa/y7nDx6PoGCP1frBt8YUYt3pkM8Xvb2CRxx\nCyWwmuFEQHC6jCEWf7FnoBHBYQwTVGNrU0vkuIeDrm+ZAcv8wx+ie1hlFhqCCJnf\njqeQ0/zA9RPmCPOkLyTdSsNZtlxxk7bzCdTdFFKzBjGTR7Gz3SMSp23d11eIyRiF\nHQsp2v0SvnPJ6OcgB95Hmo544vi3RuoVfovtDOdfSBCRxP+GhhxkKSrTleQjD0/r\nCGkdG2Kox3m9YllAsvZchLXlS7bZV9mGRF61mVMjF3HJRUQfBBm89VPQ+QARAQAB\ntCBjdWRhdG9vbHMgPGN1ZGF0b29sc0BudmlkaWEuY29tPokCNwQTAQgAIQUCV223\nhQIbAwULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRD2D0s9f6KvgNArEAChnfcW\nrYItgt7xXXubT6E+KpJyJ0RPrXf51S2mhciFbjDl+3EXRMRjOutVmgWYPWUUZaKR\n8Iez3Lz4BRmwYOWBLtdnOLbKoSsQUX95rnPFjfly/DFLfjKxz4NRBmh4r4/rCYWm\n2hmnXmOAi8kV7fqx3g5XMpJ//N6+T8ctEol2iZ82GrXjadcRWE4rAe7UyuEzJ74y\n6ZKIzk5ijdgEKtcaBhzEWvoV5Pr9nkn7ByGsdehKR/gNnjPMYXrklSHGfphJIsS2\nS32lMk/kuRjihBcWcYBXIPEQ7CV+PNW2TlkZj/YqTg637sZHwkhcjcNzxeqKvRYG\n8V7Ju5hTDxL1UQBmgDS3cRx1lw7tYRG5bS67tbC2dc/CpPkG5agiZ/WyoHQDnn4r\n1fRuOFx694QR6+0rAP6171xEEoNAPaH7gdJdhWKiYiJD0T2EEbW7wBUi/EupeKRv\nkR12R1jUa1mlpxNtWQxJ7qp98T9+DmkxI1XDmWx0/g4ryuicwLDSqoPgNcRNdSQb\nb8YfTqrkqaDdYzwLr/n0YKW3cYIvIeisV0WxRjb6OP7oAlAtaAhImlIc//51qNO7\n/WAud6qMtnhFoZayR/BzLKqnCioN5GYr9BAKskpPHe9cDKVS3fg+Qvc1sNJID+jf\nk52PqyW24Qsr0A9+5zQyE4tH9dfv120gj9avmg==\n=0nKc\n-----END PGP PUBLIC KEY BLOCK-----\n" > /tmp/keys/2.key && apt-key add /tmp/keys/2.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-src 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 echo deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/ / | tee -a /etc/apt/sources.list.d/buildfarm.list RUN grep -q -F -e "deb http://old-releases.ubuntu.com" /etc/apt/sources.list && ((grep -q -E -x -e "deb http://old-releases\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb http://old-releases.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://old-releases\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb-src http://old-releases.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://old-releases\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb http://old-releases.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://old-releases\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb-src http://old-releases.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://old-releases\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb http://old-releases.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://old-releases\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb-src http://old-releases.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list)) || ((grep -q -E -x -e "deb http://archive\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb http://archive.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://archive\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb-src http://archive.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://archive\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb http://archive.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://archive\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb-src http://archive.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://archive\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb http://archive.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://archive\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb-src http://archive.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.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 "2019-11-26 (+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 devscripts dpkg-dev python3-apt python3-catkin-pkg-modules python3-empy python3-rosdistro-modules python3-yaml # always invalidate to actually have the latest apt repo state RUN echo "2019-11-26 16:57:33 +0000" RUN python3 -u /tmp/wrapper_scripts/apt.py update USER buildfarm ENTRYPOINT ["sh", "-c"] CMD ["PYTHONPATH=/tmp/ros_buildfarm:$PYTHONPATH python3 -u /tmp/ros_buildfarm/scripts/release/get_sourcedeb.py --rosdistro-index-url https://raw.githubusercontent.com/LCAS/rosdistro/master/index.yaml melodic strands_description --sourcedeb-dir /tmp/binarydeb && PYTHONPATH=/tmp/ros_buildfarm:$PYTHONPATH python3 -u /tmp/ros_buildfarm/scripts/release/append_build_timestamp.py melodic strands_description --sourcedeb-dir /tmp/binarydeb && PYTHONPATH=/tmp/ros_buildfarm:$PYTHONPATH python3 -u /tmp/ros_buildfarm/scripts/release/create_binarydeb_task_generator.py --rosdistro-index-url https://raw.githubusercontent.com/LCAS/rosdistro/master/index.yaml melodic strands_description ubuntu bionic amd64 --distribution-repository-urls http://10.210.9.154/ubuntu/building http://packages.ros.org/ros/ubuntu http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/ --distribution-repository-key-files /tmp/keys/0.key /tmp/keys/1.key /tmp/keys/2.key --binarydeb-dir /tmp/binarydeb --env-vars --dockerfile-dir /tmp/docker_build_binarydeb"] + echo # END SECTION # END SECTION + echo # BEGIN SECTION: Build Dockerfile - binarydeb task # BEGIN SECTION: Build Dockerfile - binarydeb task + cd /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/docker_generating_docker + python3 -u /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/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:1d1c09d1d5e42265dd6e7d35dcc73373f0e1b76da661463f24487ac3dbeb673f Status: Image is up to date for ubuntu:bionic + docker build --force-rm -t binarydeb_task_generation.melodic_ubuntu_bionic_amd64_strands_description . Sending build context to Docker daemon 23.04 kB Sending build context to Docker daemon 23.04 kB Step 1 : FROM ubuntu:bionic ---> 6120d8e09b3f Step 2 : VOLUME /var/cache/apt/archives ---> Using cache ---> 41662618c3f3 Step 3 : ENV DEBIAN_FRONTEND noninteractive ---> Using cache ---> 0a994878ebbe Step 4 : 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 ---> 11d6297b5e03 Step 5 : RUN echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen ---> Using cache ---> 24b3d17f9554 Step 6 : RUN locale-gen en_US.UTF-8 ---> Using cache ---> ef2c05211818 Step 7 : ENV LANG en_US.UTF-8 ---> Using cache ---> efc7db86d7ba Step 8 : ENV TZ GMT+00 ---> Using cache ---> a58e57946b8a Step 9 : RUN useradd -u 1002 -l -m buildfarm ---> Using cache ---> d296a79e5df6 Step 10 : RUN mkdir /tmp/keys ---> Using cache ---> 28b00bfcc4e9 Step 11 : 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 ---> fec1836b4263 Step 12 : 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 ---> 337a2f566fab Step 13 : 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 ---> 52c8296759a9 Step 14 : RUN echo "-----BEGIN PGP PUBLIC KEY BLOCK-----\nVersion: GnuPG v1\n\nmQINBFdtt4UBEAC8FDSWMR07GJZ265giLn7kLF+EsJCWESUq6Cd13QN0JQ/tLibi\nQlW4ZjeOnEH9VPlqh/mKqNMG4SwRt8S+GHpePMQrr0aOkiRGfCclnAWIZURSAP+t\nPLelCt43fkw1BBTopd/0oOzO8kHu8j8WU4A8GHxqghfFWPv54FQs2iaZ2eWR7a6d\n79IJrbDKaVCCiQrkhCM8m648pNKHhuoJ9cQXFV+uvwkpfmKWGQ4ultxlOyjLHJLF\nvuML2RuAO9IxbdZjzeYNN+T+wjFIBVcPnwEO+WrYgvGkT4r9aqVqTeg3EPb7QclV\nsKBVJdxk4jZl0y22HAWqScVi6SJ15uK9pXxywDZkbpuRBWx4ThWiGe/FiUa2igi9\n/SIvqN2TBY0g18sRTrylVr1wE1UGa/y7nDx6PoGCP1frBt8YUYt3pkM8Xvb2CRxx\nCyWwmuFEQHC6jCEWf7FnoBHBYQwTVGNrU0vkuIeDrm+ZAcv8wx+ie1hlFhqCCJnf\njqeQ0/zA9RPmCPOkLyTdSsNZtlxxk7bzCdTdFFKzBjGTR7Gz3SMSp23d11eIyRiF\nHQsp2v0SvnPJ6OcgB95Hmo544vi3RuoVfovtDOdfSBCRxP+GhhxkKSrTleQjD0/r\nCGkdG2Kox3m9YllAsvZchLXlS7bZV9mGRF61mVMjF3HJRUQfBBm89VPQ+QARAQAB\ntCBjdWRhdG9vbHMgPGN1ZGF0b29sc0BudmlkaWEuY29tPokCNwQTAQgAIQUCV223\nhQIbAwULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRD2D0s9f6KvgNArEAChnfcW\nrYItgt7xXXubT6E+KpJyJ0RPrXf51S2mhciFbjDl+3EXRMRjOutVmgWYPWUUZaKR\n8Iez3Lz4BRmwYOWBLtdnOLbKoSsQUX95rnPFjfly/DFLfjKxz4NRBmh4r4/rCYWm\n2hmnXmOAi8kV7fqx3g5XMpJ//N6+T8ctEol2iZ82GrXjadcRWE4rAe7UyuEzJ74y\n6ZKIzk5ijdgEKtcaBhzEWvoV5Pr9nkn7ByGsdehKR/gNnjPMYXrklSHGfphJIsS2\nS32lMk/kuRjihBcWcYBXIPEQ7CV+PNW2TlkZj/YqTg637sZHwkhcjcNzxeqKvRYG\n8V7Ju5hTDxL1UQBmgDS3cRx1lw7tYRG5bS67tbC2dc/CpPkG5agiZ/WyoHQDnn4r\n1fRuOFx694QR6+0rAP6171xEEoNAPaH7gdJdhWKiYiJD0T2EEbW7wBUi/EupeKRv\nkR12R1jUa1mlpxNtWQxJ7qp98T9+DmkxI1XDmWx0/g4ryuicwLDSqoPgNcRNdSQb\nb8YfTqrkqaDdYzwLr/n0YKW3cYIvIeisV0WxRjb6OP7oAlAtaAhImlIc//51qNO7\n/WAud6qMtnhFoZayR/BzLKqnCioN5GYr9BAKskpPHe9cDKVS3fg+Qvc1sNJID+jf\nk52PqyW24Qsr0A9+5zQyE4tH9dfv120gj9avmg==\n=0nKc\n-----END PGP PUBLIC KEY BLOCK-----\n" > /tmp/keys/2.key && apt-key add /tmp/keys/2.key ---> Using cache ---> a823f85a5b9b Step 15 : RUN echo deb http://10.210.9.154/ubuntu/building bionic main | tee -a /etc/apt/sources.list.d/buildfarm.list ---> Using cache ---> da09dd314549 Step 16 : RUN echo deb-src http://10.210.9.154/ubuntu/building bionic main | tee -a /etc/apt/sources.list.d/buildfarm.list ---> Using cache ---> 0e25df1c7206 Step 17 : RUN echo deb http://packages.ros.org/ros/ubuntu bionic main | tee -a /etc/apt/sources.list.d/buildfarm.list ---> Using cache ---> ad78f5c237c4 Step 18 : RUN echo deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/ / | tee -a /etc/apt/sources.list.d/buildfarm.list ---> Using cache ---> e6bbd921ef65 Step 19 : RUN grep -q -F -e "deb http://old-releases.ubuntu.com" /etc/apt/sources.list && ((grep -q -E -x -e "deb http://old-releases\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb http://old-releases.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://old-releases\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb-src http://old-releases.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://old-releases\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb http://old-releases.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://old-releases\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb-src http://old-releases.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://old-releases\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb http://old-releases.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://old-releases\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb-src http://old-releases.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list)) || ((grep -q -E -x -e "deb http://archive\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb http://archive.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://archive\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb-src http://archive.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://archive\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb http://archive.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://archive\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb-src http://archive.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://archive\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb http://archive.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://archive\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb-src http://archive.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list)) ---> Using cache ---> 92fbbc00b757 Step 20 : RUN mkdir /tmp/wrapper_scripts ---> Using cache ---> 16dd8502e3db Step 21 : 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 ---> aa795e42de53 Step 22 : 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 ---> 7749400b286c Step 23 : RUN echo "2019-11-26 (+0000)" ---> Using cache ---> e576f31ccfec Step 24 : 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 ---> a951735683be Step 25 : RUN python3 -u /tmp/wrapper_scripts/apt.py update-install-clean -q -y devscripts dpkg-dev python3-apt python3-catkin-pkg-modules python3-empy python3-rosdistro-modules python3-yaml ---> Using cache ---> b1b5169c7c1b Step 26 : RUN echo "2019-11-26 16:57:33 +0000" ---> Running in b1fba3a35b29 2019-11-26 16:57:33 +0000 ---> 500daa634ce2 Removing intermediate container b1fba3a35b29 Step 27 : RUN python3 -u /tmp/wrapper_scripts/apt.py update ---> Running in c03d3bf784de Invoking 'apt-get update' Get:1 http://10.210.9.154/ubuntu/building bionic InRelease [2,823 B] Hit:2 http://archive.ubuntu.com/ubuntu bionic InRelease Hit:3 http://archive.ubuntu.com/ubuntu bionic-updates InRelease Hit:4 http://archive.ubuntu.com/ubuntu bionic-backports InRelease Hit:5 http://archive.ubuntu.com/ubuntu bionic-security InRelease Ign:6 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64 InRelease Hit:7 http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64 Release Hit:8 http://security.ubuntu.com/ubuntu bionic-security InRelease Get:9 http://10.210.9.154/ubuntu/building bionic/main Sources [88.6 kB] Get:10 http://10.210.9.154/ubuntu/building bionic/main amd64 Packages [113 kB] Hit:11 http://packages.ros.org/ros/ubuntu bionic InRelease Fetched 204 kB in 1s (153 kB/s) Reading package lists... ---> 36c5de62cbca Removing intermediate container c03d3bf784de Step 28 : USER buildfarm ---> Running in 983d6f3e5e73 ---> bafcd23ce492 Removing intermediate container 983d6f3e5e73 Step 29 : ENTRYPOINT sh -c ---> Running in 8e8bd32580c7 ---> 7c19bda0680d Removing intermediate container 8e8bd32580c7 Step 30 : CMD PYTHONPATH=/tmp/ros_buildfarm:$PYTHONPATH python3 -u /tmp/ros_buildfarm/scripts/release/get_sourcedeb.py --rosdistro-index-url https://raw.githubusercontent.com/LCAS/rosdistro/master/index.yaml melodic strands_description --sourcedeb-dir /tmp/binarydeb && PYTHONPATH=/tmp/ros_buildfarm:$PYTHONPATH python3 -u /tmp/ros_buildfarm/scripts/release/append_build_timestamp.py melodic strands_description --sourcedeb-dir /tmp/binarydeb && PYTHONPATH=/tmp/ros_buildfarm:$PYTHONPATH python3 -u /tmp/ros_buildfarm/scripts/release/create_binarydeb_task_generator.py --rosdistro-index-url https://raw.githubusercontent.com/LCAS/rosdistro/master/index.yaml melodic strands_description ubuntu bionic amd64 --distribution-repository-urls http://10.210.9.154/ubuntu/building http://packages.ros.org/ros/ubuntu http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/ --distribution-repository-key-files /tmp/keys/0.key /tmp/keys/1.key /tmp/keys/2.key --binarydeb-dir /tmp/binarydeb --env-vars --dockerfile-dir /tmp/docker_build_binarydeb ---> Running in 0d422b0a8ae7 ---> ac1de5c93ca9 Removing intermediate container 0d422b0a8ae7 Successfully built ac1de5c93ca9 + echo # END SECTION # END SECTION + echo # BEGIN SECTION: Run Dockerfile - binarydeb task # BEGIN SECTION: Run Dockerfile - binarydeb task + [ -f /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/binarydeb ] + rm -fr /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/binarydeb + rm -fr /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/docker_build_binarydeb + mkdir -p /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/binarydeb + mkdir -p /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/docker_build_binarydeb + docker run --rm --cidfile=/home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/docker_generating_docker/docker.cid -e=TRAVIS= -e=ROS_BUILDFARM_PULL_REQUEST_BRANCH= -v /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/ros_buildfarm:/tmp/ros_buildfarm:ro -v /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/binarydeb:/tmp/binarydeb -v /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/docker_build_binarydeb:/tmp/docker_build_binarydeb -v /home/jenkins-slave/.ccache:/home/buildfarm/.ccache binarydeb_task_generation.melodic_ubuntu_bionic_amd64_strands_description # BEGIN SUBSECTION: get sourcedeb Invoking '/usr/bin/python3 /tmp/ros_buildfarm/ros_buildfarm/wrapper/apt.py source --download-only --only-source ros-melodic-strands-description=1.0.0-1bionic' Invoking 'apt-get source --download-only --only-source ros-melodic-strands-description=1.0.0-1bionic' Reading package lists... Need to get 6,575 B of source archives. Get:1 http://10.210.9.154/ubuntu/building bionic/main ros-melodic-strands-description 1.0.0-1bionic (dsc) [1,079 B] Get:2 http://10.210.9.154/ubuntu/building bionic/main ros-melodic-strands-description 1.0.0-1bionic (tar) [3,424 B] Get:3 http://10.210.9.154/ubuntu/building bionic/main ros-melodic-strands-description 1.0.0-1bionic (diff) [2,072 B] Fetched 6,575 B in 0s (403 kB/s) Download complete and in download only mode Invoking 'dpkg-source -x ros-melodic-strands-description_1.0.0-1bionic.dsc' dpkg-source: warning: extracting unsigned source package (ros-melodic-strands-description_1.0.0-1bionic.dsc) dpkg-source: info: extracting ros-melodic-strands-description in ros-melodic-strands-description-1.0.0 dpkg-source: info: unpacking ros-melodic-strands-description_1.0.0.orig.tar.gz dpkg-source: info: unpacking ros-melodic-strands-description_1.0.0-1bionic.debian.tar.xz Package maintainer emails: nbore@kth.se # END SUBSECTION # BEGIN SUBSECTION: append build timestamp dpkg-parsechangelog: warning: debian/changelog(l5): found trailer where expected start of change data LINE: -- Nils Bore Tue, 26 Nov 2019 00:00:00 -0000 Invoking 'debchange -v 1.0.0-1bionic.20191126.165801 -p -D bionic -u high -m Append timestamp when binarydeb was built.' in '/tmp/binarydeb/ros-melodic-strands-description-1.0.0' debchange: warning: debian/changelog(l5): found trailer where expected start of change data LINE: -- Nils Bore Tue, 26 Nov 2019 00:00:00 -0000 # END SUBSECTION Looking for the '.dsc' file of package 'ros-melodic-strands-description' with version '1.0.0-1' Using the following distribution repositories: http://10.210.9.154/ubuntu/building (/tmp/keys/0.key) http://packages.ros.org/ros/ubuntu (/tmp/keys/1.key) http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/ (/tmp/keys/2.key) Generating Dockerfile '/tmp/docker_build_binarydeb/Dockerfile': # generated from release/binarydeb_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 "-----BEGIN PGP PUBLIC KEY BLOCK-----\nVersion: GnuPG v1\n\nmQINBFdtt4UBEAC8FDSWMR07GJZ265giLn7kLF+EsJCWESUq6Cd13QN0JQ/tLibi\nQlW4ZjeOnEH9VPlqh/mKqNMG4SwRt8S+GHpePMQrr0aOkiRGfCclnAWIZURSAP+t\nPLelCt43fkw1BBTopd/0oOzO8kHu8j8WU4A8GHxqghfFWPv54FQs2iaZ2eWR7a6d\n79IJrbDKaVCCiQrkhCM8m648pNKHhuoJ9cQXFV+uvwkpfmKWGQ4ultxlOyjLHJLF\nvuML2RuAO9IxbdZjzeYNN+T+wjFIBVcPnwEO+WrYgvGkT4r9aqVqTeg3EPb7QclV\nsKBVJdxk4jZl0y22HAWqScVi6SJ15uK9pXxywDZkbpuRBWx4ThWiGe/FiUa2igi9\n/SIvqN2TBY0g18sRTrylVr1wE1UGa/y7nDx6PoGCP1frBt8YUYt3pkM8Xvb2CRxx\nCyWwmuFEQHC6jCEWf7FnoBHBYQwTVGNrU0vkuIeDrm+ZAcv8wx+ie1hlFhqCCJnf\njqeQ0/zA9RPmCPOkLyTdSsNZtlxxk7bzCdTdFFKzBjGTR7Gz3SMSp23d11eIyRiF\nHQsp2v0SvnPJ6OcgB95Hmo544vi3RuoVfovtDOdfSBCRxP+GhhxkKSrTleQjD0/r\nCGkdG2Kox3m9YllAsvZchLXlS7bZV9mGRF61mVMjF3HJRUQfBBm89VPQ+QARAQAB\ntCBjdWRhdG9vbHMgPGN1ZGF0b29sc0BudmlkaWEuY29tPokCNwQTAQgAIQUCV223\nhQIbAwULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRD2D0s9f6KvgNArEAChnfcW\nrYItgt7xXXubT6E+KpJyJ0RPrXf51S2mhciFbjDl+3EXRMRjOutVmgWYPWUUZaKR\n8Iez3Lz4BRmwYOWBLtdnOLbKoSsQUX95rnPFjfly/DFLfjKxz4NRBmh4r4/rCYWm\n2hmnXmOAi8kV7fqx3g5XMpJ//N6+T8ctEol2iZ82GrXjadcRWE4rAe7UyuEzJ74y\n6ZKIzk5ijdgEKtcaBhzEWvoV5Pr9nkn7ByGsdehKR/gNnjPMYXrklSHGfphJIsS2\nS32lMk/kuRjihBcWcYBXIPEQ7CV+PNW2TlkZj/YqTg637sZHwkhcjcNzxeqKvRYG\n8V7Ju5hTDxL1UQBmgDS3cRx1lw7tYRG5bS67tbC2dc/CpPkG5agiZ/WyoHQDnn4r\n1fRuOFx694QR6+0rAP6171xEEoNAPaH7gdJdhWKiYiJD0T2EEbW7wBUi/EupeKRv\nkR12R1jUa1mlpxNtWQxJ7qp98T9+DmkxI1XDmWx0/g4ryuicwLDSqoPgNcRNdSQb\nb8YfTqrkqaDdYzwLr/n0YKW3cYIvIeisV0WxRjb6OP7oAlAtaAhImlIc//51qNO7\n/WAud6qMtnhFoZayR/BzLKqnCioN5GYr9BAKskpPHe9cDKVS3fg+Qvc1sNJID+jf\nk52PqyW24Qsr0A9+5zQyE4tH9dfv120gj9avmg==\n=0nKc\n-----END PGP PUBLIC KEY BLOCK-----\n" > /tmp/keys/2.key && apt-key add /tmp/keys/2.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 echo deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/ / | tee -a /etc/apt/sources.list.d/buildfarm.list RUN grep -q -F -e "deb http://old-releases.ubuntu.com" /etc/apt/sources.list && ((grep -q -E -x -e "deb http://old-releases\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb http://old-releases.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://old-releases\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb-src http://old-releases.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://old-releases\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb http://old-releases.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://old-releases\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb-src http://old-releases.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://old-releases\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb http://old-releases.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://old-releases\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb-src http://old-releases.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list)) || ((grep -q -E -x -e "deb http://archive\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb http://archive.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://archive\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb-src http://archive.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://archive\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb http://archive.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://archive\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb-src http://archive.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://archive\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb http://archive.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://archive\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb-src http://archive.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.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 "2019-11-26 (+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 ccache gcc build-essential # for each dependency: echo version, apt update, apt install, apt clean RUN echo "apt-src: 0.25.2" && python3 -u /tmp/wrapper_scripts/apt.py update-install-clean -q -y -o Debug::pkgProblemResolver=yes apt-src RUN echo "debhelper: 12.1.1ubuntu1~ubuntu18.04.1" && python3 -u /tmp/wrapper_scripts/apt.py update-install-clean -q -y -o Debug::pkgProblemResolver=yes debhelper RUN echo "ros-melodic-catkin: 0.7.19-1bionic.20191008.145018" && python3 -u /tmp/wrapper_scripts/apt.py update-install-clean -q -y -o Debug::pkgProblemResolver=yes ros-melodic-catkin USER buildfarm ENTRYPOINT ["sh", "-c"] CMD ["PYTHONPATH=/tmp/ros_buildfarm:$PYTHONPATH PATH=/usr/lib/ccache:$PATH python3 -u /tmp/ros_buildfarm/scripts/release/build_binarydeb.py melodic strands_description --sourcedeb-dir /tmp/binarydeb"] Mount the following volumes when running the container: -v /tmp/ros_buildfarm:/tmp/ros_buildfarm:ro -v /tmp/binarydeb:/tmp/binarydeb + echo # END SECTION # END SECTION [Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary] $ /bin/sh -xe /tmp/hudson6729197646090150967.sh + sleep 1 + python3 -u /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/ros_buildfarm/scripts/subprocess_reaper.py 32047 --cid-file /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/docker_build_binarydeb/docker.cid + echo # BEGIN SECTION: Build Dockerfile - build binarydeb # BEGIN SECTION: Build Dockerfile - build binarydeb + cd /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/docker_build_binarydeb + python3 -u /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/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:1d1c09d1d5e42265dd6e7d35dcc73373f0e1b76da661463f24487ac3dbeb673f Status: Image is up to date for ubuntu:bionic + docker build --force-rm -t binarydeb_build.melodic_ubuntu_bionic_amd64_strands_description . Sending build context to Docker daemon 22.53 kB Sending build context to Docker daemon 22.53 kB Step 1 : FROM ubuntu:bionic ---> 6120d8e09b3f Step 2 : VOLUME /var/cache/apt/archives ---> Using cache ---> 41662618c3f3 Step 3 : ENV DEBIAN_FRONTEND noninteractive ---> Using cache ---> 0a994878ebbe Step 4 : 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 ---> 11d6297b5e03 Step 5 : RUN echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen ---> Using cache ---> 24b3d17f9554 Step 6 : RUN locale-gen en_US.UTF-8 ---> Using cache ---> ef2c05211818 Step 7 : ENV LANG en_US.UTF-8 ---> Using cache ---> efc7db86d7ba Step 8 : ENV TZ GMT+00 ---> Using cache ---> a58e57946b8a Step 9 : RUN useradd -u 1002 -l -m buildfarm ---> Using cache ---> d296a79e5df6 Step 10 : RUN mkdir /tmp/keys ---> Using cache ---> 28b00bfcc4e9 Step 11 : 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 ---> fec1836b4263 Step 12 : 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 ---> 337a2f566fab Step 13 : 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 ---> 52c8296759a9 Step 14 : RUN echo "-----BEGIN PGP PUBLIC KEY BLOCK-----\nVersion: GnuPG v1\n\nmQINBFdtt4UBEAC8FDSWMR07GJZ265giLn7kLF+EsJCWESUq6Cd13QN0JQ/tLibi\nQlW4ZjeOnEH9VPlqh/mKqNMG4SwRt8S+GHpePMQrr0aOkiRGfCclnAWIZURSAP+t\nPLelCt43fkw1BBTopd/0oOzO8kHu8j8WU4A8GHxqghfFWPv54FQs2iaZ2eWR7a6d\n79IJrbDKaVCCiQrkhCM8m648pNKHhuoJ9cQXFV+uvwkpfmKWGQ4ultxlOyjLHJLF\nvuML2RuAO9IxbdZjzeYNN+T+wjFIBVcPnwEO+WrYgvGkT4r9aqVqTeg3EPb7QclV\nsKBVJdxk4jZl0y22HAWqScVi6SJ15uK9pXxywDZkbpuRBWx4ThWiGe/FiUa2igi9\n/SIvqN2TBY0g18sRTrylVr1wE1UGa/y7nDx6PoGCP1frBt8YUYt3pkM8Xvb2CRxx\nCyWwmuFEQHC6jCEWf7FnoBHBYQwTVGNrU0vkuIeDrm+ZAcv8wx+ie1hlFhqCCJnf\njqeQ0/zA9RPmCPOkLyTdSsNZtlxxk7bzCdTdFFKzBjGTR7Gz3SMSp23d11eIyRiF\nHQsp2v0SvnPJ6OcgB95Hmo544vi3RuoVfovtDOdfSBCRxP+GhhxkKSrTleQjD0/r\nCGkdG2Kox3m9YllAsvZchLXlS7bZV9mGRF61mVMjF3HJRUQfBBm89VPQ+QARAQAB\ntCBjdWRhdG9vbHMgPGN1ZGF0b29sc0BudmlkaWEuY29tPokCNwQTAQgAIQUCV223\nhQIbAwULCQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRD2D0s9f6KvgNArEAChnfcW\nrYItgt7xXXubT6E+KpJyJ0RPrXf51S2mhciFbjDl+3EXRMRjOutVmgWYPWUUZaKR\n8Iez3Lz4BRmwYOWBLtdnOLbKoSsQUX95rnPFjfly/DFLfjKxz4NRBmh4r4/rCYWm\n2hmnXmOAi8kV7fqx3g5XMpJ//N6+T8ctEol2iZ82GrXjadcRWE4rAe7UyuEzJ74y\n6ZKIzk5ijdgEKtcaBhzEWvoV5Pr9nkn7ByGsdehKR/gNnjPMYXrklSHGfphJIsS2\nS32lMk/kuRjihBcWcYBXIPEQ7CV+PNW2TlkZj/YqTg637sZHwkhcjcNzxeqKvRYG\n8V7Ju5hTDxL1UQBmgDS3cRx1lw7tYRG5bS67tbC2dc/CpPkG5agiZ/WyoHQDnn4r\n1fRuOFx694QR6+0rAP6171xEEoNAPaH7gdJdhWKiYiJD0T2EEbW7wBUi/EupeKRv\nkR12R1jUa1mlpxNtWQxJ7qp98T9+DmkxI1XDmWx0/g4ryuicwLDSqoPgNcRNdSQb\nb8YfTqrkqaDdYzwLr/n0YKW3cYIvIeisV0WxRjb6OP7oAlAtaAhImlIc//51qNO7\n/WAud6qMtnhFoZayR/BzLKqnCioN5GYr9BAKskpPHe9cDKVS3fg+Qvc1sNJID+jf\nk52PqyW24Qsr0A9+5zQyE4tH9dfv120gj9avmg==\n=0nKc\n-----END PGP PUBLIC KEY BLOCK-----\n" > /tmp/keys/2.key && apt-key add /tmp/keys/2.key ---> Using cache ---> a823f85a5b9b Step 15 : RUN echo deb http://10.210.9.154/ubuntu/building bionic main | tee -a /etc/apt/sources.list.d/buildfarm.list ---> Using cache ---> da09dd314549 Step 16 : RUN echo deb http://packages.ros.org/ros/ubuntu bionic main | tee -a /etc/apt/sources.list.d/buildfarm.list ---> Using cache ---> b520ee1485a6 Step 17 : RUN echo deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/ / | tee -a /etc/apt/sources.list.d/buildfarm.list ---> Using cache ---> 0823f9c10f31 Step 18 : RUN grep -q -F -e "deb http://old-releases.ubuntu.com" /etc/apt/sources.list && ((grep -q -E -x -e "deb http://old-releases\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb http://old-releases.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://old-releases\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb-src http://old-releases.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://old-releases\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb http://old-releases.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://old-releases\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb-src http://old-releases.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://old-releases\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb http://old-releases.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://old-releases\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z]+)*" /etc/apt/sources.list || echo "deb-src http://old-releases.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list)) || ((grep -q -E -x -e "deb http://archive\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb http://archive.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://archive\.ubuntu\.com/ubuntu/? bionic ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb-src http://archive.ubuntu.com/ubuntu/ bionic multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://archive\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb http://archive.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://archive\.ubuntu\.com/ubuntu/? bionic-updates ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb-src http://archive.ubuntu.com/ubuntu/ bionic-updates multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb http://archive\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb http://archive.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list) && (grep -q -E -x -e "deb-src http://archive\.ubuntu\.com/ubuntu/? bionic-security ([-a-z]+ )*multiverse( [-a-z])*" /etc/apt/sources.list || echo "deb-src http://archive.ubuntu.com/ubuntu/ bionic-security multiverse" >> /etc/apt/sources.list)) ---> Using cache ---> cc4c5d2a7513 Step 19 : RUN mkdir /tmp/wrapper_scripts ---> Using cache ---> 59d72fe539e3 Step 20 : 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 ---> 987f8f634f83 Step 21 : 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 ---> 2cd542ad56b0 Step 22 : RUN echo "2019-11-26 (+0000)" ---> Using cache ---> b1db1d783100 Step 23 : 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 ---> 46a103f1f606 Step 24 : RUN python3 -u /tmp/wrapper_scripts/apt.py update-install-clean -q -y dh-python ---> Using cache ---> 1fd61002d8a8 Step 25 : RUN python3 -u /tmp/wrapper_scripts/apt.py update-install-clean -q -y ccache gcc build-essential ---> Using cache ---> 075607f45b62 Step 26 : RUN echo "apt-src: 0.25.2" && python3 -u /tmp/wrapper_scripts/apt.py update-install-clean -q -y -o Debug::pkgProblemResolver=yes apt-src ---> Using cache ---> 8af9b53facdd Step 27 : RUN echo "debhelper: 12.1.1ubuntu1~ubuntu18.04.1" && python3 -u /tmp/wrapper_scripts/apt.py update-install-clean -q -y -o Debug::pkgProblemResolver=yes debhelper ---> Using cache ---> 459d4c240488 Step 28 : RUN echo "ros-melodic-catkin: 0.7.19-1bionic.20191008.145018" && python3 -u /tmp/wrapper_scripts/apt.py update-install-clean -q -y -o Debug::pkgProblemResolver=yes ros-melodic-catkin ---> Using cache ---> c29401c075fb Step 29 : USER buildfarm ---> Using cache ---> 4d07bcae2310 Step 30 : ENTRYPOINT sh -c ---> Using cache ---> eeb40243e6b0 Step 31 : CMD PYTHONPATH=/tmp/ros_buildfarm:$PYTHONPATH PATH=/usr/lib/ccache:$PATH python3 -u /tmp/ros_buildfarm/scripts/release/build_binarydeb.py melodic strands_description --sourcedeb-dir /tmp/binarydeb ---> Running in b07c0d6f11ae ---> d2434fcdac7a Removing intermediate container b07c0d6f11ae Successfully built d2434fcdac7a + echo # END SECTION # END SECTION + echo # BEGIN SECTION: Run Dockerfile - build binarydeb # BEGIN SECTION: Run Dockerfile - build binarydeb + docker run --rm --cidfile=/home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/docker_build_binarydeb/docker.cid -e=HOME= -e=TRAVIS= --net=host -v /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/ros_buildfarm:/tmp/ros_buildfarm:ro -v /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/binarydeb:/tmp/binarydeb -v /home/jenkins-slave/.ccache:/home/buildfarm/.ccache binarydeb_build.melodic_ubuntu_bionic_amd64_strands_description # BEGIN SUBSECTION: build binarydeb Package 'ros-melodic-strands-description' version: 1.0.0-1bionic.20191126.165801 Invoking 'apt-src build ros-melodic-strands-description' in '/tmp/binarydeb/ros-melodic-strands-description-1.0.0' I: Building in /tmp/binarydeb/ros-melodic-strands-description-1.0.0 .. dpkg-buildpackage: info: source package ros-melodic-strands-description dpkg-buildpackage: info: source version 1.0.0-1bionic.20191126.165801 dpkg-buildpackage: info: source distribution bionic dpkg-buildpackage: info: source changed by Nils Bore dpkg-source --before-build ros-melodic-strands-description-1.0.0 dpkg-buildpackage: info: host architecture amd64 dpkg-source: info: using options from ros-melodic-strands-description-1.0.0/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-strands-description.substvars debian/files rm -fr -- debian/ros-melodic-strands-description/ 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 {} + \) \) debian/rules build dh build -v --buildsystem=cmake dh_testdir -O-v -O--buildsystem=cmake dh_update_autotools_config -O-v -O--buildsystem=cmake debian/rules override_dh_auto_configure make[1]: Entering directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0' # In case we're installing to a non-standard location, look for a setup.sh # in the install tree that was dropped by catkin, and source it. It will # set things like CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. if [ -f "/opt/ros/melodic/setup.sh" ]; then . "/opt/ros/melodic/setup.sh"; fi && \ dh_auto_configure -- \ -DCATKIN_BUILD_BINARY_PACKAGE="1" \ -DCMAKE_INSTALL_PREFIX="/opt/ros/melodic" \ -DCMAKE_PREFIX_PATH="/opt/ros/melodic" install -d obj-x86_64-linux-gnu cd obj-x86_64-linux-gnu && cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_SYSCONFDIR=/etc -DCMAKE_INSTALL_LOCALSTATEDIR=/var -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON -DCATKIN_BUILD_BINARY_PACKAGE=1 -DCMAKE_INSTALL_PREFIX=/opt/ros/melodic -DCMAKE_PREFIX_PATH=/opt/ros/melodic -- The C compiler identification is GNU 7.4.0 -- The CXX compiler identification is GNU 7.4.0 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Using CATKIN_DEVEL_PREFIX: /tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu/devel -- Using CMAKE_PREFIX_PATH: /opt/ros/melodic -- This workspace overlays: /opt/ros/melodic -- Found PythonInterp: /usr/bin/python (found version "2.7.15") -- Using PYTHON_EXECUTABLE: /usr/bin/python -- Using Debian Python package layout -- Using empy: /usr/bin/empy -- Using CATKIN_ENABLE_TESTING: ON -- Skip enable_testing() when building binary package -- Using CATKIN_TEST_RESULTS_DIR: /tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu/test_results -- Found gtest sources under '/usr/src/googletest': gtests will be built -- Found gmock sources under '/usr/src/googletest': gmock will be built -- Looking for pthread.h -- Looking for pthread.h - found -- Looking for pthread_create -- Looking for pthread_create - not found -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Found Threads: TRUE -- Using Python nosetests: /usr/bin/nosetests-2.7 -- catkin 0.7.19 -- BUILD_SHARED_LIBS is on -- Configuring done -- Generating done CMake Warning: Manually-specified variables were not used by the project: CMAKE_EXPORT_NO_PACKAGE_REGISTRY CMAKE_INSTALL_LOCALSTATEDIR CMAKE_INSTALL_SYSCONFDIR -- Build files have been written to: /tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu make[1]: Leaving directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0' debian/rules override_dh_auto_build make[1]: Entering directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0' # In case we're installing to a non-standard location, look for a setup.sh # in the install tree that was dropped by catkin, and source it. It will # set things like CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. if [ -f "/opt/ros/melodic/setup.sh" ]; then . "/opt/ros/melodic/setup.sh"; fi && \ dh_auto_build cd obj-x86_64-linux-gnu && make -j1 make[2]: Entering directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu' /usr/bin/cmake -H/tmp/binarydeb/ros-melodic-strands-description-1.0.0 -B/tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu --check-build-system CMakeFiles/Makefile.cmake 0 /usr/bin/cmake -E cmake_progress_start /tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu/CMakeFiles /tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu/CMakeFiles/progress.marks make -f CMakeFiles/Makefile2 all make[3]: Entering directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu' make[3]: Nothing to be done for 'all'. make[3]: Leaving directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu' /usr/bin/cmake -E cmake_progress_start /tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu/CMakeFiles 0 make[2]: Leaving directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu' make[1]: Leaving directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0' debian/rules override_dh_auto_test make[1]: Entering directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0' # In case we're installing to a non-standard location, look for a setup.sh # in the install tree that was dropped by catkin, and source it. It will # set things like CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. echo -- Running tests. Even if one of them fails the build is not canceled. -- Running tests. Even if one of them fails the build is not canceled. if [ -f "/opt/ros/melodic/setup.sh" ]; then . "/opt/ros/melodic/setup.sh"; fi && \ dh_auto_test || true make[1]: Leaving directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0' fakeroot debian/rules binary dh binary -v --buildsystem=cmake dh_testroot -O-v -O--buildsystem=cmake dh_prep -O-v -O--buildsystem=cmake rm -f -- debian/ros-melodic-strands-description.substvars rm -fr -- debian/.debhelper/generated/ros-melodic-strands-description/ debian/ros-melodic-strands-description/ debian/tmp/ dh_installdirs -O-v -O--buildsystem=cmake install -d debian/ros-melodic-strands-description debian/rules override_dh_auto_install make[1]: Entering directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0' # In case we're installing to a non-standard location, look for a setup.sh # in the install tree that was dropped by catkin, and source it. It will # set things like CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. if [ -f "/opt/ros/melodic/setup.sh" ]; then . "/opt/ros/melodic/setup.sh"; fi && \ dh_auto_install cd obj-x86_64-linux-gnu && make -j1 install DESTDIR=/tmp/binarydeb/ros-melodic-strands-description-1.0.0/debian/ros-melodic-strands-description AM_UPDATE_INFO_DIR=no make[2]: Entering directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu' /usr/bin/cmake -H/tmp/binarydeb/ros-melodic-strands-description-1.0.0 -B/tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu --check-build-system CMakeFiles/Makefile.cmake 0 /usr/bin/cmake -E cmake_progress_start /tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu/CMakeFiles /tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu/CMakeFiles/progress.marks make -f CMakeFiles/Makefile2 all make[3]: Entering directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu' make[3]: Nothing to be done for 'all'. make[3]: Leaving directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu' /usr/bin/cmake -E cmake_progress_start /tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu/CMakeFiles 0 make -f CMakeFiles/Makefile2 preinstall make[3]: Entering directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu' make[3]: Nothing to be done for 'preinstall'. make[3]: Leaving directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu' Install the project... /usr/bin/cmake -P cmake_install.cmake -- Install configuration: "None" -- Installing: /tmp/binarydeb/ros-melodic-strands-description-1.0.0/debian/ros-melodic-strands-description/opt/ros/melodic/lib/pkgconfig/strands_description.pc -- Installing: /tmp/binarydeb/ros-melodic-strands-description-1.0.0/debian/ros-melodic-strands-description/opt/ros/melodic/share/strands_description/cmake/strands_descriptionConfig.cmake -- Installing: /tmp/binarydeb/ros-melodic-strands-description-1.0.0/debian/ros-melodic-strands-description/opt/ros/melodic/share/strands_description/cmake/strands_descriptionConfig-version.cmake -- Installing: /tmp/binarydeb/ros-melodic-strands-description-1.0.0/debian/ros-melodic-strands-description/opt/ros/melodic/share/strands_description/package.xml -- Installing: /tmp/binarydeb/ros-melodic-strands-description-1.0.0/debian/ros-melodic-strands-description/opt/ros/melodic/share/strands_description/urdf -- Installing: /tmp/binarydeb/ros-melodic-strands-description-1.0.0/debian/ros-melodic-strands-description/opt/ros/melodic/share/strands_description/urdf/scitos_chest_camera.xacro -- Installing: /tmp/binarydeb/ros-melodic-strands-description-1.0.0/debian/ros-melodic-strands-description/opt/ros/melodic/share/strands_description/urdf/scitos_all_robot_model.xacro -- Installing: /tmp/binarydeb/ros-melodic-strands-description-1.0.0/debian/ros-melodic-strands-description/opt/ros/melodic/share/strands_description/launch -- Installing: /tmp/binarydeb/ros-melodic-strands-description-1.0.0/debian/ros-melodic-strands-description/opt/ros/melodic/share/strands_description/launch/strands_state_publisher.launch make[2]: Leaving directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu' make[1]: Leaving directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0' dh_install -O-v -O--buildsystem=cmake install -d debian/.debhelper/generated/ros-melodic-strands-description dh_installdocs -O-v -O--buildsystem=cmake install -d debian/ros-melodic-strands-description/usr/share/doc/ros-melodic-strands-description dh_installchangelogs -O-v -O--buildsystem=cmake install -p -m0644 debian/changelog debian/ros-melodic-strands-description/usr/share/doc/ros-melodic-strands-description/changelog.Debian dh_installexamples -O-v -O--buildsystem=cmake dh_installman -O-v -O--buildsystem=cmake dh_installcatalogs -O-v -O--buildsystem=cmake dh_installcron -O-v -O--buildsystem=cmake dh_installdebconf -O-v -O--buildsystem=cmake install -d debian/ros-melodic-strands-description/DEBIAN dh_installemacsen -O-v -O--buildsystem=cmake dh_installifupdown -O-v -O--buildsystem=cmake dh_installinfo -O-v -O--buildsystem=cmake dh_installinit -O-v -O--buildsystem=cmake dh_installmenu -O-v -O--buildsystem=cmake dh_installmime -O-v -O--buildsystem=cmake dh_installmodules -O-v -O--buildsystem=cmake dh_installlogcheck -O-v -O--buildsystem=cmake dh_installlogrotate -O-v -O--buildsystem=cmake dh_installpam -O-v -O--buildsystem=cmake dh_installppp -O-v -O--buildsystem=cmake dh_installudev -O-v -O--buildsystem=cmake dh_installgsettings -O-v -O--buildsystem=cmake dh_bugfiles -O-v -O--buildsystem=cmake dh_ucf -O-v -O--buildsystem=cmake dh_lintian -O-v -O--buildsystem=cmake dh_gconf -O-v -O--buildsystem=cmake dh_icons -O-v -O--buildsystem=cmake dh_perl -O-v -O--buildsystem=cmake dh_usrlocal -O-v -O--buildsystem=cmake dh_link -O-v -O--buildsystem=cmake dh_installwm -O-v -O--buildsystem=cmake dh_installxfonts -O-v -O--buildsystem=cmake dh_strip_nondeterminism -O-v -O--buildsystem=cmake dh_compress -O-v -O--buildsystem=cmake cd debian/ros-melodic-strands-description chmod a-x usr/share/doc/ros-melodic-strands-description/changelog.Debian gzip -9nf usr/share/doc/ros-melodic-strands-description/changelog.Debian cd '/tmp/binarydeb/ros-melodic-strands-description-1.0.0' dh_fixperms -O-v -O--buildsystem=cmake find debian/ros-melodic-strands-description -true -print0 2>/dev/null | xargs -0r chown --no-dereference 0:0 find debian/ros-melodic-strands-description ! -type l -a -true -a -true -print0 2>/dev/null | xargs -0r chmod go=rX,u+rw,a-s find debian/ros-melodic-strands-description/usr/share/doc -type f -a -true -a ! -regex 'debian/ros-melodic-strands-description/usr/share/doc/[^/]*/examples/.*' -print0 2>/dev/null | xargs -0r chmod 0644 find debian/ros-melodic-strands-description/usr/share/doc -type d -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0755 find debian/ros-melodic-strands-description -type f \( -name '*.so.*' -o -name '*.so' -o -name '*.la' -o -name '*.a' -o -name '*.js' -o -name '*.css' -o -name '*.scss' -o -name '*.sass' -o -name '*.jpeg' -o -name '*.jpg' -o -name '*.png' -o -name '*.gif' -o -name '*.cmxs' \) -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644 dh_missing -O-v -O--buildsystem=cmake dh_strip -O-v -O--buildsystem=cmake dh_makeshlibs -O-v -O--buildsystem=cmake rm -f debian/ros-melodic-strands-description/DEBIAN/shlibs debian/rules override_dh_shlibdeps make[1]: Entering directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0' # In case we're installing to a non-standard location, look for a setup.sh # in the install tree that was dropped by catkin, and source it. It will # set things like CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. if [ -f "/opt/ros/melodic/setup.sh" ]; then . "/opt/ros/melodic/setup.sh"; fi && \ dh_shlibdeps -l/tmp/binarydeb/ros-melodic-strands-description-1.0.0/debian/ros-melodic-strands-description//opt/ros/melodic/lib/ make[1]: Leaving directory '/tmp/binarydeb/ros-melodic-strands-description-1.0.0' dh_installdeb -O-v -O--buildsystem=cmake dh_gencontrol -O-v -O--buildsystem=cmake echo misc:Depends= >> debian/ros-melodic-strands-description.substvars echo misc:Pre-Depends= >> debian/ros-melodic-strands-description.substvars dpkg-gencontrol -pros-melodic-strands-description -ldebian/changelog -Tdebian/ros-melodic-strands-description.substvars -Pdebian/ros-melodic-strands-description -UMulti-Arch dpkg-gencontrol: warning: Depends field of package ros-melodic-strands-description: unknown substitution variable ${shlibs:Depends} chmod 0644 -- debian/ros-melodic-strands-description/DEBIAN/control chown 0:0 -- debian/ros-melodic-strands-description/DEBIAN/control dh_md5sums -O-v -O--buildsystem=cmake (cd debian/ros-melodic-strands-description >/dev/null ; find . -type f ! -regex './DEBIAN/.*' -printf '%P\0' | LC_ALL=C sort -z | xargs -r0 md5sum | perl -pe 'if (s@^\\@@) { s/\\\\/\\/g; }' > DEBIAN/md5sums) >/dev/null chmod 0644 -- debian/ros-melodic-strands-description/DEBIAN/md5sums chown 0:0 -- debian/ros-melodic-strands-description/DEBIAN/md5sums dh_builddeb -O-v -O--buildsystem=cmake dpkg-deb --build debian/ros-melodic-strands-description .. dpkg-deb: building package 'ros-melodic-strands-description' in '../ros-melodic-strands-description_1.0.0-1bionic.20191126.165801_amd64.deb'. dpkg-genbuildinfo --build=binary dpkg-genbuildinfo: warning: debian/changelog(l11): found trailer where expected start of change data LINE: -- Nils Bore Tue, 26 Nov 2019 00:00:00 -0000 dpkg-genchanges --build=binary >../ros-melodic-strands-description_1.0.0-1bionic.20191126.165801_amd64.changes dpkg-genchanges: warning: debian/changelog(l11): found trailer where expected start of change data LINE: -- Nils Bore Tue, 26 Nov 2019 00:00:00 -0000 dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build ros-melodic-strands-description-1.0.0 dpkg-source: info: using options from ros-melodic-strands-description-1.0.0/debian/source/options: --auto-commit dpkg-buildpackage: info: binary-only upload (no source included) I: Successfully built in /tmp/binarydeb/ros-melodic-strands-description-1.0.0 # END SUBSECTION + echo # END SECTION # END SECTION [Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary] $ /bin/sh -xe /tmp/hudson3438726017933825928.sh + [ false = false ] + echo # BEGIN SECTION: Clean up to save disk space on agents # BEGIN SECTION: Clean up to save disk space on agents + chmod -R u+w /home/jenkins-slave/workspace/Mbin_uB64__strands_description__ubuntu_bionic_amd64__binary/binarydeb + rm -fr binarydeb/ros-melodic-strands-description-1.0.0/CHANGELOG.rst binarydeb/ros-melodic-strands-description-1.0.0/CMakeLists.txt binarydeb/ros-melodic-strands-description-1.0.0/debian binarydeb/ros-melodic-strands-description-1.0.0/launch binarydeb/ros-melodic-strands-description-1.0.0/obj-x86_64-linux-gnu binarydeb/ros-melodic-strands-description-1.0.0/package.xml binarydeb/ros-melodic-strands-description-1.0.0/urdf + echo # END SECTION # END SECTION SSH: Connecting from host [lcas-buildfarm-slave-1] SSH: Connecting with configuration [repo] ... SSH: Disconnecting configuration [repo] ... SSH: Transferred 2 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 #216 completed. Result was SUCCESS $ ssh-agent -k unset SSH_AUTH_SOCK; unset SSH_AGENT_PID; echo Agent pid 31179 killed; [ssh-agent] Stopped. [description-setter] Description set: 1.0.0-1bionic.20191126.165801 Warning: you have no plugins providing access control for builds, so falling back to legacy behavior of permitting any downstream builds to be triggered Triggering a new build of Mrel_sync-packages-to-testing_bionic_amd64 Triggering a new build of Mbin_uB64__strands_movebase__ubuntu_bionic_amd64__binary Finished: SUCCESS