← Back to issue list

Unable to build Python snaps using classic confinement with core24 using snapcraft 8.8.0 (8.x/stable)

View original Github issue

Metadata

Project
snapcraft
Number
#5407
Type
issue
State
closed
Author
Vultaire
Labels
Status: Triaged Type: Question
Created
Updated
Closed

Current evaluation

Resolved as a configuration issue. Classic Python snaps on core24 require explicitly adding python3.12-minimal to stage-packages and adjusting the app command. The developer acknowledged documentation gaps and announced upcoming Python plugin improvements.

Suggested action:

No scores available.

Issue body

### Bug Description I am finding myself unable to build working Python snaps using classic confinement with snapcraft 8.8.0 (8.x/stable) and the core24 base. To eliminate sources of error, I created a short, self-contained complete example (SSCCE), and have uploaded that to a GitHub repo. It should be reproducible on Ubuntu Noble using the 8.x/stable snapcraft snap. Using that SSCCE, if I run ```snapcraft```, it fails on the build step complaining about not being able to find a suitable Python interpreter: ``` paul-goins@pdg-thinkpad:~/meh/python_snap_build_errors_sscce$ snapcraft Pulling sscce :: Downloading package: python3-setuptools-whl/snap/snapcraft/14167/lib/python3.12/site-packages/apt/package.py:810: Warning: W:Download is performed unsandboxed as root as file '/root/.cache/snapcraft/download/python3-setuptools-whl_68.1.2-2ubuntu1.1_all.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) acq.run() Failed to run the build script for part 'sscce'. Detailed information: :: + '[' -z '' ']' :: + echo 'No suitable Python interpreter found, giving up.' :: No suitable Python interpreter found, giving up. :: + exit 1 Recommended resolution: Check the build output and verify the project can work with the 'python' plugin. For more information, check out: https://canonical-snapcraft.readthedocs-hosted.com/en/8.8.0/reference/plugins.html Failed to execute snapcraft in instance. Full execution log: '/home/paul-goins/.local/state/snapcraft/log/snapcraft-20250415-140655.852577.log' ``` This occurs whether I stage python3-venv (per Snapcraft documentation) or python3-minimal. ### To Reproduce I've prepared an SSCCE at: https://github.com/Vultaire/python_snap_build_errors_sscce To reproduce this bug, perform the following: ```bash git clone https://github.com/Vultaire/python_snap_build_errors_sscce cd python_snap_build_errors_sscce git checkout classic-confinement-build snapcraft ``` ### Environment Host system: Ubuntu 24.04 noble Snap info: snapcraft on channel 8.x/stable, currently version 8.8.0, revision 14167. ### snapcraft.yaml ```yaml name: sscce summary: A short, self-contained complete example of a Python snap build description: | sscce is a short, self-contained complete example of a Python snap build. version: test base: core24 confinement: classic parts: sscce: plugin: python source: . stage-packages: - python3-venv apps: sscce: command: bin/sscce plugs: [] ``` ### Relevant log output ```shell Terminal output: ====================================================================== paul-goins@pdg-thinkpad:~/meh/python_snap_build_errors_sscce$ snapcraft --verbose Starting snapcraft, version 8.8.0 Logging execution to '/home/paul-goins/.local/state/snapcraft/log/snapcraft-20250415-140207.652916.log' Launching managed ubuntu 24.04 instance... Creating instance from base instance Starting instance Starting snapcraft, version 8.8.0 Logging execution to '/tmp/snapcraft.log' Initialising lifecycle Installing build-packages Installing build-snaps Pulling sscce Fetching stage-packages Downloading package: python3-setuptools-whl/snap/snapcraft/14167/lib/python3.12/site-packages/apt/package.py:810: Warning: W:Download is performed unsandboxed as root as file '/root/.cache/snapcraft/download/python3-setuptools-whl_68.1.2-2ubuntu1.1_all.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) acq.run() Downloading package: python3-venv Downloading package: python3-pip-whl Downloading package: python3.12-venv Extracting stage package: python3-setuptools-whl Extracting stage package: python3-venv Extracting stage package: python3-pip-whl Extracting stage package: python3.12-venv Building sscce :: + python3 -m venv /root/parts/sscce/install :: + PARTS_PYTHON_VENV_INTERP_PATH=/root/parts/sscce/install/bin/python3 :: + /root/parts/sscce/install/bin/pip install -U pip setuptools wheel :: Requirement already satisfied: pip in /root/parts/sscce/install/lib/python3.12/site-packages (24.0) :: Collecting pip :: Downloading pip-25.0.1-py3-none-any.whl.metadata (3.7 kB) :: Collecting setuptools :: Downloading setuptools-78.1.0-py3-none-any.whl.metadata (6.6 kB) :: Collecting wheel :: Downloading wheel-0.45.1-py3-none-any.whl.metadata (2.3 kB) :: Downloading pip-25.0.1-py3-none-any.whl (1.8 MB) :: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 50.7 MB/s eta 0:00:00 :: Downloading setuptools-78.1.0-py3-none-any.whl (1.3 MB) :: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.3/1.3 MB 50.1 MB/s eta 0:00:00 :: Downloading wheel-0.45.1-py3-none-any.whl (72 kB) :: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 72.5/72.5 kB 5.5 MB/s eta 0:00:00 :: Installing collected packages: wheel, setuptools, pip :: Attempting uninstall: pip :: Found existing installation: pip 24.0 :: Uninstalling pip-24.0: :: Successfully uninstalled pip-24.0 :: Successfully installed pip-25.0.1 setuptools-78.1.0 wheel-0.45.1 :: + '[' -f setup.py ']' :: + '[' -f pyproject.toml ']' :: + /root/parts/sscce/install/bin/pip install -U . :: Processing /root/parts/sscce/build :: Installing build dependencies: started :: Installing build dependencies: finished with status 'done' :: Getting requirements to build wheel: started :: Getting requirements to build wheel: finished with status 'done' :: Preparing metadata (pyproject.toml): started :: Preparing metadata (pyproject.toml): finished with status 'done' :: Building wheels for collected packages: sscce :: Building wheel for sscce (pyproject.toml): started :: Building wheel for sscce (pyproject.toml): finished with status 'done' :: Created wheel for sscce: filename=sscce-0.1.dev1-py3-none-any.whl size=1416 sha256=e444e5528001b389903d251dc03896a5fae6a98a1a5b045a78be8dbcb41abaeb :: Stored in directory: /tmp/pip-ephem-wheel-cache-xp9xrk7k/wheels/df/e4/d1/957c6de665050650792ec2668b4f7128c7ba0596475cb9a687 :: Successfully built sscce :: Installing collected packages: sscce :: Successfully installed sscce-0.1.dev1 :: + find /root/parts/sscce/install -type f -executable -print0 :: + xargs --no-run-if-empty -0 sed -i '1 s|^#\!/root/parts/sscce/install/bin/python3.*$|#!/usr/bin/env python3|' :: ++ set +o :: ++ grep errexit :: + opts_state='set +o errexit' :: + set +e :: + install_dir=/root/parts/sscce/install/usr/bin :: + stage_dir=/root/stage/usr/bin :: +++ readlink -f /root/parts/sscce/install/bin/python3 :: ++ basename /usr/bin/python3.12 :: + basename=python3.12 :: + echo Looking for a Python interpreter called '"python3.12"' in the payload... :: Looking for a Python interpreter called "python3.12" in the payload... :: ++ find /root/parts/sscce/install/usr/bin /root/stage/usr/bin -type f -executable -name python3.12 -print -quit :: ++ true :: + payload_python= :: + '[' -n '' ']' :: + echo 'Python interpreter not found in payload.' :: Python interpreter not found in payload. :: + symlink_target= :: + '[' -z '' ']' :: + echo 'No suitable Python interpreter found, giving up.' :: No suitable Python interpreter found, giving up. :: + exit 1 Failed to run the build script for part 'sscce'. Detailed information: :: + '[' -z '' ']' :: + echo 'No suitable Python interpreter found, giving up.' :: No suitable Python interpreter found, giving up. :: + exit 1 Recommended resolution: Check the build output and verify the project can work with the 'python' plugin. For more information, check out: https://canonical-snapcraft.readthedocs-hosted.com/en/8.8.0/reference/plugins.html Failed to execute snapcraft in instance. Full execution log: '/home/paul-goins/.local/state/snapcraft/log/snapcraft-20250415-140207.652916.log' ====================================================================== Content of /home/paul-goins/.local/state/snapcraft/log/snapcraft-20250415-140207.652916.log: ====================================================================== 2025-04-15 14:02:07.653 Starting snapcraft, version 8.8.0 2025-04-15 14:02:07.653 Log verbosity level set to BRIEF 2025-04-15 14:02:07.657 Preparing application... 2025-04-15 14:02:07.657 Merging commands for group 'Lifecycle': 2025-04-15 14:02:07.657 - using application command for 'clean'. 2025-04-15 14:02:07.657 - using application command for 'pull'. 2025-04-15 14:02:07.657 - using application command for 'build'. 2025-04-15 14:02:07.657 - using application command for 'stage'. 2025-04-15 14:02:07.657 - using application command for 'prime'. 2025-04-15 14:02:07.657 - using application command for 'pack'. 2025-04-15 14:02:07.657 Merging commands for group 'Other': 2025-04-15 14:02:07.657 Configuring application... 2025-04-15 14:02:07.658 Setting up ConfigService 2025-04-15 14:02:07.666 Build plan: platform=None, build_for=None 2025-04-15 14:02:07.666 Loading project file '/home/paul-goins/meh/python_snap_build_errors_sscce/snap/snapcraft.yaml' 2025-04-15 14:02:07.667 Using parallel build count of 12 from CPU count 2025-04-15 14:02:07.667 Processing grammar (on amd64 for amd64) 2025-04-15 14:02:07.667 Processing grammar for plugin: python 2025-04-15 14:02:07.667 Processing grammar for source: . 2025-04-15 14:02:07.667 Processing grammar for stage-packages: ['python3-venv'] 2025-04-15 14:02:07.668 Running snapcraft:amd64 in amd64 instance... 2025-04-15 14:02:07.668 Setting up Provider 2025-04-15 14:02:07.668 Setting snapcraft to be injected from the host into the build environment because it is running as a snap. 2025-04-15 14:02:07.668 Preparing managed instance 'snapcraft-sscce-amd64-56260417' 2025-04-15 14:02:07.669 Using hostname 'snapcraft-sscce-amd64-56260417' 2025-04-15 14:02:07.676 Retrieved snap config: {} 2025-04-15 14:02:07.676 Using default provider 'lxd' on linux system. 2025-04-15 14:02:07.680 Checking if LXD is installed. 2025-04-15 14:02:07.706 LXD snap status: active 2025-04-15 14:02:07.706 Checking if LXD is installed. 2025-04-15 14:02:07.730 LXD snap status: active 2025-04-15 14:02:07.802 Executing on host: lxc --project default profile show local:default 2025-04-15 14:02:07.841 Launching managed ubuntu 24.04 instance... 2025-04-15 14:02:07.842 Executing on host: lxc remote list --format=yaml 2025-04-15 14:02:07.888 Remote 'craft-com.ubuntu.cloud-buildd-daily' already exists. 2025-04-15 14:02:07.888 Executing on host: lxc project list local: --format=yaml 2025-04-15 14:02:07.932 Converted name 'snapcraft-sscce-amd64-56260417' to instance name 'snapcraft-sscce-amd64-56260417' 2025-04-15 14:02:07.932 Checking for instance 'snapcraft-sscce-amd64-56260417' in project 'snapcraft' in remote 'local' 2025-04-15 14:02:07.933 Executing on host: lxc --project snapcraft list local: --format=yaml 2025-04-15 14:02:07.993 Instance 'snapcraft-sscce-amd64-56260417' does not exist. 2025-04-15 14:02:07.993 Converted name 'base-instance-snapcraft-buildd-base-v7-craft-com.ubuntu.cloud-buildd-daily-core24' to instance name 'base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb' 2025-04-15 14:02:07.993 Checking for base instance 'base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb' in project 'snapcraft' in remote 'local' 2025-04-15 14:02:07.993 Executing on host: lxc --project snapcraft list local: --format=yaml 2025-04-15 14:02:08.047 Checking validity of instance 'base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb'. 2025-04-15 14:02:08.047 Executing on host: lxc --project snapcraft info local:base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb 2025-04-15 14:02:08.090 Executing on host: lxc --project snapcraft info local:base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb 2025-04-15 14:02:08.129 Executing on host: lxc --project snapcraft config get local:base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb user.craft_providers.status 2025-04-15 14:02:08.176 Instance 'base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb' is ready. 2025-04-15 14:02:08.176 Instance is valid. 2025-04-15 14:02:08.176 Creating instance from base instance 2025-04-15 14:02:08.176 Creating instance from base instance 'base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb'. 2025-04-15 14:02:08.176 Executing on host: lxc --project snapcraft list local: --format=yaml 2025-04-15 14:02:08.244 Executing on host: lxc --project snapcraft copy local:base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb local:snapcraft-sscce-amd64-56260417 2025-04-15 14:02:10.603 Executing on host: lxc --project snapcraft list local: --format=yaml 2025-04-15 14:02:10.665 Executing on host: lxc --project snapcraft config set local:snapcraft-sscce-amd64-56260417 raw.idmap 'both 1000 0' 2025-04-15 14:02:10.735 Executing on host: lxc --project snapcraft config get local:snapcraft-sscce-amd64-56260417 raw.idmap 2025-04-15 14:02:10.790 Got LXD idmap for instance 'snapcraft-sscce-amd64-56260417': 'both 1000 0' 2025-04-15 14:02:10.790 Starting instance 2025-04-15 14:02:10.790 Executing on host: lxc --project snapcraft start local:snapcraft-sscce-amd64-56260417 2025-04-15 14:02:11.044 Executing on host: lxc --project snapcraft list local: --format=yaml 2025-04-15 14:02:11.099 Executing on host: lxc --project snapcraft file push /tmp/tmph1vvsmqh local:snapcraft-sscce-amd64-56260417/etc/hostname --mode=0644 2025-04-15 14:02:11.150 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical chown root:root /etc/hostname 2025-04-15 14:02:11.242 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical hostname -F /etc/hostname 2025-04-15 14:02:11.371 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical test -f /etc/craft-instance.conf 2025-04-15 14:02:11.487 Executing on host: lxc --project snapcraft file pull local:snapcraft-sscce-amd64-56260417/etc/craft-instance.conf /home/paul-goins/tmpoi34zoa5.tmp-craft/tmpq6vmk8au 2025-04-15 14:02:11.532 Instance has already been setup. 2025-04-15 14:02:11.532 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical cat /etc/os-release 2025-04-15 14:02:11.598 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical test -f /etc/craft-instance.conf 2025-04-15 14:02:11.712 Executing on host: lxc --project snapcraft file pull local:snapcraft-sscce-amd64-56260417/etc/craft-instance.conf /home/paul-goins/tmpl4gtuja3.tmp-craft/tmpnrgyx_ej 2025-04-15 14:02:11.761 Instance is compatible with compatibility tag 'snapcraft-buildd-base-v7' 2025-04-15 14:02:11.761 No cache path set, not mounting cache directories. 2025-04-15 14:02:11.761 Waiting for environment to be ready... 2025-04-15 14:02:11.761 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical systemctl is-system-running 2025-04-15 14:02:11.844 Waiting for networking to be ready... 2025-04-15 14:02:11.844 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical getent hosts snapcraft.io 2025-04-15 14:02:11.919 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical snap unset system proxy.http 2025-04-15 14:02:12.128 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical snap unset system proxy.https 2025-04-15 14:02:12.325 Installing snap 'snapcraft' with channel=None and classic=True 2025-04-15 14:02:12.325 Installing snap 'snapcraft' from host (classic=True) 2025-04-15 14:02:12.327 Installing base snap 'core24' for 'snapcraft' from host 2025-04-15 14:02:12.327 Installing snap 'core24' from host (classic=False) 2025-04-15 14:02:12.328 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical test -f /etc/craft-instance.conf 2025-04-15 14:02:12.443 Executing on host: lxc --project snapcraft file pull local:snapcraft-sscce-amd64-56260417/etc/craft-instance.conf /home/paul-goins/tmp7nghd126.tmp-craft/tmphyo_3km1 2025-04-15 14:02:12.487 Revisions found: host='739', target='739' 2025-04-15 14:02:12.487 Skipping snap injection: target is already up-to-date with revision on host 2025-04-15 14:02:12.487 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical test -f /etc/craft-instance.conf 2025-04-15 14:02:12.601 Executing on host: lxc --project snapcraft file pull local:snapcraft-sscce-amd64-56260417/etc/craft-instance.conf /home/paul-goins/tmpsyrj6pqt.tmp-craft/tmp63c7x9qm 2025-04-15 14:02:12.645 Revisions found: host='14167', target='14167' 2025-04-15 14:02:12.645 Skipping snap injection: target is already up-to-date with revision on host 2025-04-15 14:02:12.707 Setting instance timezone to match host timezone 'America/Los_Angeles'. 2025-04-15 14:02:12.707 Executing on host: lxc --project snapcraft config set local:snapcraft-sscce-amd64-56260417 environment.TZ America/Los_Angeles 2025-04-15 14:02:12.771 Executing on host: lxc --project snapcraft config device show local:snapcraft-sscce-amd64-56260417 2025-04-15 14:02:12.808 Executing on host: lxc --project snapcraft config device add local:snapcraft-sscce-amd64-56260417 disk-/root/project disk source=/home/paul-goins/meh/python_snap_build_errors_sscce path=/root/project 2025-04-15 14:02:12.886 Instance launched and working directory mounted 2025-04-15 14:02:12.886 Pushing bashrc to instance 2025-04-15 14:02:12.886 Executing on host: lxc --project snapcraft file push /tmp/tmp1q4vfxli local:snapcraft-sscce-amd64-56260417/root/.bashrc --mode=644 2025-04-15 14:02:12.934 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical chown root:root /root/.bashrc 2025-04-15 14:02:12.996 Executing ['snapcraft', '--verbose'] in instance location /root/project with {'env': {'CRAFT_PLATFORM': 'amd64', 'CRAFT_VERBOSITY_LEVEL': 'VERBOSE'}}. 2025-04-15 14:02:12.996 Emitter: Pausing control of the terminal 2025-04-15 14:02:29.338 Emitter: Resuming control of the terminal 2025-04-15 14:02:29.338 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical test -f /tmp/snapcraft.log 2025-04-15 14:02:29.453 Executing on host: lxc --project snapcraft file pull local:snapcraft-sscce-amd64-56260417/tmp/snapcraft.log /home/paul-goins/tmphejnh93j.tmp-craft/tmp1jdltvq0 2025-04-15 14:02:29.514 Logs retrieved from managed instance: 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.485 Starting snapcraft, version 8.8.0 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.485 Log verbosity level set to VERBOSE 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.491 Preparing application... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.491 Merging commands for group 'Lifecycle': 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.491 - using application command for 'clean'. 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.491 - using application command for 'pull'. 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.491 - using application command for 'build'. 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.491 - using application command for 'stage'. 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.491 - using application command for 'prime'. 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.491 - using application command for 'pack'. 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.491 Merging commands for group 'Other': 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.491 Configuring application... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.492 Setting up ConfigService 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.498 Build plan: platform=amd64, build_for=None 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.498 Loading project file '/root/project/snap/snapcraft.yaml' 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.500 Using parallel build count of 12 from CPU count 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.500 Processing grammar (on amd64 for amd64) 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.500 Processing grammar for plugin: python 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.500 Processing grammar for source: . 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.500 Processing grammar for stage-packages: ['python3-venv'] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.502 Initialising lifecycle manager in /root 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.502 Project vars: {'version': 'test', 'grade': ''} 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.502 Adopting part: None 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.502 Using parallel build count of 12 from CPU count 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.502 is_snap: True, SNAP_NAME set to snapcraft 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.502 process sscce:1 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.502 add action sscce:1(0) 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.502 process sscce:3 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.502 add action sscce:3(0) 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.502 process sscce:4 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.503 add action sscce:4(0) 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.503 process sscce:5 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.503 add action sscce:5(0) 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.503 Initialising lifecycle 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.503 ignore patterns: ['*.snap'] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.504 plugin build packages: {'findutils', 'python3-venv', 'python3-dev'} 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.504 Installing build-packages 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:15.504 Requested build-packages: ['findutils', 'python3-dev', 'python3-venv'] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:16.188 Marking findutils (and its dependencies) to be fetched 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:16.188 package: findutils 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:16.197 Marking python3-venv (and its dependencies) to be fetched 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:16.197 package: python3-venv 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:16.210 Marking python3-dev (and its dependencies) to be fetched 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:16.210 package: python3-dev 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:16.244 Executing: ['apt-get', 'update'] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:16.422 :: Hit:1 http://security.ubuntu.com/ubuntu noble-security InRelease 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:16.540 :: Hit:2 http://archive.ubuntu.com/ubuntu noble InRelease 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:16.677 :: Get:3 http://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:17.291 :: Hit:4 http://archive.ubuntu.com/ubuntu noble-backports InRelease 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:17.338 :: Fetched 126 kB in 1s (117 kB/s) 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:17.759 :: Reading package lists... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:17.767 Installing packages: findutils python3-dev python3-venv 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:17.782 :: Reading package lists... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:17.885 :: Building dependency tree... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:17.885 :: Reading state information... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:17.999 :: findutils is already the newest version (4.9.0-5build1). 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:17.999 :: python3-dev is already the newest version (3.12.3-0ubuntu2). 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:17.999 :: The following additional packages will be installed: 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:17.999 :: python3-pip-whl python3-setuptools-whl python3.12-venv 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:18.016 :: The following NEW packages will be installed: 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:18.016 :: python3-pip-whl python3-setuptools-whl python3-venv python3.12-venv 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:18.308 :: 0 upgraded, 4 newly installed, 0 to remove and 102 not upgraded. 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:18.308 :: Need to get 2425 kB of archives. 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:18.308 :: After this operation, 2777 kB of additional disk space will be used. 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:18.308 :: Get:1 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 python3-pip-whl all 24.0+dfsg-1ubuntu1.1 [1703 kB] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.478 :: Get:2 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 python3-setuptools-whl all 68.1.2-2ubuntu1.1 [716 kB] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.517 :: Get:3 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 python3.12-venv amd64 3.12.3-1ubuntu0.5 [5678 B] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.518 :: Get:4 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 python3-venv amd64 3.12.3-0ubuntu2 [1034 B] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.632 :: Fetched 2425 kB in 1s (1624 kB/s) 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.656 :: Selecting previously unselected package python3-pip-whl. 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.661 :: (Reading database ... 16785 files and directories currently installed.) 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.662 :: Preparing to unpack .../python3-pip-whl_24.0+dfsg-1ubuntu1.1_all.deb ... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.674 :: Unpacking python3-pip-whl (24.0+dfsg-1ubuntu1.1) ... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.736 :: Selecting previously unselected package python3-setuptools-whl. 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.737 :: Preparing to unpack .../python3-setuptools-whl_68.1.2-2ubuntu1.1_all.deb ... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.747 :: Unpacking python3-setuptools-whl (68.1.2-2ubuntu1.1) ... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.827 :: Selecting previously unselected package python3.12-venv. 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.828 :: Preparing to unpack .../python3.12-venv_3.12.3-1ubuntu0.5_amd64.deb ... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.838 :: Unpacking python3.12-venv (3.12.3-1ubuntu0.5) ... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.902 :: Selecting previously unselected package python3-venv. 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.903 :: Preparing to unpack .../python3-venv_3.12.3-0ubuntu2_amd64.deb ... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.913 :: Unpacking python3-venv (3.12.3-0ubuntu2) ... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:19.976 :: Setting up python3-setuptools-whl (68.1.2-2ubuntu1.1) ... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:20.007 :: Setting up python3-pip-whl (24.0+dfsg-1ubuntu1.1) ... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:20.038 :: Setting up python3.12-venv (3.12.3-1ubuntu0.5) ... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:20.099 :: Setting up python3-venv (3.12.3-0ubuntu2) ... 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:20.361 Found installed version 24.0+dfsg-1ubuntu1.1 for package python3-pip-whl 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:20.361 Found installed version 68.1.2-2ubuntu1.1 for package python3-setuptools-whl 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:20.361 Found installed version 3.12.3-0ubuntu2 for package python3-venv 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:20.361 Found installed version 3.12.3-1ubuntu0.5 for package python3.12-venv 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:20.362 Installing build-snaps 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:20.947 verify plugin environment for part 'sscce' 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:20.948 Pulling sscce 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:20.949 execute action sscce:Action(part_name='sscce', step=Step.PULL, action_type=ActionType.RUN, reason=None, project_vars=None, properties=ActionProperties(changed_files=None, changed_dirs=None)) 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:20.949 Fetching stage-packages 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:20.949 Requested stage-packages: ['python3-venv'] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:21.525 Marking python3-venv (and its dependencies) to be fetched 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:21.525 package: python3-venv 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:21.885 Skipping filtered manifest packages: ['ca-certificates', 'dpkg', 'gcc-14-base', 'libacl1', 'libbz2-1.0', 'libc6', 'libcrypt1', 'libdb5.3t64', 'libexpat1', 'libffi8', 'libgcc-s1', 'liblzma5', 'libmd0', 'libncursesw6', 'libpcre2-8-0', 'libpython3-stdlib', 'libpython3.12-minimal', 'libpython3.12-stdlib', 'libreadline8t64', 'libselinux1', 'libsqlite3-0', 'libssl3t64', 'libtinfo6', 'libzstd1', 'media-types', 'netbase', 'openssl', 'python3', 'python3-minimal', 'python3.12', 'python3.12-minimal', 'readline-common', 'tar', 'tzdata', 'zlib1g'] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:21.941 Downloading package: python3-setuptools-whl 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:22.317 Get: 1 python3-setuptools-whl_68.1.2-2ubuntu1.1_all.deb [716 kB] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:23.133 Downloading package: python3-venv 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:23.681 Get: 2 python3-venv_3.12.3-0ubuntu2_amd64.deb [1034 B] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:23.682 Downloading package: python3-pip-whl 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:23.852 Get: 3 python3-pip-whl_24.0+dfsg-1ubuntu1.1_all.deb [1703 kB] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:24.367 Downloading package: python3.12-venv 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:24.532 Get: 4 python3.12-venv_3.12.3-1ubuntu0.5_amd64.deb [5678 B] 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:24.533 Extracting stage package: python3-setuptools-whl 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:24.533 Extracting stage package: python3-venv 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:24.533 Extracting stage package: python3-pip-whl 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:24.533 Extracting stage package: python3.12-venv 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:24.542 Building sscce 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:24.543 execute action sscce:Action(part_name='sscce', step=Step.BUILD, action_type=ActionType.RUN, reason=None, project_vars=None, properties=ActionProperties(changed_files=None, changed_dirs=None)) 2025-04-15 14:02:29.514 :: 2025-04-15 14:02:24.543 load state file: /root/parts/sscce/state/pull 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:24.590 fix artifacts: unpack_dir='/root/parts/sscce/install' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:24.593 remove directory /root/parts/sscce/build 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:24.595 Executing PosixPath('/root/parts/sscce/run/build.sh') 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:24.596 :: + python3 -m venv /root/parts/sscce/install 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.267 :: + PARTS_PYTHON_VENV_INTERP_PATH=/root/parts/sscce/install/bin/python3 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.267 :: + /root/parts/sscce/install/bin/pip install -U pip setuptools wheel 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.438 :: Requirement already satisfied: pip in /root/parts/sscce/install/lib/python3.12/site-packages (24.0) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.514 :: Collecting pip 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.541 :: Downloading pip-25.0.1-py3-none-any.whl.metadata (3.7 kB) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.659 :: Collecting setuptools 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.663 :: Downloading setuptools-78.1.0-py3-none-any.whl.metadata (6.6 kB) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.706 :: Collecting wheel 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.712 :: Downloading wheel-0.45.1-py3-none-any.whl.metadata (2.3 kB) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.749 :: Downloading pip-25.0.1-py3-none-any.whl (1.8 MB) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.787 :: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 50.7 MB/s eta 0:00:00 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.791 :: Downloading setuptools-78.1.0-py3-none-any.whl (1.3 MB) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.818 :: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.3/1.3 MB 50.1 MB/s eta 0:00:00 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.822 :: Downloading wheel-0.45.1-py3-none-any.whl (72 kB) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.834 :: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 72.5/72.5 kB 5.5 MB/s eta 0:00:00 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:26.867 :: Installing collected packages: wheel, setuptools, pip 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:27.324 :: Attempting uninstall: pip 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:27.327 :: Found existing installation: pip 24.0 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:27.347 :: Uninstalling pip-24.0: 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:27.350 :: Successfully uninstalled pip-24.0 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:27.868 :: Successfully installed pip-25.0.1 setuptools-78.1.0 wheel-0.45.1 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:27.917 :: + '[' -f setup.py ']' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:27.917 :: + '[' -f pyproject.toml ']' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:27.917 :: + /root/parts/sscce/install/bin/pip install -U . 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:28.114 :: Processing /root/parts/sscce/build 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:28.115 :: Installing build dependencies: started 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:28.841 :: Installing build dependencies: finished with status 'done' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:28.841 :: Getting requirements to build wheel: started 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:28.901 :: Getting requirements to build wheel: finished with status 'done' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:28.901 :: Preparing metadata (pyproject.toml): started 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:28.979 :: Preparing metadata (pyproject.toml): finished with status 'done' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:28.981 :: Building wheels for collected packages: sscce 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:28.981 :: Building wheel for sscce (pyproject.toml): started 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.010 :: Building wheel for sscce (pyproject.toml): finished with status 'done' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.010 :: Created wheel for sscce: filename=sscce-0.1.dev1-py3-none-any.whl size=1416 sha256=e444e5528001b389903d251dc03896a5fae6a98a1a5b045a78be8dbcb41abaeb 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.010 :: Stored in directory: /tmp/pip-ephem-wheel-cache-xp9xrk7k/wheels/df/e4/d1/957c6de665050650792ec2668b4f7128c7ba0596475cb9a687 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.011 :: Successfully built sscce 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.018 :: Installing collected packages: sscce 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.046 :: Successfully installed sscce-0.1.dev1 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.164 :: + find /root/parts/sscce/install -type f -executable -print0 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.165 :: + xargs --no-run-if-empty -0 sed -i '1 s|^#\!/root/parts/sscce/install/bin/python3.*$|#!/usr/bin/env python3|' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.172 :: ++ set +o 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.172 :: ++ grep errexit 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.173 :: + opts_state='set +o errexit' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.174 :: + set +e 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.174 :: + install_dir=/root/parts/sscce/install/usr/bin 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.174 :: + stage_dir=/root/stage/usr/bin 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.174 :: +++ readlink -f /root/parts/sscce/install/bin/python3 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.175 :: ++ basename /usr/bin/python3.12 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.176 :: + basename=python3.12 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.176 :: + echo Looking for a Python interpreter called '"python3.12"' in the payload... 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.176 :: Looking for a Python interpreter called "python3.12" in the payload... 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.176 :: ++ find /root/parts/sscce/install/usr/bin /root/stage/usr/bin -type f -executable -name python3.12 -print -quit 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.177 :: ++ true 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.177 :: + payload_python= 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.177 :: + '[' -n '' ']' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.177 :: + echo 'Python interpreter not found in payload.' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.177 :: Python interpreter not found in payload. 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.177 :: + symlink_target= 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.177 :: + '[' -z '' ']' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.177 :: + echo 'No suitable Python interpreter found, giving up.' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.177 :: No suitable Python interpreter found, giving up. 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.177 :: + exit 1 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.179 Failed to run the build script for part 'sscce'. 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.179 Detailed information: 2025-04-15 14:02:29.515 :: :: + '[' -z '' ']' 2025-04-15 14:02:29.515 :: :: + echo 'No suitable Python interpreter found, giving up.' 2025-04-15 14:02:29.515 :: :: No suitable Python interpreter found, giving up. 2025-04-15 14:02:29.515 :: :: + exit 1 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 Traceback (most recent call last): 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_parts/executor/step_handler.py", line 147, in _builtin_build 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 _create_and_run_script( 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_parts/executor/step_handler.py", line 462, in _create_and_run_script 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 process.run( 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_parts/utils/process.py", line 186, in run 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 result.check_returncode() 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_parts/utils/process.py", line 52, in check_returncode 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 raise ProcessError(self) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 craft_parts.utils.process.ProcessError: ProcessResult(returncode=1, stdout=b'Requirement already satisfied: pip in /root/parts/sscce/install/lib/python3.12/site-packages (24.0)\nCollecting pip\n Downloading pip-25.0.1-py3-none-any.whl.metadata (3.7 kB)\nCollecting setuptools\n Downloading setuptools-78.1.0-py3-none-any.whl.metadata (6.6 kB)\nCollecting wheel\n Downloading wheel-0.45.1-py3-none-any.whl.metadata (2.3 kB)\nDownloading pip-25.0.1-py3-none-any.whl (1.8 MB)\n \xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81 1.8/1.8 MB 50.7 MB/s eta 0:00:00\nDownloading setuptools-78.1.0-py3-none-any.whl (1.3 MB)\n \xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81 1.3/1.3 MB 50.1 MB/s eta 0:00:00\nDownloading wheel-0.45.1-py3-none-any.whl (72 kB)\n \xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81\xe2\x94\x81 72.5/72.5 kB 5.5 MB/s eta 0:00:00\nInstalling collected packages: wheel, setuptools, pip\n Attempting uninstall: pip\n Found existing installation: pip 24.0\n Uninstalling pip-24.0:\n Successfully uninstalled pip-24.0\nSuccessfully installed pip-25.0.1 setuptools-78.1.0 wheel-0.45.1\nProcessing /root/parts/sscce/build\n Installing build dependencies: started\n Installing build dependencies: finished with status \'done\'\n Getting requirements to build wheel: started\n Getting requirements to build wheel: finished with status \'done\'\n Preparing metadata (pyproject.toml): started\n Preparing metadata (pyproject.toml): finished with status \'done\'\nBuilding wheels for collected packages: sscce\n Building wheel for sscce (pyproject.toml): started\n Building wheel for sscce (pyproject.toml): finished with status \'done\'\n Created wheel for sscce: filename=sscce-0.1.dev1-py3-none-any.whl size=1416 sha256=e444e5528001b389903d251dc03896a5fae6a98a1a5b045a78be8dbcb41abaeb\n Stored in directory: /tmp/pip-ephem-wheel-cache-xp9xrk7k/wheels/df/e4/d1/957c6de665050650792ec2668b4f7128c7ba0596475cb9a687\nSuccessfully built sscce\nInstalling collected packages: sscce\nSuccessfully installed sscce-0.1.dev1\nLooking for a Python interpreter called "python3.12" in the payload...\n', stderr=b'+ python3 -m venv /root/parts/sscce/install\n+ PARTS_PYTHON_VENV_INTERP_PATH=/root/parts/sscce/install/bin/python3\n+ /root/parts/sscce/install/bin/pip install -U pip setuptools wheel\n+ \'[\' -f setup.py \']\'\n+ \'[\' -f pyproject.toml \']\'\n+ /root/parts/sscce/install/bin/pip install -U .\n+ find /root/parts/sscce/install -type f -executable -print0\n+ xargs --no-run-if-empty -0 sed -i \'1 s|^#\\!/root/parts/sscce/install/bin/python3.*$|#!/usr/bin/env python3|\'\n++ set +o\n++ grep errexit\n+ opts_state=\'set +o errexit\'\n+ set +e\n+ install_dir=/root/parts/sscce/install/usr/bin\n+ stage_dir=/root/stage/usr/bin\n+++ readlink -f /root/parts/sscce/install/bin/python3\n++ basename /usr/bin/python3.12\n+ basename=python3.12\n+ echo Looking for a Python interpreter called \'"python3.12"\' in the payload...\n++ find /root/parts/sscce/install/usr/bin /root/stage/usr/bin -type f -executable -name python3.12 -print -quit\n++ true\n+ payload_python=\n+ \'[\' -n \'\' \']\'\n+ echo \'Python interpreter not found in payload.\'\nPython interpreter not found in payload.\n+ symlink_target=\n+ \'[\' -z \'\' \']\'\n+ echo \'No suitable Python interpreter found, giving up.\'\nNo suitable Python interpreter found, giving up.\n+ exit 1\n', combined=b'+ python3 -m venv /root/parts/sscce/install\n+ PARTS_PYTHON_VENV_INTERP_PATH=/root/parts/sscce/install/bin/python3\n+ /root/parts/sscce/install/bin/pip install -U pip setuptools wheel\nRequirement already satisfied: pip in /root/parts/sscce/install/lib/python3.12/site-packages (24.0)\nCollecting pip\n Downloading pip-25.0.1-py3-none-any.whl.metadata (3.7 kB)\nCollecting setuptools\n Downloading setuptools-78.1.0-py3-none-any.whl.metadata (6.6 kB)\nCollecting wheel\n Downloading wheel-0.45.1-py3-none-any.whl.metadata (2.3 kB)\nDownloading pip-25.0.1-py3-none-any.whl (1.8 MB)\n\nDownloading setuptools-78.1.0-py3-none-any.whl (1.3 MB)\n\nDownloading wheel-0.45.1-py3-none-any.whl (72 kB)\n\nInstalling collected packages: wheel, setuptools, pip\n Attempting uninstall: pip\n Found existing installation: pip 24.0\n Uninstalling pip-24.0:\n Successfully uninstalled pip-24.0\nSuccessfully installed pip-25.0.1 setuptools-78.1.0 wheel-0.45.1\n+ \'[\' -f setup.py \']\'\n+ \'[\' -f pyproject.toml \']\'\n+ /root/parts/sscce/install/bin/pip install -U .\nProcessing /root/parts/sscce/build\n Installing build dependencies: started\n Installing build dependencies: finished with status \'done\'\n Getting requirements to build wheel: started\n Getting requirements to build wheel: finished with status \'done\'\n Preparing metadata (pyproject.toml): started\n Preparing metadata (pyproject.toml): finished with status \'done\'\nBuilding wheels for collected packages: sscce\n Building wheel for sscce (pyproject.toml): started\n Building wheel for sscce (pyproject.toml): finished with status \'done\'\n Created wheel for sscce: filename=sscce-0.1.dev1-py3-none-any.whl size=1416 sha256=e444e5528001b389903d251dc03896a5fae6a98a1a5b045a78be8dbcb41abaeb\n Stored in directory: /tmp/pip-ephem-wheel-cache-xp9xrk7k/wheels/df/e4/d1/957c6de665050650792ec2668b4f7128c7ba0596475cb9a687\nSuccessfully built sscce\nInstalling collected packages: sscce\nSuccessfully installed sscce-0.1.dev1\n+ find /root/parts/sscce/install -type f -executable -print0\n+ xargs --no-run-if-empty -0 sed -i \'1 s|^#\\!/root/parts/sscce/install/bin/python3.*$|#!/usr/bin/env python3|\'\n++ set +o\n++ grep errexit\n+ opts_state=\'set +o errexit\'\n+ set +e\n+ install_dir=/root/parts/sscce/install/usr/bin\n+ stage_dir=/root/stage/usr/bin\n+++ readlink -f /root/parts/sscce/install/bin/python3\n++ basename /usr/bin/python3.12\n+ basename=python3.12\n+ echo Looking for a Python interpreter called \'"python3.12"\' in the payload...\nLooking for a Python interpreter called "python3.12" in the payload...\n++ find /root/parts/sscce/install/usr/bin /root/stage/usr/bin -type f -executable -name python3.12 -print -quit\n++ true\n+ payload_python=\n+ \'[\' -n \'\' \']\'\n+ echo \'Python interpreter not found in payload.\'\nPython interpreter not found in payload.\n+ symlink_target=\n+ \'[\' -z \'\' \']\'\n+ echo \'No suitable Python interpreter found, giving up.\'\nNo suitable Python interpreter found, giving up.\n+ exit 1\n', command=[PosixPath('/root/parts/sscce/run/build.sh')]) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 The above exception was the direct cause of the following exception: 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 Traceback (most recent call last): 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_application/services/lifecycle.py", line 270, in run 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 aex.execute(action, stdout=stream, stderr=stream) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_parts/executor/executor.py", line 324, in execute 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 self._executor.execute(actions, stdout=stdout, stderr=stderr) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_parts/executor/executor.py", line 136, in execute 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 self._run_action(act, stdout=stdout, stderr=stderr) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_parts/executor/executor.py", line 211, in _run_action 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 handler.run_action(action, stdout=stdout, stderr=stderr) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_parts/executor/part_handler.py", line 202, in run_action 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 state = handler(step_info, stdout=stdout, stderr=stderr) 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_parts/executor/part_handler.py", line 341, in _run_build 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 self._run_step( 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_parts/executor/part_handler.py", line 529, in _run_step 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 return step_handler.run_builtin() 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 ^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_parts/executor/step_handler.py", line 107, in run_builtin 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 return handler() 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 ^^^^^^^^^ 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_parts/executor/step_handler.py", line 156, in _builtin_build 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 raise errors.PluginBuildError( 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 craft_parts.errors.PluginBuildError: Failed to run the build script for part 'sscce'. 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 :: + '[' -z '' ']' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 :: + echo 'No suitable Python interpreter found, giving up.' 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 :: No suitable Python interpreter found, giving up. 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 :: + exit 1 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 Check the build output and verify the project can work with the 'python' plugin. 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 Recommended resolution: Check the build output and verify the project can work with the 'python' plugin. 2025-04-15 14:02:29.515 :: 2025-04-15 14:02:29.183 For more information, check out: https://canonical-snapcraft.readthedocs-hosted.com/en/8.8.0/reference/plugins.html 2025-04-15 14:02:29.515 Executing on host: lxc --project snapcraft config device show local:snapcraft-sscce-amd64-56260417 2025-04-15 14:02:29.564 Executing on host: lxc --project snapcraft config device remove local:snapcraft-sscce-amd64-56260417 disk-/root/project 2025-04-15 14:02:29.638 Executing on host: lxc --project snapcraft stop local:snapcraft-sscce-amd64-56260417 2025-04-15 14:02:33.444 Executing on host: lxc --project snapcraft list local: --format=yaml 2025-04-15 14:02:33.509 Executing on host: lxc --project snapcraft list local: --format=yaml 2025-04-15 14:02:33.569 Failed to execute snapcraft in instance. 2025-04-15 14:02:33.581 Traceback (most recent call last): 2025-04-15 14:02:33.581 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_application/application.py", line 487, in run_managed 2025-04-15 14:02:33.581 instance.execute_run( # pyright: ignore[reportUnknownMemberType,reportUnknownVariableType] 2025-04-15 14:02:33.581 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_providers/lxd/lxd_instance.py", line 254, in execute_run 2025-04-15 14:02:33.581 return self.lxc.exec( 2025-04-15 14:02:33.581 ^^^^^^^^^^^^^^ 2025-04-15 14:02:33.581 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_providers/lxd/lxc.py", line 390, in exec 2025-04-15 14:02:33.581 return runner(final_cmd, timeout=timeout, check=check, **kwargs) 2025-04-15 14:02:33.581 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-04-15 14:02:33.581 File "/snap/snapcraft/current/usr/lib/python3.12/subprocess.py", line 571, in run 2025-04-15 14:02:33.581 raise CalledProcessError(retcode, process.args, 2025-04-15 14:02:33.581 subprocess.CalledProcessError: Command '['lxc', '--project', 'snapcraft', 'exec', 'local:snapcraft-sscce-amd64-56260417', '--cwd', '/root/project', '--', 'env', 'CRAFT_MANAGED_MODE=1', 'DEBIAN_FRONTEND=noninteractive', 'DEBCONF_NONINTERACTIVE_SEEN=true', 'DEBIAN_PRIORITY=critical', 'CRAFT_PLATFORM=amd64', 'CRAFT_VERBOSITY_LEVEL=VERBOSE', 'snapcraft', '--verbose']' returned non-zero exit status 1. 2025-04-15 14:02:33.581 2025-04-15 14:02:33.581 The above exception was the direct cause of the following exception: 2025-04-15 14:02:33.581 Traceback (most recent call last): 2025-04-15 14:02:33.581 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_application/application.py", line 691, in run 2025-04-15 14:02:33.581 return_code = self._run_inner() 2025-04-15 14:02:33.581 ^^^^^^^^^^^^^^^^^ 2025-04-15 14:02:33.581 File "/snap/snapcraft/14167/lib/python3.12/site-packages/snapcraft/application.py", line 203, in _run_inner 2025-04-15 14:02:33.581 return_code = super()._run_inner() 2025-04-15 14:02:33.581 ^^^^^^^^^^^^^^^^^^^^ 2025-04-15 14:02:33.581 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_application/application.py", line 674, in _run_inner 2025-04-15 14:02:33.581 self.run_managed(platform, build_for) 2025-04-15 14:02:33.581 File "/snap/snapcraft/14167/lib/python3.12/site-packages/craft_application/application.py", line 494, in run_managed 2025-04-15 14:02:33.581 raise craft_providers.ProviderError( 2025-04-15 14:02:33.581 craft_providers.errors.ProviderError: Failed to execute snapcraft in instance. 2025-04-15 14:02:33.581 Full execution log: '/home/paul-goins/.local/state/snapcraft/log/snapcraft-20250415-140207.652916.log' ====================================================================== ``` ### Additional context _No response_

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Resolved as a configuration issue. Classic Python snaps on core24 require explicitly adding python3.12-minimal to stage-packages and adjusting the app command. The developer acknowledged documentation gaps and announced upcoming Python plugin improvements.
qwen/qwen3.6-35b-a3b Resolved. Adding python3.12-minimal to stage-packages and updating the app command fixed the classic confinement build. Maintainers acknowledged documentation gaps and noted upcoming Python plugin improvements will simplify configuration.
qwen3.6-35b-a3b-mtp-q6 Resolved by adding python3.12-minimal to stage-packages and updating the app command. The issue was a configuration gap rather than a code bug. Maintainers acknowledged the plugin's complexity and plan to release improved Python plugins with better documentation.
qwen3.6-35b-a3b-mtp-q6 Resolved via maintainer guidance. Adding python3.12-minimal to stage-packages and explicitly invoking the interpreter in the app command fixed the build. Plugin complexity is acknowledged, with improved Python plugins scheduled for future releases.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#5408 Unable to build usable Python snaps which use Ubuntu-provided python3-* dependencies using strict confinement with core24 using snapcraft 8.8.0 (8.x/stable) snapcraft closed Closed as completed. The author applied a PYTHONPATH workaround in snapcraft.yaml to access staged packages. Maintainers declined a code fix, marking the issue as a reference for a future Python plugin rewrite.
81%
#6020 Most Python-based snaps can't build on core26 snapcraft closed Resolved in PR #6089 and released in snapcraft 8.14.3. The python plugin now correctly handles core26 builds without assuming a system interpreter. Uv and poetry plugins remain unaddressed and will be fixed in future updates.
74%
#5144 error out if core24 classic python snap is created with the non-staged python binary snapcraft open Feature request to add a post_prime check in the python plugin that errors when a core24 classic snap is built with the host python (/usr/bin/python*) instead of a staged interpreter, which produces a broken pyvenv.cfg (home = /usr/bin). No labels, no comments, no activity for ~2 years.
74%
#786 Python plugin. Python is broken in core24 classic snaps if snap is used on an older Ubuntu LTS version craft-parts open Python plugin bug: core24 classic snaps fail on older Ubuntu LTS (20.04/22.04) with 'No module named encodings'. Original problem fixed in Snapcraft 8.3.2 via PR #4946; residual follow-up tracked in snapcraft#5144. Inactive since Sept 2024.
74%
#4946 fix: fix Python venv in core24 classic snaps snapcraft merged Merged a fix for Python virtual environment handling in core24 classic snaps. Updates the pyvenv.cfg home key to the final snap path, resolving Python 3.12 compatibility issues. Squash-merged on August 1, 2024, following transient CI failure resolution.
71%
#1880319 Python plugin --classic snap conflicts with system python snapcraft (launchpad) closed Closed without comments or resolution, likely abandoned. The issue reported a Python plugin conflict where classic confinement snaps incorrectly imported host system libraries instead of packaged dependencies.
71%
#4615 snapcraft `8.0.2`+ python plugin classic core22 snap ModuleNotFoundError snapcraft closed Closed. No code fix was merged. A workaround was identified for Snapcraft 8 dropping PATH settings in classic snaps. An internal ticket was created for tracking.
71%