← Back to issue list

lxd: snapcraft refresh in containers

View original Github issue

Metadata

Project
snapcraft
Number
#1412
Type
pull request
State
merged
Author
kalikiana
Labels
—
Created
Updated
Closed

Current evaluation

Merged PR #1412 as 3d511c5eb, making LXD container refresh install Snapcraft once while allowing packages and snaps to be updated in reusable containers.

Resolution: closed resolved

Reason: PR #1412 was approved and merged as 3d511c5eb after prerequisite refactor PR #1627 landed as d2118855c. It added refresh support for persistent LXD build containers.

Evaluated by: mr-cal-bot

No scores available.

Issue body

- Only update apt cache and install snapcraft once - Allow snapcraft update to upgrade packages and snaps See the [forum proposal](https://forum.snapcraft.io/t/update-persistent-lxd-containers/1648/3). **Note**: The other part is implemented in #1546.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged PR #1412 as 3d511c5eb, making LXD container refresh install Snapcraft once while allowing packages and snaps to be updated in reusable containers.
stealth/space-bunny-alpha — closed resolved Merged PR #1412 as commit 3d511c5eb, adding LXD refresh that installs Snapcraft once and updates packages and snaps while preserving container state between builds.
qwen/qwen3.6-35b-a3b — — Merged after awaiting prerequisite PR #1627. Implements snapcraft refresh for LXD containers, updating apt cache and packages once to persist changes across builds. Resolves container update persistence issues following successful testing.
qwen3.6-35b-a3b-mtp-q6 — — Merged after pausing for PR #1627. Implements snapcraft refresh for LXD containers to update apt cache and packages once. Post-merge testing verified successful package upgrades and proper container lifecycle handling.

Update history

No update history recorded yet.

Related work

  • Blocked By: snapcraft#1627 (confidence 100%)

    The prerequisite LXD refactor landed before #1412 could be completed and merged.

  • Related To: snapcraft#1546 (confidence 100%)

    Merged as 0dde02398; implemented the complementary parts-cache update inside containers.

Related issues

Issue Project State Summary Similarity
#1739 lxd: refresh remote container snapcraft merged Merged #1739 as 2f9265f23, fixing snapcraft refresh to honor the LXD remote named by SNAPCRAFT_CONTAINER_BUILDS instead of using a local container.
86%
#1364 lxd: Inject snapcraft and core snaps into the container snapcraft merged Merged PR #1364 as 99f5598ac, injecting the host's Snapcraft and core snaps into LXD containers so builds no longer use a mismatched Xenial archive version.
82%
#1546 cli: update parts cache in the container snapcraft merged Merged as 0dde02398: snapcraft update now refreshes the parts cache in the LXD container as well as the host. Complementary container refresh work landed in #1412.
79%
#1722049 core refresh in container build breaks build snapcraft (launchpad) closed Fixed by merged PR canonical/snapcraft#2098 (commit 7666a74a7), which waits for active snap refreshes before injecting build snaps into reusable LXD containers.
77%
#2098 lxd: wait for on-going refreshes to finish snapcraft merged PR #2098 by kalikiana merged (commit 7666a74a7), adding a `snap watch` call before injecting core/snapcraft snaps into LXD containers so in-progress refreshes finish. Fixes #2037 and LP bug #1722049.
75%
#1585 lxd: pass SNAPCRAFT_PARTS_URI through into container snapcraft merged Merged in canonical/snapcraft#1585 (13ea598d5), forwarding SNAPCRAFT_PARTS_URI into LXD containers so cleanbuild can resolve remote parts; fixes Launchpad #1719951.
73%
#1666735 snapcraft cleanbuild does not work with lxd installed via snap snapcraft (launchpad) closed Fixed by merged canonical/snapcraft#1199 (commit 417989880), making cleanbuild LXD detection packaging-independent instead of relying on apt package metadata.
71%
#1655 lxd: distinguish argless clean from clean -s pull snapcraft merged Merged in snapcraft#1655 (ed32603c7), fixing LXD cleanup so bare clean removes build containers while clean -s pull preserves or recreates them.
71%
#52 lxd: add snapshot support (CRAFT-144) craft-providers merged LXD snapshot support was merged in canonical/craft-providers#52 via commit 2ddab88 (implementation 5d49777), adding CRAFT-144 functionality.
71%