Xenial and Bionic SRU verification tests succeed
--- BEGIN xenial update-notifier testing --- Launch cloud-init with ppa:ua-client/proposed enabled Creating test-sru-xenial Starting test-sru-xenial --- Wait for cloud-init to finish ........................................................................ status: done time: Mon, 04 Jan 2021 18:18:43 +0000 detail: DataSourceNoCloud [seed=/var/lib/cloud/seed/nocloud-net][dsmode=net] --- Attach Ubuntu-Advantage, enabling services Enabling default service esm-infra Updating package lists ESM Infra enabled This machine is now attached to 'chad.sm...@canonical.com' SERVICE ENTITLED STATUS DESCRIPTION esm-infra yes enabled UA Infra: Extended Security Maintenance (ESM) livepatch yes n/a Canonical Livepatch service Enable services with: ua enable <service> Account: chad.sm...@canonical.com Subscription: chad.sm...@canonical.com -- Downgrading package to stable ubuntu release libkrad0=1.13.2+dfsg-5 Reading package lists... Building dependency tree... Reading state information... The following package was automatically installed and is no longer required: libfreetype6 Use 'apt autoremove' to remove it. The following additional packages will be installed: libverto-libevent1 libverto1 The following NEW packages will be installed: libkrad0 libverto-libevent1 libverto1 0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded. Need to get 36.1 kB of archives. After this operation, 207 kB of additional disk space will be used. Get:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 libverto-libevent1 amd64 0.2.4-2.1ubuntu2 [5742 B] Get:2 http://archive.ubuntu.com/ubuntu xenial/main amd64 libverto1 amd64 0.2.4-2.1ubuntu2 [9132 B] Get:3 http://archive.ubuntu.com/ubuntu xenial/main amd64 libkrad0 amd64 1.13.2+dfsg-5 [21.3 kB] Fetched 36.1 kB in 0s (50.5 kB/s) Selecting previously unselected package libverto-libevent1:amd64. (Reading database ... 25866 files and directories currently installed.) Preparing to unpack .../libverto-libevent1_0.2.4-2.1ubuntu2_amd64.deb ... Unpacking libverto-libevent1:amd64 (0.2.4-2.1ubuntu2) ... Selecting previously unselected package libverto1:amd64. Preparing to unpack .../libverto1_0.2.4-2.1ubuntu2_amd64.deb ... Unpacking libverto1:amd64 (0.2.4-2.1ubuntu2) ... Selecting previously unselected package libkrad0:amd64. Preparing to unpack .../libkrad0_1.13.2+dfsg-5_amd64.deb ... Unpacking libkrad0:amd64 (1.13.2+dfsg-5) ... Processing triggers for libc-bin (2.23-0ubuntu11.2) ... Setting up libverto-libevent1:amd64 (0.2.4-2.1ubuntu2) ... Setting up libverto1:amd64 (0.2.4-2.1ubuntu2) ... Setting up libkrad0:amd64 (1.13.2+dfsg-5) ... Processing triggers for libc-bin (2.23-0ubuntu11.2) ... update-notifier Hit:1 http://archive.ubuntu.com/ubuntu xenial InRelease Hit:2 http://ppa.launchpad.net/ua-client/staging/ubuntu xenial InRelease Hit:3 http://archive.ubuntu.com/ubuntu xenial-backports InRelease Get:4 https://esm.ubuntu.com/infra/ubuntu xenial-infra-security InRelease [7458 B] Get:5 https://esm.ubuntu.com/infra/ubuntu xenial-infra-updates InRelease [7457 B] Fetched 14.9 kB in 0s (20.2 kB/s) Reading package lists... Done 2 packages can be updated. 0 updates are security updates. SUCCESS: did not find UA Infra: Extended Security Maintenance (ESM) is enabled SUCCESS: found 0 updates are security updates security updates pre-upgrade --- Upgrade update-notifier from -proposed update-notifier-common Get:1 http://archive.ubuntu.com/ubuntu xenial-proposed/main amd64 update-notifier-common all 3.168.13 [133 kB] dpkg-preconfigure: unable to re-open stdin: No such file or directory Preparing to unpack .../update-notifier-common_3.168.13_all.deb ... Unpacking update-notifier-common (3.168.13) over (3.168.10) ... Setting up update-notifier-common (3.168.13) ... update-notifier SUCCESS: found UA Infra: Extended Security Maintenance (ESM) is enabled --- Expect non-zero upgradable packages for MOTD from apt_check AFTER upgrade UA Infra: Extended Security Maintenance (ESM) is enabled. 6 packages can be updated. 1 of these updates is fixed through UA Infra: ESM. 1 of these updates is a security update. To see these additional updates run: apt list --upgradable 1 of these updates is a security update. SUCCESS: found 1 ESM security updates post-upgrade --- BEGIN bionic update-notifier testing --- Launch cloud-init with ppa:ua-client/proposed enabled Creating test-sru-bionic Starting test-sru-bionic --- Wait for cloud-init to finish ........................................................................................................... status: done time: Mon, 04 Jan 2021 18:19:42 +0000 detail: DataSourceNoCloud [seed=/var/lib/cloud/seed/nocloud-net][dsmode=net] --- Attach Ubuntu-Advantage, enabling services Enabling default service esm-infra Updating package lists ESM Infra enabled A reboot is required to complete install This machine is now attached to 'chad.sm...@canonical.com' SERVICE ENTITLED STATUS DESCRIPTION esm-infra yes enabled UA Infra: Extended Security Maintenance (ESM) livepatch yes n/a Canonical Livepatch service Enable services with: ua enable <service> Account: chad.sm...@canonical.com Subscription: chad.sm...@canonical.com -- Downgrading package to stable ubuntu release libkrad0=1.16-2build1 Reading package lists... Building dependency tree... Reading state information... The following package was automatically installed and is no longer required: libfreetype6 Use 'apt autoremove' to remove it. The following additional packages will be installed: libverto-libevent1 libverto1 The following NEW packages will be installed: libkrad0 libverto-libevent1 libverto1 0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded. Need to get 36.3 kB of archives. After this operation, 214 kB of additional disk space will be used. Get:1 http://archive.ubuntu.com/ubuntu bionic/main amd64 libverto-libevent1 amd64 0.2.4-2.1ubuntu3 [5796 B] Get:2 http://archive.ubuntu.com/ubuntu bionic/main amd64 libverto1 amd64 0.2.4-2.1ubuntu3 [9090 B] Get:3 http://archive.ubuntu.com/ubuntu bionic/main amd64 libkrad0 amd64 1.16-2build1 [21.4 kB] Fetched 36.3 kB in 1s (46.2 kB/s) Selecting previously unselected package libverto-libevent1:amd64. (Reading database ... 28800 files and directories currently installed.) Preparing to unpack .../libverto-libevent1_0.2.4-2.1ubuntu3_amd64.deb ... Unpacking libverto-libevent1:amd64 (0.2.4-2.1ubuntu3) ... Selecting previously unselected package libverto1:amd64. Preparing to unpack .../libverto1_0.2.4-2.1ubuntu3_amd64.deb ... Unpacking libverto1:amd64 (0.2.4-2.1ubuntu3) ... Selecting previously unselected package libkrad0:amd64. Preparing to unpack .../libkrad0_1.16-2build1_amd64.deb ... Unpacking libkrad0:amd64 (1.16-2build1) ... Setting up libverto-libevent1:amd64 (0.2.4-2.1ubuntu3) ... Setting up libverto1:amd64 (0.2.4-2.1ubuntu3) ... Setting up libkrad0:amd64 (1.16-2build1) ... Processing triggers for libc-bin (2.27-3ubuntu1.4) ... update-notifier 1 package can be updated. 1 update is a security update. SUCCESS: did not find UA Infra: Extended Security Maintenance (ESM) is enabled SUCCESS: found 1 update is a security update security updates pre-upgrade --- Upgrade update-notifier from -proposed update-notifier-common Get:1 http://archive.ubuntu.com/ubuntu bionic-proposed/main amd64 update-notifier-common all 3.192.1.9 [132 kB] dpkg-preconfigure: unable to re-open stdin: No such file or directory Preparing to unpack .../update-notifier-common_3.192.1.9_all.deb ... Unpacking update-notifier-common (3.192.1.9) over (3.192.1.7) ... Setting up update-notifier-common (3.192.1.9) ... update-notifier SUCCESS: found UA Infra: Extended Security Maintenance (ESM) is enabled --- Expect non-zero upgradable packages for MOTD from apt_check AFTER upgrade UA Infra: Extended Security Maintenance (ESM) is enabled. 15 packages can be updated. 1 of these updates is a security update. To see these additional updates run: apt list --upgradable 1 of these updates is a security update. SUCCESS: found 1 ESM security updates post-upgrade ** Description changed: [Impact] Changes to wording regarding the ESM support available for Trusty. Additionally, reorder command output after UX review. [Test Case] test_motd.py has unit tests for all of the combinations of upgrade types possible. It's also possible to run "/usr/lib/update-notifier/apt-check --human-readable" on a system with ESM configured (enabled or disabled). #!/bin/bash - - #!/bin/bash # # SRU Verification update-notifier + ubuntu=advantage-tools # Test procedure: # - launch container Trusty, Xenial or Bionic # - Install ubuntu-advantage-tools from https://launchpad.net/~ua-client/+archive/ubuntu/proposed which supports esm on trusty, xenial, bionic, and focal # - Attach container to UA subscription (which activates the ESM APT repos # - run apt_check --human-readable to assert ESM pkg counts ARE NOT reported # - Upgrade update-notifier to -proposed # - re-run apt_check --human-readable to assert ESM pkg counts ARE reported set -e UA_TOKEN=$1 if [ -z "$1" ]; then - echo "Usage: $0 <contractTOKEN>" - exit 1 + echo "Usage: $0 <contractTOKEN>" + exit 1 fi cat > test-un.yaml <<EOF #cloud-config ssh_import_id: [chad.smith] package_update: true package_upgrade: true apt: - sources: - ua.proposed: - source: deb http://ppa.launchpad.net/ua-client/staging/ubuntu \$RELEASE main - keyid: 6E34E7116C0BC933 + sources: + ua.proposed: + source: deb http://ppa.launchpad.net/ua-client/staging/ubuntu \$RELEASE main + keyid: 6E34E7116C0BC933 EOF cat > setup_proposed.sh <<EOF #/bin/bash mirror=http://archive.ubuntu.com/ubuntu echo deb \$mirror \$(lsb_release -sc)-proposed main | tee /etc/apt/sources.list.d/proposed.list apt-get update -q apt-get install -qy update-notifier-common EOF wait_for_boot() { - local vm=$1 release=$2 - echo "--- Wait for cloud-init to finish" - sleep 5 - lxc exec ${vm} -- cloud-init status --wait --long + local vm=$1 release=$2 + echo "--- Wait for cloud-init to finish" + sleep 5 + lxc exec ${vm} -- cloud-init status --wait --long } for release in xenial bionic; do - echo "--- BEGIN $release update-notifier testing" - vm=test-sru-$release - echo "--- Launch cloud-init with ppa:ua-client/proposed enabled" - lxc launch ubuntu-daily:${release} ${vm} -c user.user-data="$(cat test-un.yaml)" - wait_for_boot ${vm} ${release} - echo "--- Attach Ubuntu-Advantage, enabling services" - lxc exec ${vm} -- ua attach ${UA_TOKEN} - case "$release" in - xenial) - UPGRADE_MATCH="0 updates are security updates"; - downrev_pkg="libkrad0=1.13.2+dfsg-5";; - bionic) - UPGRADE_MATCH="1 update is a security update" - downrev_pkg="libkrad0=1.16-2build1";; - focal) - UPGRADE_MATCH="0 updates are security updates" - downrev_pkg="hello=2.10-2ubuntu2";; - groovy) - UPGRADE_MATCH="1 of these updates is a security update" - downrev_pkg="apport-retrace=2.20.11-0ubuntu50";; - esac - echo "-- Downgrading package to stable ubuntu release $downrev_pkg" - lxc exec ${vm} -- apt-get install $downrev_pkg --yes -q - lxc exec ${vm} -- dpkg-query --show update-notifier - if [ "$release" = "xenial" ]; then - # Xenial-updates have already included esm package updates. - # Drop the xenial-updates apt source so we can be sure we are seeing only - # available esm updates - lxc exec ${vm} -- sed -e "/xenial-updates/ s/^#*/#/" -i /etc/apt/sources.list - lxc exec ${vm} -- sed -e "/xenial-security/ s/^#*/#/" -i /etc/apt/sources.list - lxc exec ${vm} -- apt-get update - fi - MOTD=`lxc exec ${vm} -- /usr/lib/update-notifier/apt-check --human-readable` - echo ${MOTD} - POST_UPGRADE_MSG="UA Infra: Extended Security Maintenance (ESM) is enabled" - echo $MOTD | grep -q "${POST_UPGRADE_MSG}" && echo "FAILURE: found ${POST_UPGRADE_MSG}" || echo "SUCCESS: did not find ${POST_UPGRADE_MSG=}" - echo $MOTD | grep -q "${UPGRADE_MATCH}" && echo "SUCCESS: found ${UPGRADE_MATCH} security updates pre-upgrade" || echo "FAILURE: did not find expected ${UPGRADE_MATCH} ESM security updates" - echo "--- Upgrade update-notifier from -proposed" - lxc file push setup_proposed.sh ${vm}/ - lxc exec ${vm} -- bash /setup_proposed.sh | grep update-notifier - lxc exec ${vm} -- dpkg-query --show update-notifier - MOTD=`lxc exec ${vm} -- /usr/lib/update-notifier/apt-check --human-readable` - echo $MOTD | grep -q "${POST_UPGRADE_MSG}" && echo "SUCCESS: found ${POST_UPGRADE_MSG}" || echo "FAILURE: did not find ${POST_UPGRADE_MSG=}" - echo "--- Expect non-zero upgradable packages for MOTD from apt_check AFTER upgrade" - lxc exec ${vm} -- /usr/lib/update-notifier/apt-check --human-readable - lxc exec ${vm} -- /usr/lib/update-notifier/apt-check --human-readable | grep '1 of these updates is a security update' && echo "SUCCESS: found 1 ESM security updates pre-upgrade" || echo "FAILURE: did not find expected 1 ESM security updates" + echo "--- BEGIN $release update-notifier testing" + vm=test-sru-$release + echo "--- Launch cloud-init with ppa:ua-client/proposed enabled" + lxc launch ubuntu-daily:${release} ${vm} -c user.user-data="$(cat test-un.yaml)" + wait_for_boot ${vm} ${release} + echo "--- Attach Ubuntu-Advantage, enabling services" + lxc exec ${vm} -- ua attach ${UA_TOKEN} + case "$release" in + xenial) + UPGRADE_MATCH="0 updates are security updates"; + downrev_pkg="libkrad0=1.13.2+dfsg-5";; + bionic) + UPGRADE_MATCH="1 update is a security update" + downrev_pkg="libkrad0=1.16-2build1";; + focal) + UPGRADE_MATCH="0 updates are security updates" + downrev_pkg="hello=2.10-2ubuntu2";; + groovy) + UPGRADE_MATCH="1 of these updates is a security update" + downrev_pkg="apport-retrace=2.20.11-0ubuntu50";; + esac + echo "-- Downgrading package to stable ubuntu release $downrev_pkg" + lxc exec ${vm} -- apt-get install $downrev_pkg --yes -q + lxc exec ${vm} -- dpkg-query --show update-notifier + if [ "$release" = "xenial" ]; then + # Xenial-updates have already included esm package updates. + # Drop the xenial-updates apt source so we can be sure we are seeing only + # available esm updates + lxc exec ${vm} -- sed -e "/xenial-updates/ s/^#*/#/" -i /etc/apt/sources.list + lxc exec ${vm} -- sed -e "/xenial-security/ s/^#*/#/" -i /etc/apt/sources.list + lxc exec ${vm} -- apt-get update + fi + MOTD=`lxc exec ${vm} -- /usr/lib/update-notifier/apt-check --human-readable` + echo ${MOTD} + POST_UPGRADE_MSG="UA Infra: Extended Security Maintenance (ESM) is enabled" + echo $MOTD | grep -q "${POST_UPGRADE_MSG}" && echo "FAILURE: found ${POST_UPGRADE_MSG}" || echo "SUCCESS: did not find ${POST_UPGRADE_MSG=}" + echo $MOTD | grep -q "${UPGRADE_MATCH}" && echo "SUCCESS: found ${UPGRADE_MATCH} security updates pre-upgrade" || echo "FAILURE: did not find expected ${UPGRADE_MATCH} ESM security updates" + echo "--- Upgrade update-notifier from -proposed" + lxc file push setup_proposed.sh ${vm}/ + lxc exec ${vm} -- bash /setup_proposed.sh | grep update-notifier + lxc exec ${vm} -- dpkg-query --show update-notifier + MOTD=`lxc exec ${vm} -- /usr/lib/update-notifier/apt-check --human-readable` + echo $MOTD | grep -q "${POST_UPGRADE_MSG}" && echo "SUCCESS: found ${POST_UPGRADE_MSG}" || echo "FAILURE: did not find ${POST_UPGRADE_MSG=}" + echo "--- Expect non-zero upgradable packages for MOTD from apt_check AFTER upgrade" + lxc exec ${vm} -- /usr/lib/update-notifier/apt-check --human-readable + lxc exec ${vm} -- /usr/lib/update-notifier/apt-check --human-readable | grep '1 of these updates is a security update' && echo "SUCCESS: found 1 ESM security updates post-upgrade" || echo "FAILURE: did not find expected 1 ESM security updates post-upgrade" done - [Regression Potential] Only strings are changing in this update and this could be considered a follow up SRU to bug 1822340 which created no issues. [Notice] This is only being SRU'ed to Ubuntu 14.04 (as with the previous SRU) as Ubuntu 16.04 and Ubuntu 18.04 will have some additional changes. ** Tags removed: verification-needed verification-needed-bionic verification-needed-xenial ** Tags added: verification-done verification-done-bionic verification-done-xenial -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1842508 Title: motd messaging changes regarding apt updates To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/update-notifier/+bug/1842508/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs