diff -Nru docker.io-20.10.21/debian/changelog docker.io-20.10.21/debian/changelog --- docker.io-20.10.21/debian/changelog 2023-04-27 05:37:25.000000000 +0000 +++ docker.io-20.10.21/debian/changelog 2024-01-18 04:40:23.000000000 +0000 @@ -1,3 +1,27 @@ +docker.io (20.10.21-0ubuntu1~22.04.6) jammy-security; urgency=medium + + * No change rebuild due to golang-1.20, golang-1.21 updates + + -- Nishit Majithia Thu, 18 Jan 2024 10:10:23 +0530 + +docker.io (20.10.21-0ubuntu1~22.04.5) jammy; urgency=medium + + * d/tests: remove since docker.io binary package is now provided by + src:docker.io-app, and the tests were moved to it. + + -- Lucas Kanashiro Mon, 17 Jul 2023 16:21:21 -0300 + +docker.io (20.10.21-0ubuntu1~22.04.4) jammy; urgency=medium + + * Do not provide the docker{.io,-doc} binary packages anymore (LP: #2022390). + Those binary packages are now provided by src:docker.io-app. + - d/control: remove docker{.io,-doc} binary package paragraphs. + - d/docker{.io,-doc}*: remove all files related to the removed binaries. + - d/rules: remove + override_dh_{installinit,installsystemd,installudev,install}. + + -- Lucas Kanashiro Fri, 14 Jul 2023 17:01:52 -0300 + docker.io (20.10.21-0ubuntu1~22.04.3) jammy-security; urgency=medium * No change rebuild due to golang-1.18 update diff -Nru docker.io-20.10.21/debian/control docker.io-20.10.21/debian/control --- docker.io-20.10.21/debian/control 2023-02-15 15:08:59.000000000 +0000 +++ docker.io-20.10.21/debian/control 2023-07-14 20:01:24.000000000 +0000 @@ -31,46 +31,6 @@ Vcs-Browser: https://anonscm.debian.org/cgit/docker/docker.io.git XS-Go-Import-Path: github.com/docker/docker -Package: docker.io -Architecture: amd64 arm64 armhf i386 ppc64el riscv64 s390x -Depends: adduser, - containerd (>= 1.2.6-0ubuntu1~), - iptables, - ${misc:Depends}, - ${shlibs:Depends} -Recommends: ca-certificates, - git, - pigz, - ubuntu-fan, - xz-utils, - ${apparmor:Recommends} -Replaces: docker (<< 1.5~) -Breaks: docker (<< 1.5~) -Suggests: aufs-tools, - btrfs-progs, - cgroupfs-mount | cgroup-lite, - debootstrap, - docker-doc, - rinse, - zfs-fuse | zfsutils -Built-Using: ${libc:Built-Using}, ${misc:Built-Using} -Description: Linux container runtime - Docker complements kernel namespacing with a high-level API which operates at - the process level. It runs unix processes with strong guarantees of isolation - and repeatability across servers. - . - Docker is a great building block for automating distributed systems: - large-scale web deployments, database clusters, continuous deployment systems, - private PaaS, service-oriented architectures, etc. - . - This package contains the daemon and client. Using docker.io on non-amd64 hosts - is not supported at this time. Please be careful when using it on anything - besides amd64. - . - Also, note that kernel version 3.8 or above is required for proper operation of - the daemon process, and that any lower versions may have subtle and/or glaring - issues. - Package: vim-syntax-docker Architecture: all Depends: vim, ${misc:Depends} @@ -102,27 +62,3 @@ Description: Transitional package for golang-github-docker-docker-dev This is a transitional package to ease upgrades to the golang-github-docker-docker-dev package. It can safely be removed. - -Package: docker-doc -Provides: docker.io-doc -Section: doc -Architecture: all -Depends: ${misc:Depends} -Description: Linux container runtime -- documentation - Docker complements kernel namespacing with a high-level API which operates at - the process level. It runs unix processes with strong guarantees of isolation - and repeatability across servers. - . - Docker is a great building block for automating distributed systems: - large-scale web deployments, database clusters, continuous deployment systems, - private PaaS, service-oriented architectures, etc. - . - This package contains the daemon and client. Using docker.io on non-amd64 hosts - is not supported at this time. Please be careful when using it on anything - besides amd64. - . - Also, note that kernel version 3.8 or above is required for proper operation of - the daemon process, and that any lower versions may have subtle and/or glaring - issues. - . - This package provides documentation for Docker. diff -Nru docker.io-20.10.21/debian/docker-doc.docs docker.io-20.10.21/debian/docker-doc.docs --- docker.io-20.10.21/debian/docker-doc.docs 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker-doc.docs 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -cli/docs/* -engine/docs/* diff -Nru docker.io-20.10.21/debian/docker.io.bash-completion docker.io-20.10.21/debian/docker.io.bash-completion --- docker.io-20.10.21/debian/docker.io.bash-completion 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker.io.bash-completion 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -cli/contrib/completion/bash/docker diff -Nru docker.io-20.10.21/debian/docker.io.dirs docker.io-20.10.21/debian/docker.io.dirs --- docker.io-20.10.21/debian/docker.io.dirs 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker.io.dirs 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -etc/docker diff -Nru docker.io-20.10.21/debian/docker.io.docker.service docker.io-20.10.21/debian/docker.io.docker.service --- docker.io-20.10.21/debian/docker.io.docker.service 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker.io.docker.service 1970-01-01 00:00:00.000000000 +0000 @@ -1,48 +0,0 @@ -[Unit] -Description=Docker Application Container Engine -Documentation=https://docs.docker.com -After=network-online.target firewalld.service containerd.service -Wants=network-online.target -Requires=docker.socket -Wants=containerd.service - -[Service] -Type=notify -# the default is not to use systemd for cgroups because the delegate issues still -# exists and systemd currently does not support the cgroup feature set required -# for containers run by docker -ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -ExecReload=/bin/kill -s HUP $MAINPID -TimeoutSec=0 -RestartSec=2 -Restart=always - -# Note that StartLimit* options were moved from "Service" to "Unit" in systemd 229. -# Both the old, and new location are accepted by systemd 229 and up, so using the old location -# to make them work for either version of systemd. -StartLimitBurst=3 - -# Note that StartLimitInterval was renamed to StartLimitIntervalSec in systemd 230. -# Both the old, and new name are accepted by systemd 230 and up, so using the old name to make -# this option work for either version of systemd. -StartLimitInterval=60s - -# Having non-zero Limit*s causes performance problems due to accounting overhead -# in the kernel. We recommend using cgroups to do container-local accounting. -LimitNOFILE=infinity -LimitNPROC=infinity -LimitCORE=infinity - -# Comment TasksMax if your systemd version does not support it. -# Only systemd 226 and above support this option. -TasksMax=infinity - -# set delegate yes so that systemd does not reset the cgroups of docker containers -Delegate=yes - -# kill only the docker process, not all processes in the cgroup -KillMode=process -OOMScoreAdjust=-500 - -[Install] -WantedBy=multi-user.target diff -Nru docker.io-20.10.21/debian/docker.io.docker.socket docker.io-20.10.21/debian/docker.io.docker.socket --- docker.io-20.10.21/debian/docker.io.docker.socket 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker.io.docker.socket 1970-01-01 00:00:00.000000000 +0000 @@ -1,11 +0,0 @@ -[Unit] -Description=Docker Socket for the API - -[Socket] -ListenStream=/var/run/docker.sock -SocketMode=0660 -SocketUser=root -SocketGroup=docker - -[Install] -WantedBy=sockets.target diff -Nru docker.io-20.10.21/debian/docker.io.docs docker.io-20.10.21/debian/docker.io.docs --- docker.io-20.10.21/debian/docker.io.docs 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker.io.docs 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -engine/README.md diff -Nru docker.io-20.10.21/debian/docker.io.install docker.io-20.10.21/debian/docker.io.install --- docker.io-20.10.21/debian/docker.io.install 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker.io.install 1970-01-01 00:00:00.000000000 +0000 @@ -1,11 +0,0 @@ -#!/usr/bin/dh-exec - -# https://github.com/docker/docker-ce/blob/v19.03.2/components/packaging/deb/common/rules#L36 -cli/build/docker => usr/bin/docker -engine/bundles/dynbinary-daemon/dockerd => usr/bin/dockerd -libnetwork/docker-proxy => usr/bin/docker-proxy -tini/build/tini-static => usr/bin/docker-init - -cli/contrib/completion/zsh/_docker usr/share/zsh/vendor-completions/ -engine/contrib/check-config.sh usr/share/docker.io/contrib/ -engine/contrib/nuke-graph-directory.sh usr/share/docker.io/contrib/ diff -Nru docker.io-20.10.21/debian/docker.io.maintscript docker.io-20.10.21/debian/docker.io.maintscript --- docker.io-20.10.21/debian/docker.io.maintscript 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker.io.maintscript 1970-01-01 00:00:00.000000000 +0000 @@ -1,5 +0,0 @@ -mv_conffile /etc/bash_completion.d/docker.io /etc/bash_completion.d/docker 1.2.0~ -mv_conffile /etc/default/docker.io /etc/default/docker 1.2.0~ -mv_conffile /etc/init.d/docker.io /etc/init.d/docker 1.2.0~ -mv_conffile /etc/init/docker.io.conf /etc/init/docker.conf 1.2.0~ -rm_conffile /etc/bash_completion.d/docker 1.11.2~ diff -Nru docker.io-20.10.21/debian/docker.io.manpages docker.io-20.10.21/debian/docker.io.manpages --- docker.io-20.10.21/debian/docker.io.manpages 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker.io.manpages 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -cli/man/man*/* diff -Nru docker.io-20.10.21/debian/docker.io.postinst docker.io-20.10.21/debian/docker.io.postinst --- docker.io-20.10.21/debian/docker.io.postinst 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker.io.postinst 1970-01-01 00:00:00.000000000 +0000 @@ -1,109 +0,0 @@ -#!/bin/sh -set -e - -. /usr/share/debconf/confmodule - -case "$1" in - configure) - if [ -z "$2" ]; then - # make sure the "docker" system group exists for "docker.socket" to apply it as the group on "docker.sock" - if ! getent group docker > /dev/null 2>&1; then - addgroup --system docker - fi - fi - - # Ensure config directory permissions - # On a fresh install, $2 = '' and dpkg "le-nl" treat that as a - # greater version, so the body is not executed. - if dpkg --compare-versions "$2" le-nl '1.11.2~ds1-1'; then - if [ "$(stat -c '%a' /etc/docker)" = '700' ]; then - chmod 0755 /etc/docker - fi - fi - - # ZFS handling: create a dedicated ZFS docker dataset to handle all children containers in a single, - # persistent, place. - # Also check if zfs executable exists and if it is in $PATH. - # The zfs command is provided by zfs-fuse | zfsutils and they - # are runtime Suggested dependencies which means they are not - # necessarily available during configuration time (LP: #1910133). - if [ -x "$(command -v zfs)" ] && modinfo zfs >/dev/null 2>&1; then - # if there is no mountpoint /var/lib/docker: - # 1: create /var/lib/docker if doesn’t exist (zfs mount?) - # /var/lib with canmount off if doesn’t exist - # /var with canmount off if doesn’t exist - rpool="$(zfs mount | awk '$2=="/" {print $1}'| cut -d/ -f1)" - - if [ -n "$rpool" ]; then - dockermnt="$(findmnt -n -o SOURCE /var/lib/docker || true)" - - # Create /var/lib/docker if doesn’t exist - if echo "$dockermnt" | grep -qE '^$|/ROOT/'; then - zfs create -o canmount=off "$rpool"/var 2>/dev/null || true - zfs create -o canmount=off "$rpool"/var/lib 2>/dev/null || true - if dpkg --compare-versions "$2" le-nl '19.03.8-0ubuntu2'; then - invoke-rc.d docker stop || true - mv /var/lib/docker /var/lib/docker.migrating - fi - zfs create "$rpool"/var/lib/docker 2>/dev/null || true - dockermnt="$rpool"/var/lib/docker - fi - - if dpkg --compare-versions "$2" le-nl '19.03.8-0ubuntu2'; then - mv /var/lib/docker.migrating/* /var/lib/docker/ - rmdir /var/lib/docker.migrating/ - # Migrate datasets - for dataset in $(zfs list -H -t filesystem -o name,mountpoint,canmount -r "$rpool"/ROOT | grep -E "/var/lib/[0-9a-f]{64}(-init)?\slegacy\son" | cut -f1); do - dockerid=${dataset##*/} - zfs rename "$dataset" "$dockermnt/$dockerid" || true - done - # Purge their zsys history datasets - for dataset in $(zfs list -H -t snapshot -o name -r "$rpool"/var/lib/docker | grep "@autozsys_"); do - zfs destroy -R "$dataset" || true - done - invoke-rc.d docker start || true - fi - fi - fi - - ;; - abort-*) - # How'd we get here?? - exit 1 - ;; - *) - ;; -esac - -# restart Docker if it's running (thus this is an upgrade) and the user (via debconf) tells us they're OK with that -db_version 2.0 -db_fset docker.io/restart seen false -if [ -n "$2" ] && [ "$1" = 'configure' ] && { - # either: - # - we're doing "dpkg-reconfigure" (and thus need to "db_input" to make sure users can change their answer between installs/upgrades) - # - we're doing install/upgrade and Docker is running (and thus it matters whether or not the user wants us to restart Docker for them) - [ -n "${DEBCONF_RECONFIGURE:-}" ] \ - || invoke-rc.d --disclose-deny docker status > /dev/null 2>&1 -}; then - db_input high docker.io/restart || : - db_go || : - if [ -z "${DEBCONF_RECONFIGURE:-}" ]; then - # only perform the actual restart if we're doing install/upgrade (not during interactive "dpkg-reconfigure") - db_get docker.io/restart - if [ "$RET" = 'true' ]; then - # Docker daemon appears to be running and should be restarted - invoke-rc.d docker restart || : - fi - fi -fi -db_stop - -#DEBHELPER# - -# because we had to use "dh_installinit --no-start", we get to make sure the daemon is started on first install (and upgrades thereafter, if it isn't running) -# (this is adapted from debhelper's "autoscripts/postinst-init") -if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ]; then - if [ -z "${DEBCONF_RECONFIGURE:-}" ] && ! invoke-rc.d docker status > /dev/null 2>&1 ; then - invoke-rc.d docker start || : - fi -fi diff -Nru docker.io-20.10.21/debian/docker.io.postrm docker.io-20.10.21/debian/docker.io.postrm --- docker.io-20.10.21/debian/docker.io.postrm 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker.io.postrm 1970-01-01 00:00:00.000000000 +0000 @@ -1,17 +0,0 @@ -#!/bin/sh -set -e - -#DEBHELPER# - -case "$1" in - purge) - # if we have our saved "nuke-graph-directory.sh", let's use it - # see also docker.io.prerm - if [ -x /var/lib/docker/nuke-graph-directory.sh ]; then - /var/lib/docker/nuke-graph-directory.sh /var/lib/docker - fi - ;; - - *) - ;; -esac diff -Nru docker.io-20.10.21/debian/docker.io.preinst docker.io-20.10.21/debian/docker.io.preinst --- docker.io-20.10.21/debian/docker.io.preinst 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker.io.preinst 1970-01-01 00:00:00.000000000 +0000 @@ -1,10 +0,0 @@ -#!/bin/sh -set -e - -if [ -e "/var/lib/docker/aufs" ]; then - echo "The aufs storage-driver is no longer supported." - echo "Please ensure that none of your containers are" - echo "using the aufs storage driver, remove the directory" - echo "/var/lib/docker/aufs and try again." - exit 1 -fi diff -Nru docker.io-20.10.21/debian/docker.io.prerm docker.io-20.10.21/debian/docker.io.prerm --- docker.io-20.10.21/debian/docker.io.prerm 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker.io.prerm 1970-01-01 00:00:00.000000000 +0000 @@ -1,29 +0,0 @@ -#!/bin/sh -set -e - -case "$1" in - remove) - # if we're removing, we need to save "nuke-graph-directory.sh" so that - # we can still purge "/var/lib/docker" later if necessary - # see also docker.io.postrm - if \ - [ -d /var/lib/docker ] \ - && [ -x /usr/share/docker.io/contrib/nuke-graph-directory.sh ] \ - ; then - if cp -v /usr/share/docker.io/contrib/nuke-graph-directory.sh /var/lib/docker/; then - chmod +x /var/lib/docker/nuke-graph-directory.sh || : - fi - fi - ;; - - *) - ;; -esac - -#DEBHELPER# - -# because we had to use "dh_installinit --no-start", we get to make sure the daemon is stopped on uninstall -# (this is adapted from debhelper's "autoscripts/prerm-init-norestart") -if [ "$1" = remove ]; then - invoke-rc.d docker stop -fi diff -Nru docker.io-20.10.21/debian/docker.io.templates docker.io-20.10.21/debian/docker.io.templates --- docker.io-20.10.21/debian/docker.io.templates 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/docker.io.templates 1970-01-01 00:00:00.000000000 +0000 @@ -1,14 +0,0 @@ -Template: docker.io/restart -Type: boolean -Default: false -Description: Automatically restart Docker daemon? - If Docker is upgraded without restarting the Docker daemon, Docker will often - have trouble starting new containers, and in some cases even maintaining the - containers it is currently running. See https://launchpad.net/bugs/1658691 for - an example of this breakage. - . - Normally, upgrading the package would simply restart the associated daemon(s). - In the case of the Docker daemon, that would also imply stopping all running - containers (which will only be restarted if they're part of a "service", have - an appropriate restart policy configured, or have some other means of being - restarted such as an external systemd unit). diff -Nru docker.io-20.10.21/debian/rules docker.io-20.10.21/debian/rules --- docker.io-20.10.21/debian/rules 2023-02-15 15:08:59.000000000 +0000 +++ docker.io-20.10.21/debian/rules 2023-07-14 20:01:50.000000000 +0000 @@ -101,28 +101,6 @@ override_dh_auto_install: # we use dh_install / dh-exec for installing files where they need to be -# "--no-start" because we have a debconf prompt to determine whether to restart during upgrades -# (which means we get to handle both "start" and "stop" ourselves too) -override_dh_installinit: - dh_installinit --name=docker --no-start - -override_dh_installsystemd: - # We take care of determining whether the docker.io service should be - # restarted during upgrades or not ourselves, based on the debconf - # choice made by the user during installation. For this reason, we - # invoke dh_installsystemd with "--no-stop-on-upgrade" in order - # to avoid indiscriminately stopping the service during upgrades. - dh_installsystemd --name=docker --no-start -pdocker.io --no-stop-on-upgrade docker.service - dh_installsystemd --name=docker --no-start -pdocker.io --no-stop-on-upgrade docker.socket - -override_dh_installudev: - # use priority z80 to match the upstream priority of 80 - dh_installudev --priority=z80 - -override_dh_install: - dh_install - dh_apparmor --profile-name=docker.io -pdocker.io - override_dh_shlibdeps: dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info diff -Nru docker.io-20.10.21/debian/tests/basic-smoke docker.io-20.10.21/debian/tests/basic-smoke --- docker.io-20.10.21/debian/tests/basic-smoke 2023-02-15 15:08:59.000000000 +0000 +++ docker.io-20.10.21/debian/tests/basic-smoke 1970-01-01 00:00:00.000000000 +0000 @@ -1,20 +0,0 @@ -#!/bin/bash - -. debian/tests/common - -defer 'journalctl -u docker | tail' - -# make sure Docker itself is working before we go too deep down the rabbit hole -docker version - -debootstrap \ - --variant=minbase \ - stable \ - "$tempDir" \ - http://httpredir.debian.org/debian - -tar -cC "$tempDir" . | docker import - debian -defer 'docker rmi debian' - -docker run --name test debian true -defer 'docker rm -f test' diff -Nru docker.io-20.10.21/debian/tests/common docker.io-20.10.21/debian/tests/common --- docker.io-20.10.21/debian/tests/common 2023-01-03 18:47:06.000000000 +0000 +++ docker.io-20.10.21/debian/tests/common 1970-01-01 00:00:00.000000000 +0000 @@ -1,16 +0,0 @@ -set -eux -set -o pipefail - -exitTraps=( 'true' ) -doExit() { - for exitTrap in "${exitTraps[@]}"; do - eval "$exitTrap" || true - done -} -trap 'doExit' EXIT -defer() { - exitTraps=( "$@" "${exitTraps[@]}" ) -} - -tempDir="$(mktemp -d)" -defer "rm -rf '$tempDir'" diff -Nru docker.io-20.10.21/debian/tests/control docker.io-20.10.21/debian/tests/control --- docker.io-20.10.21/debian/tests/control 2023-02-15 15:26:57.000000000 +0000 +++ docker.io-20.10.21/debian/tests/control 1970-01-01 00:00:00.000000000 +0000 @@ -1,11 +0,0 @@ -Tests: basic-smoke -Depends: debian-archive-keyring, debootstrap, @ -Restrictions: allow-stderr isolation-machine needs-root - -Tests: docker-in-lxd -Depends: dctrl-tools, snapd -Restrictions: allow-stderr isolation-machine needs-root - -#Tests: integration -#Depends: ca-certificates, curl, git, golang-check.v1-dev, jq, @, @builddeps@ -#Restrictions: allow-stderr isolation-machine needs-root rw-build-tree diff -Nru docker.io-20.10.21/debian/tests/docker-in-lxd docker.io-20.10.21/debian/tests/docker-in-lxd --- docker.io-20.10.21/debian/tests/docker-in-lxd 2023-02-15 15:26:57.000000000 +0000 +++ docker.io-20.10.21/debian/tests/docker-in-lxd 1970-01-01 00:00:00.000000000 +0000 @@ -1,222 +0,0 @@ -#!/bin/bash - -. debian/tests/common - -arch=$(dpkg --print-architecture) -release=$(lsb_release -rs) -suite=$(lsb_release -cs) - -if [ "$arch" = "i386" -a "$release" \> "19.04" ]; then - exit 0 -fi - -# lxd is not available as a .deb anymore -snap install lxd - -# This stolen from lxd's debconf magic. -random_ipv4() { - while :; do - SUBNET="10.$(shuf -i 1-255 -n 1).$(shuf -i 0-255 -n 1)" - - # Check if well known - if [ "${SUBNET}" = "10.10.10" ]; then - continue - fi - - # Check if used locally - if ip -4 route show | grep -q ${SUBNET}; then - continue - fi - - # Attempt to see if used behind the gateway - if ping -n -q ${SUBNET}.1 -c 1 -W 1 >/dev/null 2>&1; then - continue - fi - - if ping -n -q ${SUBNET}.254 -c 1 -W 1 >/dev/null 2>&1; then - continue - fi - - break - done - - echo ${SUBNET} -} - -# Detect LXD API extensions -lxd_extension() { - lxc info | grep -q "^\- ${1}$" -} - -# Copy the local apt package archive over to the lxd container. -# This function assumes that the container is named "docker". -copy_local_apt_files() { - for local_source in $(apt-get indextargets | grep-dctrl -F URI -e '^file:/' -sURI); do - local_source=${local_source#file:} - local_dir=$(dirname "${local_source}") - lxc exec docker -- mkdir -p "${local_dir}" - tar -cC "${local_dir}" . | lxc exec docker -- tar -xC "${local_dir}" - done -} - -time lxd waitready --timeout 600 - -# Attempt to auto-configure ipv4, but only when really running under -# autopkgtest. -if [ -n "${AUTOPKGTEST_TMP:-}" ]; then - lxd init --auto - if lxd_extension "network"; then - if ! lxc profile device list default | grep -q eth0; then - lxc network create adt-br0 - lxc network attach-profile adt-br0 default eth0 - fi - else - sleep 10 - systemctl stop lxd-bridge - SUBNET=$(random_ipv4) - cat < /etc/default/lxd-bridge -USE_LXD_BRIDGE="true" -LXD_BRIDGE="lxdbr0" -UPDATE_PROFILE="true" -LXD_IPV4_ADDR="${SUBNET}.1" -LXD_IPV4_NETMASK="255.255.255.0" -LXD_IPV4_NETWORK="${SUBNET}.1/24" -LXD_IPV4_DHCP_RANGE="${SUBNET}.2,${SUBNET}.254" -LXD_IPV4_DHCP_MAX="252" -LXD_IPV4_NAT="true" -LXD_IPV6_ADDR="" -LXD_IPV6_MASK="" -LXD_IPV6_NETWORK="" -LXD_IPV6_NAT="false" -LXD_IPV6_PROXY="false" -EOF - systemctl start lxd-bridge - fi -fi - -if [ -n "${http_proxy:-}" ]; then - lxc config set core.proxy_http $http_proxy -fi -if [ -n "${https_proxy:-}" ]; then - lxc config set core.proxy_https $https_proxy -fi -if [ -n "${noproxy:-}" ]; then - lxc config set core.proxy_ignore_hosts $noproxy -fi - -lxc launch ubuntu-daily:${suite}/${arch} docker -c security.nesting=true - -defer 'lxc delete --force docker' - -# autopkgtest will have done some complicated things to ensure that "apt -# install docker.io" installs the version that should be tested in the -# host. But we want to test that version of docker in the container, so -# replace the entire apt configuration of the container with that of the host -# (after waiting for cloud-init to avoid racing with its attempts to rewrite -# the apt config). -lxc exec docker -- cloud-init status --wait -lxc exec docker -- rm -rf /etc/apt -lxc exec docker -- mkdir /etc/apt -tar -cC /etc/apt . | lxc exec docker -- tar -xC /etc/apt - -copy_local_apt_files - -if [ -n "${http_proxy:-}" ]; then - lxc exec docker -- mkdir -p /etc/systemd/system/docker.service.d - cat <