← Back to issue list

Charmcraft pack cannot run in a CI?

View original Github issue

Metadata

Project
charmcraft
Number
#388
Type
issue
State
closed
Author
heitorPB
Labels
—
Created
Updated
Closed

Current evaluation

charmcraft's strictly-confined snap blocked CI builds (pip deps install failing). Fixed by switching the snap to classic confinement (PR #288, commit d49e85e3); reporter confirmed the edge classic snap resolved their CI.

Resolution: closed resolved

Reason: Maintainers diagnosed the failure as the strictly confined snap being unable to read the CI's /etc/gitconfig, and shipped classic confinement in snap/snapcraft.yaml via PR #288 (commit d49e85e3, merged as 0d76670a). The reporter confirmed in the final comment that installing the edge channel classic snap fixed their GitHub Actions build, after which the issue was closed.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Hello, we have a GitHub actions CI to build and deploy our slurm-charms (https://github.com/omnivector-solutions/slurm-charms/blob/CI/.github/workflows/test_build_release_edge.yaml#L60). But charmcraft is now crashing when running in github CI. We install it from the snap (latest/stable), and our CI also has python3/pip3 installed. These are the last commands before crashing (`make charms` invoke `charmcraft pack`): ```bash Run make charms make charms echo "charm version: $(cat version)" shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0} env: pythonLocation: /opt/hostedtoolcache/Python/3.9.5/x64 LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.9.5/x64/lib Executing ['pip3', 'install', '--target=/home/runner/work/slurm-charms/slurm-charms/charm-slurmd/build/venv', '--requirement=/home/runner/work/slurm-charms/slurm-charms/charm-slurmd/requirements.txt'] failed with return code 1 problems installing dependencies (full execution logs in /home/runner/snap/charmcraft/common/charmcraft-log-x84lc565) make: *** [Makefile:32: slurmd] Error 1 Error: Process completed with exit code 2. ``` Can someone help me understand what is going on here?

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved charmcraft's strictly-confined snap blocked CI builds (pip deps install failing). Fixed by switching the snap to classic confinement (PR #288, commit d49e85e3); reporter confirmed the edge classic snap resolved their CI.
stealth/space-bunny-alpha — closed resolved CI packing was fixed by switching from the strictly confined stable snap to the edge classic snap, avoiding blocked access to /etc/gitconfig.
stealth/space-bunny-alpha — closed resolved Fixed in PR #288 (d49e85e3, merged as 0d76670a), which changed Charmcraft’s snap from strict to classic confinement; the reporter confirmed the edge snap worked in CI.
qwen3.6-35b-a3b-mtp-q6 — — CI build failures were resolved by switching to the charmcraft classic snap on the edge channel, bypassing strict confinement restrictions. The issue was closed after the user confirmed the workaround fixed the build process.
qwen/qwen3.6-35b-a3b — — Resolved by switching to the charmcraft edge snap with classic confinement. Strict confinement was blocking access to /etc/gitconfig during pip dependency installation in CI.
qwen/qwen3.6-35b-a3b — — Resolved by switching to the charmcraft classic snap from the edge channel. The stable snap's strict confinement blocked required file access, causing pack to fail in CI. Issue closed as fixed.
qwen3.6-35b-a3b-mtp-q6 — — CI build failures stemmed from strict snap confinement blocking /etc/gitconfig access. Switching to the classic charmcraft snap from the edge channel resolved the issue.

Update history

No update history recorded yet.

Related work

  • Likely Fixed By: canonical/charmcraft#288 (confidence 90%)

    Merge commit 0d76670a (branch snap-classic), including d49e85e3 'snap: strict -> classic confinement for Charmcraft snap'; snap/snapcraft.yaml now declares 'confinement: classic'.

  • Related To: canonical/charmcraft#316 (confidence 60%)

    Follow-up 'charmcraft: don't leak PYTHONPATH if running as snap' (5ed85476, d40228cc), part of the same snap-confusion/CI environment fixes.

Related issues

Issue Project State Summary Similarity
#184 Charmcraft crash when snap is used in /tmp directory charmcraft closed Fixed the /tmp PermissionError by switching the Charmcraft snap from strict to classic confinement in merged PR #288 (d49e85e3, 0d76670a).
73%
#288 snap: strict -> classic confinement for Charmcraft snap charmcraft merged Merged (commit d49e85e3, merge 0d76670a): switched Charmcraft's snap from strict to classic confinement, added a separate part for core20 Python stage packages, and hardcoded bin/python3 to work around a Snapcraft symlink bug.
72%
#560 Charmcraft pack is giving error frequently charmcraft closed The failure was traced to external LXD networking blocking access to archive.ubuntu.com during snapd installation; no Charmcraft fix was merged, and the reported firewall workaround did not help.
72%
#1160 `charmcraft pack` does not recognize updated `charmcraft.yaml` file charmcraft open Tracked upstream: charmcraft pack ignores build-snaps channel changes in charmcraft.yaml unless clean is run. Root cause is craft-parts#496 (build-snaps missing from properties_of_interest), still unfixed; charmcraft only needs a craft-parts bump once patched.
71%
#380 Charmcraft cannot build or pack from tmp dirs created with tempfile.mkdtemp charmcraft closed Packing failed from tempfile.mkdtemp dirs due to the charmcraft snap's strict confinement (private /tmp mount ns). Fixed by moving the snap to classic confinement in PR #288 (commit d49e85e3), shipped in Charmcraft 1.0.0.
71%
#2816 `charmcraft pack` fails on Resolute charmcraft open charmcraft pack fails on Ubuntu Resolute 26.04 hosts when using a Jammy 20.04 build base: snapd inside the LXD build instance cannot reload snap-confine AppArmor profiles; no maintainer response yet.
70%
#608 charmcraft exiting with 120 exit status and no stdout/stderr charmcraft closed Reporter saw charmcraft exit 120 with no output when run inside a classic snap. Maintainer facundobatista traced it to snapd bug #1849753 (classic snap invoking another classic snap) and closed the issue as not charmcraft-related.
70%
#55 `charmcraft build` breaks when pip packages come from github charmcraft closed GitHub requirements now work in snap-packaged Charmcraft 0.2, which added preliminary git support; the reporter confirmed the fix. Released via PR #58.
70%