python plugin doesn't support base "core20"

Bug #1874920 reported by Vladislav Yarmak
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Snapcraft
Invalid
Undecided
Unassigned

Bug Description

I'm trying to build snap based on fresh Ubuntu 20.04 LTS. On my machine snapcraft build fails with weird reasons:

user@hp:~/src/udp-over-tls-pool> snapcraft
Launching a VM.
Project base changed from None to 'core20', cleaning build instance.
delete failed: The following errors occurred:
instance "snapcraft-udp-over-tls-pool" does not exist
An error occurred with the instance when trying to delete with 'multipass': returned exit code 2.
Ensure that 'multipass' is setup correctly and try again.
user@hp:~/src/udp-over-tls-pool> snapcraft
Launching a VM.
launch failed: Unable to find an image matching "core20"
An error occurred with the instance when trying to launch with 'multipass': returned exit code 2.
Ensure that 'multipass' is setup correctly and try again.

These two errors alternate each other: for example, odd run of snapcraft ends up with missing core20 image error, even runs of snapcraft ends up with instance "snapcraft-udp-over-tls-pool" does not exist

Cloud build of same snapcraft.yml ends with:

Running pull phase...
The plugin used by part 'udp-over-tls-pool' does not support snaps using base 'core20'.
Build failed

It seems new Ubuntu was released, but there are still no usable base images for core20 and no support from plugins.

Additional info: application source is located here: https://github.com/Snawoot/udp-over-tls-pool

snapcraft.yaml is attached to this report.

Revision history for this message
Vladislav Yarmak (snawoot) wrote :
Revision history for this message
Sergio Schvezov (sergiusens) wrote :

You need snapcraft 4.0, currently on candidate, read more about it on https://forum.snapcraft.io/t/call-for-testing-snapcraft-4-0/16956/10 and please take a look at the release notes as there are changes to consider when using core20.

Changed in snapcraft:
status: New → Invalid
Revision history for this message
Vladislav Yarmak (snawoot) wrote :

snapcraft 4.0.4 is now released on stable channel, but it is still not usable for building python applications.

i386 build fails with mysterious reason:

...
Processing triggers for libc-bin (2.31-0ubuntu9) ...
linux32: failed to execute snap: No such file or directory
Install failed

Other architectures are building snap (I had to add `wheel` dependency, otherwise it failed to build), but failing to upload snap. I get email it was automatically rejected for a reason: "package contains external symlinks: bin/python lint-snap-v2_external_symlinks "

My snap spec is pretty simple: https://github.com/Snawoot/postfix-mta-sts-resolver/blob/89d827f9cc282de98ab4812c6657365dbc4917ad/snapcraft.yaml

But at this moment snapcraft appears pretty useless for shipping python apps.

Revision history for this message
Sergio Schvezov (sergiusens) wrote :

There is no support for i386 when using core20 as there is no i386 base.

Revision history for this message
Vladislav Yarmak (snawoot) wrote :

Thank you!

I understand Ubuntu 20.04 is not built anymore for i386. But other other distros do still support i386 (like Debian, openSUSE and many other distros). So it turns out, no one can use snaps as universal packages then. Using core18 base image and building own Python on top of it can't be considered seriously as an option: why do we need snaps then in first place?

Also I guess these two other issues ("package contains external symlinks: bin/python lint-snap-v2_external_symlinks " and implicit dependency from "wheel" python package) are definitely not normal behaviour. Would you like me to provide some additional information on these?

Revision history for this message
Sergio Schvezov (sergiusens) wrote :

As for the linting issues, those should be solved, I will check with the owner of that component.

Can you expand on "implicit dependency from wheel"?

Revision history for this message
Vladislav Yarmak (snawoot) wrote :
Revision history for this message
Vladislav Yarmak (snawoot) wrote :

BTW, I've just rolled back snap spec in master to "core18" base image to the state when it was building successfully. I'm still getting this "built, failed to release" error for all architectures. Most likely due to "package contains external symlinks: bin/python lint-snap-v2_external_symlinks" error. It's very likely all python builds are now broken in snapcraft 4.0.4.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.