[regression] build phase tries to update the apt cache even when not needed
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Snapcraft |
Fix Released
|
High
|
Sergio Schvezov |
Bug Description
(originally reported at https:/
The chromium snap fails to build with snapcraft 4.0.4 on the Launchpad builders. This is a regression, it built fine with snapcraft 3.11.
This is because Launchpad sets up a proxy to allow the build to access the internet for a limited amount of time, and chromium takes a very long time to build (typically 8+ hours on amd64, and much longer on other architectures).
chromium’s snapcraft.yaml¹ uses part ordering (the after keyword) to make sure that all the parts that need to fetch data/packages from the internet do so before actually building chromium. Not all the parts are specified in this ordering because not all of them actually stage packages or pull any source from the internet.
But it appears that even for those parts that don’t stage packages or pull anything, the new major version of snapcraft now runs apt-get update regardless, thus failing if the part is built after building chromium, because the proxy has been revoked. See the attached failed build log for details.
Here are the last few relevant lines:
Staging chromium
Pulling shared-mime-info
Pulling tests
Pulling xdg-email
Running build phase...
[12/Jun/
Err:1 http://
407 Proxy Authentication Required [IP: 10.10.10.1 8222]
[12/Jun/
Err:2 http://
407 Proxy Authentication Required [IP: 10.10.10.1 8222]
[12/Jun/
Err:3 http://
407 Proxy Authentication Required [IP: 10.10.10.1 8222]
Reading package lists...
EFailed to update the package cache: Some files could not be downloaded:
failed to run apt update
Changed in snapcraft: | |
status: | In Progress → Fix Committed |
assignee: | nobody → Sergio Schvezov (sergiusens) |
importance: | Undecided → High |
Changed in snapcraft: | |
status: | Fix Committed → Fix Released |
Can you confirm that the build still works using Snapcraft from latest/stable/3.11 ?