Build failures for unchanged snap repeatable recently

OpenRA snap build on build.snapcraft.io has recently started failing. This is due to using apt-key with gpg subprocess reporting:

Executing: /tmp/apt-key-gpghome.PJehYiSdjK/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
gpg: failed to start the dirmngr '/usr/bin/dirmngr': No such file or directory
gpg: connecting dirmngr at '/tmp/apt-key-gpghome.PJehYiSdjK/S.dirmngr' failed: No such file or directory
gpg: keyserver receive failed: No dirmngr
Failed to run 'override-pull': Exit code was 2.

Full log output is at https://launchpadlibrarian.net/431233048/buildlog_snap_ubuntu_bionic_amd64_c4e63df6df952320a6d053a72b95a592_BUILDING.txt.gz

I’m assuming the build image has recently been updated and something that apt-key requires is not present on the newer image?

did you try adding the dirmngr deb to your stage-packages for the part enabling the ppa ?

Sounds more like a needed build-packages than a stage-packages because it’s failing to run when building.

2 Likes

oops, indeed, sorry …

1 Like

No, I’ve not made any changes yet, because the error is new with an unchanged build definition indicating that the build service has changed. I wanted to be sure that this was expected and that it is not a failure of the build service but I should have known ahead of time that things were going to suddenly change without input…

btw, that was tongue-in-cheek when I typed my previous message :wink: I really just wanted to be sure that if the build service had regressed that I made people aware rather than papering over the cracks with adding dirmgr to build-packages without telling anyone.

2 Likes

AFAIK, the launchpad builders essentially run snapcraft in a particular type of --destructive-mode within a particular LXD or VM that is launched/managed by launchpad-buildd, so I do think that launchpad builds are exposed to this type of problem where the underlying image could change and break builds.

I anyone is aware of any change, it would be @cjwatson

But the build definition wasn’t unchanged. As far as I can see, the most recent build that worked (on amd64, at any rate) was before you added a mono part that calls apt-key, which is exactly the build step that is now failing. There’s no regression of the build service involved here, and the base image that Launchpad uses for bionic (which would be the relevant artifact in this case) hasn’t changed in some time.

Looking at the apt package’s Suggests metadata, you probably want to add build-packages: gnupg.

1 Like

that shows how good my memory is :-p I completely missed that the mono part was the precipitating change. Thanks, @cjwatson. /me goes back to brainfarting