← Back to issue list

New command cleanbuild (using lxd)

View original Github issue

Metadata

Project
snapcraft
Number
#328
Type
pull request
State
merged
Author
sergiusens
Labels
—
Created
Updated
Closed

Current evaluation

Merged via2f6116267 (branch feature/1480144/cleanbuild-lxd): adds the cleanbuild command building in LXD containers, dropping pylxd due to API/Python 3 breakage. Later fixes followed in #1610, #1807 and #2404.

Resolution: closed resolved

Reason: PR #328 was merged into master as commit 2f6116267, delivering the LXD-backed cleanbuild command and closing LP bug #1480144. Follow-up commits restored the omitted integration test (e38921ab3, #1610) and later fixes (#2404).

Evaluated by: mr-cal-bot

No scores available.

Issue body

This new command's intention is to make building with a clean slate and easy chore. LP: #1480144 Signed-off-by: Sergio Schvezov sergio.schvezov@ubuntu.com

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged via2f6116267 (branch feature/1480144/cleanbuild-lxd): adds the cleanbuild command building in LXD containers, dropping pylxd due to API/Python 3 breakage. Later fixes followed in #1610, #1807 and #2404.
stealth/space-bunny-alpha — closed resolved Merged #328 via 2f6116267, adding cleanbuild for isolated LXD builds. pylxd was dropped for API and Python 3 compatibility; integration tests were initially omitted.
qwen/qwen3.6-35b-a3b — — Merged a new cleanbuild command using LXD for isolated builds. pylxd was removed due to API changes and Python 3 compatibility, and integration tests were skipped. Approved and merged by maintainers.
qwen3.6-35b-a3b-mtp-q6 — — Merged a new cleanbuild command using LXD for isolated builds. The author replaced pylxd due to API changes and Python 3 compatibility, skipping integration tests. Approved by reviewers and merged.

Update history

No update history recorded yet.

Related work

  • Related To: canonical/snapcraft#1610 (confidence 88%)

    Follow-up that re-enabled the cleanbuild integration test the author had skipped, as requested in review

  • Related To: canonical/snapcraft#1807 (confidence 78%)

    Later PR running test_cleanbuild in LXD on Travis

  • Related To: canonical/snapcraft#2404 (confidence 65%)

    Later cleanbuild bug fix (yaml error handling) stemming from this feature

  • Related To: canonical/snapcraft#2335 (confidence 55%)

    Much later removal of LXD support for bases, i.e. the eventual sunset of this mechanism

Related issues

Issue Project State Summary Similarity
#1230 lxd: refactor Cleanbuilder into Containerbuild and add Project. snapcraft merged Merged PR #1230 (ce66ca561) replaced Cleanbuilder with a Containerbuild base class and added Project to create and reuse project-named LXD containers.
76%
#904 cleanbuild: use pylxd instead of lxd command line snapcraft closed PR #904 was closed unmerged as stale on 6 February 2017 after prolonged inactivity; the maintainer also cited substantial pylxd differences on Ubuntu Xenial.
76%
#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.
74%
#1752498 cleanbuild fails with lxd snap snapcraft (launchpad) closed Closed as obsolete: the cleanbuild command was removed; Snapcraft builds now perform clean builds by default.
74%
#1769 lxd: add an --image argument to cleanbuild snapcraft closed Closed unmerged as stale after Snapcraft moved from container builds toward VMs, abandoning LXD cleanbuild --image support.
73%
#1480144 cleanbuild (through lxd) snapcraft (launchpad) closed Wishlist request for cowbuilder/pbuilder-style clean cross-arch snap builds. Closed by moving it to GitHub ubuntu-core/snapcraft#5, where clean-room building was later delivered as the LXD build provider (--use-lxd, snapcraft#2509, commit 067024732).
72%
#1263 lxd: pass through commands into the container snapcraft merged Merged #1263 as commit e0f28bd5c, routing snap-building and parts commands through LXD containers so remote/cleanbuild commands run inside the container environment.
72%
#1796980 Remove cleanbuild snapcraft (launchpad) closed Merged snapcore/snapcraft#2335 as 27ec9ba63, removing LXD lifecycle builds for base-based snaps and making cleanbuild redundant for them.
70%
#1519 lxd: use a unique temporary folder snapcraft merged Merged #1519 in commit fcda45133, giving each LXD build a unique temporary directory so parallel cleanbuilds no longer share one folder.
70%