Comment 16 for bug 1832757

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

Test 4:
From a fresh trusty instance, which has uat installed (from updates):
a) enable esm (via ubuntu-advantage enable-esm), upgrade to proposed
b) upgrade to proposed, enable esm (via ua attach)

Result: PASS

Details:
In the end, both instances have the same proposed package:
$ lxc exec esm-sru-4a apt-cache policy ubuntu-advantage-tools
ubuntu-advantage-tools:
  Installed: 19.6~ubuntu14.04.3
  Candidate: 19.6~ubuntu14.04.3
  Version table:
 *** 19.6~ubuntu14.04.3 0
        500 http://br.archive.ubuntu.com/ubuntu/ trusty-proposed/main amd64 Packages
        100 /var/lib/dpkg/status
     10ubuntu0.14.04.4 0
        500 http://archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages

And both have ESM enabled. In the (b) case, it's using the new infra pocket names because ESM was enabled with the new client via ua attach:

$ lxc exec esm-sru-4b apt-cache policy |grep esm
 500 https://esm.ubuntu.com/ubuntu/ trusty-infra-updates/main amd64 Packages
     origin esm.ubuntu.com
 500 https://esm.ubuntu.com/ubuntu/ trusty-infra-security/main amd64 Packages
     origin esm.ubuntu.com

Content comparison
- etc directory (/dev/null was used because of the broken absolute symlinks; here is the suppressed output: https://paste.ubuntu.com/p/n98rSKBqvP/):
$ diff -uNr 4a/etc 4b/etc 2>/dev/null
diff -uNr 4a/etc/apt/auth.conf.d/90ubuntu-advantage 4b/etc/apt/auth.conf.d/90ubuntu-advantage
--- 4a/etc/apt/auth.conf.d/90ubuntu-advantage 2019-10-31 15:52:19.613041203 -0300
+++ 4b/etc/apt/auth.conf.d/90ubuntu-advantage 2019-10-31 15:57:10.593242280 -0300
@@ -1 +1 @@
-machine esm.ubuntu.com/ login myuser password mypass
+machine esm.ubuntu.com/ login bearer password longrandompass # ubuntu-advantage-tools

Since (4b) runs ua attach, the credentials are converted to the new bearer format, so the above is expected and correct.

diff -uNr 4a/etc/apt/sources.list.d/ubuntu-esm-infra-trusty.list 4b/etc/apt/sources.list.d/ubuntu-esm-infra-trusty.list
--- 4a/etc/apt/sources.list.d/ubuntu-esm-infra-trusty.list 2019-10-31 15:52:19.629041498 -0300
+++ 4b/etc/apt/sources.list.d/ubuntu-esm-infra-trusty.list 2019-10-31 15:57:10.605241750 -0300
@@ -1,5 +1,4 @@
-deb https://esm.ubuntu.com/ubuntu trusty-security main
-# deb-src https://esm.ubuntu.com/ubuntu trusty-security main
-
-deb https://esm.ubuntu.com/ubuntu trusty-updates main
-# deb-src https://esm.ubuntu.com/ubuntu trusty-updates main
+deb https://esm.ubuntu.com/ubuntu trusty-infra-security main
+# deb-src https://esm.ubuntu.com/ubuntu trusty-infra-security main
+deb https://esm.ubuntu.com/ubuntu trusty-infra-updates main
+# deb-src https://esm.ubuntu.com/ubuntu trusty-infra-updates main

Since (4b) runs attach, the pockets are renamed to the new infra names, so the above is also expected and correct.

- /var:
Also broken symlinks, and:
$ diff -uNr 4a/var 4b/var|diffstat -l
diff: 4a/var/lib/cloud/instance: No such file or directory
diff: 4b/var/lib/cloud/instance: No such file or directory
cache/apt/pkgcache.bin
cache/apt/srcpkgcache.bin
cache/man/index.db
lib/apt/lists/esm.ubuntu.com_ubuntu_dists_trusty-infra-security_InRelease
lib/apt/lists/esm.ubuntu.com_ubuntu_dists_trusty-infra-security_main_binary-amd64_Packages
lib/apt/lists/esm.ubuntu.com_ubuntu_dists_trusty-infra-updates_InRelease
lib/apt/lists/esm.ubuntu.com_ubuntu_dists_trusty-infra-updates_main_binary-amd64_Packages
lib/apt/lists/esm.ubuntu.com_ubuntu_dists_trusty-security_InRelease
lib/apt/lists/esm.ubuntu.com_ubuntu_dists_trusty-security_main_binary-amd64_Packages
lib/apt/lists/esm.ubuntu.com_ubuntu_dists_trusty-updates_InRelease
lib/apt/lists/esm.ubuntu.com_ubuntu_dists_trusty-updates_main_binary-amd64_Packages
lib/cloud/data/status.json
lib/cloud/instances/esm-sru-4a/boot-finished
lib/cloud/instances/esm-sru-4a/user-data.txt.i
lib/cloud/instances/esm-sru-4a/vendor-data.txt.i
lib/dhcp/dhclient.eth0.leases
lib/ubuntu-advantage/private/machine-access-cc-eal.json
lib/ubuntu-advantage/private/machine-access-esm-infra.json
lib/ubuntu-advantage/private/machine-access-fips-updates.json
lib/ubuntu-advantage/private/machine-access-fips.json
lib/ubuntu-advantage/private/machine-access-livepatch.json
lib/ubuntu-advantage/private/machine-access-support.json
lib/ubuntu-advantage/private/machine-token.json
lib/ubuntu-advantage/status.json
lib/urandom/random-seed
log/apt/history.log
log/apt/term.log
log/cloud-init-output.log
log/cloud-init.log
log/dmesg
log/dmesg.0
log/dmesg.1.gz
log/dpkg.log
log/kern.log
log/syslog
log/ubuntu-advantage.log
log/upstart/acpid.log
log/upstart/apport.log
log/upstart/console-setup.log
log/upstart/cryptdisks.log
log/upstart/hwclock.log
log/upstart/kmod.log
log/upstart/mountall.log
log/upstart/mounted-debugfs.log
log/upstart/mounted-dev.log
log/upstart/mounted-proc.log
log/upstart/procps-static-network-up.log
log/upstart/procps-virtual-filesystems.log
log/upstart/setvtrgb.log
log/upstart/systemd-logind.log
log/upstart/ttyS0.log
log/wtmp

The /var/lib/ubuntu-advantage files are new in (4b), because that's where we ran ua attach:
$ diff -uNr 4{a,b}/var/lib/ubuntu-advantage|diffstat
 private/machine-access-cc-eal.json | 1 +
 private/machine-access-esm-infra.json | 1 +
 private/machine-access-fips-updates.json | 1 +
 private/machine-access-fips.json | 1 +
 private/machine-access-livepatch.json | 1 +
 private/machine-access-support.json | 1 +
 private/machine-token.json | 1 +
 status.json | 1 +
 8 files changed, 8 insertions(+)