** Description changed: ==== Begin SRU Template ======== [Impact] Curtin installation can be configured to install additional apt repositories and import gpg keys from a remote keyserver by fingerprint. 'gpg --recv' can transiently fail, causing installation failure. The fix is to just retry gpg --keyserver keyserver.ubuntu.com --recv <key> [Test Case] Run curtin vmtest on XenialTestAptSrcDisablePockets ./tools/jenkins-runner tests/vmtests/test_apt_source.py The named test pushes curtin through use of gpg --keyserver. It does not guarantee failure and re-try, but does test the happy path. Even if the gpg server was available on the first time, we at very least then verify that there is no regression. [Regression Potential] Low risk of regression. The code change is just to sleep and retry a command if it failed. + + [Other Info] + When looking further into some failures in add-apt-repository that were + not fixed by re-trying, we found bug 1532855 . It is not explicitly + related to this bug, but is a similar failure path. ==== End SRU Template ======== In some cases we have transient network failure while attempting to recv gpg keys when configuring apt. https://jenkins.ubuntu.com/server/job/curtin- vmtest/737/artifact/output/XenialTestAptSrcDisablePockets/logs/install- serial.log [ 40.161264] cloud-init[1528]: Command: ['gpg', '--keyserver', 'keyserver.ubuntu.com', '--recv', '0E72 9061 0D2F 6DC4 D65E A921 9A31 4EC5 F470 A0AC'] [ 40.162213] cloud-init[1528]: Exit code: 2 [ 40.163711] cloud-init[1528]: Reason: - [ 40.164256] cloud-init[1528]: Stdout: "gpgkeys: key 0E7290610D2F6DC4D65EA9219A314EC5F470A0AC can't be retrieved\n" [ 40.174200] cloud-init[1528]: Stderr: 'gpg: requesting key F470A0AC from hkp server keyserver.ubuntu.com\ngpg: no valid OpenPGP data found.\ngpg: Total number processed: 0\ngpg: keyserver communications error: keyserver helper general error\ngpg: keyserver communications error: unknown pubkey algorithm\ngpg: keyserver receive failed: unknown pubkey algorithm\n' [ 40.180654] cloud-init[1528]: During handling of the above exception, another exception occurred: [ 40.182056] cloud-init[1528]: Traceback (most recent call last): [ 40.183644] cloud-init[1528]: File "/curtin/curtin/gpg.py", line 65, in getkeybyid [ 40.185067] cloud-init[1528]: recv_key(keyid, keyserver=keyserver) [ 40.186653] cloud-init[1528]: File "/curtin/curtin/gpg.py", line 48, in recv_key [ 40.187895] cloud-init[1528]: (key, keyserver, error)) Curtin should retry this command.
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1661337 Title: curtin does not retry when gpg fails to recv key To manage notifications about this bug go to: https://bugs.launchpad.net/curtin/+bug/1661337/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
