← Back to issue list

build providers: environment setup for projects

View original Github issue

Metadata

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

Current evaluation

Merged as snapcraft#2225 in commit 16ef9d3cf, adding Base Provider cloud-data setup, re-execution-aware project loading, and Multipass integration.

Resolution: closed resolved

Reason: Pull request #2225 was merged as commit 16ef9d3cf. It delivered shared provider environment setup and updated project loading and Multipass to use it.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Add a cloud data generator to the Base Provider which can be used by any provider to setup the environment properly. Make the appropriate changes to the project loading logic to know when it is running in a re-executed mode. Bring the multipass provider up to speed on the base Provider changes to make use of this functionality to expose this functionality for project building. LP: #1782780 LP: #1782782 - [x] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)? - [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)? - [x] If this is a bugfix. Have you checked that there is a bug report open for the issue you are trying to fix on [bug reports](https://bugs.launchpad.net/snapcraft)? - [x] If this is a new feature. Have you discussed the design on the [forum](https://forum.snapcraft.io)? - [x] Have you successfully run `./runtests.sh static`? - [x] Have you successfully run `./runtests.sh tests/unit`? -----

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged as snapcraft#2225 in commit 16ef9d3cf, adding Base Provider cloud-data setup, re-execution-aware project loading, and Multipass integration.
stealth/space-bunny-alpha — closed resolved Merged as 16ef9d3cf (#2225), adding Base Provider cloud-data generation, re-execution-aware project loading, and Multipass integration.
qwen/qwen3.6-35b-a3b — — Merged. Adds a cloud data generator to the Base Provider for environment setup and updates project loading logic for re-execution mode. Integrates changes into the multipass provider. Resolves Launchpad issues #1782780 and #1782782.
qwen3.6-35b-a3b-mtp-q6 — — Merged after maintainer declined splitting due to tight coupling. Adds a cloud data generator to the Base Provider for environment setup, updates project loading logic for re-execution detection, and synchronizes the multipass provider.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#2293 build providers: use the new snapcraft: remote for multipass snapcraft merged Merged PR #2293 as commit 66060e839, switching Multipass builds to the snapcraft: remote and delegating unsupported-base errors to Multipass.
77%
#1782780 Add cloud user data setup logic to the base build provider snapcraft (launchpad) closed Merged PR #2225 (commit 16ef9d3cf) added project environment setup for build providers.
74%
#2869 build providers: use multipass from stable snapcraft merged Merged in canonical/snapcraft#2869 (commit eb9bd8fbf), switching build providers to install Multipass 1.0 from the stable channel.
74%
#2260 build providers: allow setting ram and disk size snapcraft merged Merged PR snapcraft#2260 (commit 8d9cc5c5a): added Multipass-only build provider RAM/disk size overrides via two env vars, addressing LP bug #1791661. Provider logic later moved to craft-providers.
73%
#1792614 use multipass if set in the environment snapcraft (launchpad) closed Closed as fixed: PR snapcore/snapcraft#2275 (commit 04f8896d9) made SNAPCRAFT_BUILD_ENVIRONMENT/multipass take precedence over the base-derived provider choice.
72%
#3660 providers: integrate craft-providers support snapcraft merged PR #3660 by cmatsuoka integrated craft-providers into Snapcraft, running lifecycle commands in LXD/Multipass instances. Merged into the 7.0 line via merge commit 7c2ac0027 (squash commit 8a06cdbbd).
72%
#2258 build providers: snapcraft images for multipass snapcraft merged Merged PR #2258 as commit 5ffefbf96, adding Snapcraft build images for Multipass and a Darwin launch workaround for LP #1791821.
72%
#3583 build providers: snapcraft's new base is core20 (CRAFT-544) snapcraft merged Merged PR #3583 via 2b2d7dbcf, replacing build providers' injected core18 base with core20 to match Snapcraft's new base.
71%
#2174 build_providers: inject snaps when running from a snap snapcraft merged Merged PR #2174 (commit 283ab0bb8) to inject host Snapcraft and base snaps when running from the snapcraft snap, while non-snap runs install them from the store.
71%
#3943 providers: use new craft-providers interface snapcraft merged Merged into snapcraft main as commit 2980d145c: removed in-tree Provider/LXDProvider/MultipassProvider classes in favour of craft-providers, and moved snapcraft/providers/providers.py to snapcraft/providers.py (+65/-1173).
71%