build providers: environment setup for projects
Metadata
Current evaluation
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.
Suggested action: —
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 |
|---|---|---|---|---|
| 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. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged changes adding a cloud data generator to the Base Provider for environment setup, updating project loading logic for re-execution mode, and syncing the multipass provider. Author declined splitting the changes due to tight coupling. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #2267 build providers: refresh packages on bring up | snapcraft | merged | Merged. Added packaging repository refresh tasks to the BaseProvider bring-up logic, consolidating Multipass provider functionality. Approved and passed CI. A related container environment issue remains unresolved. | |
| #3434 build providers: clean environment if project directory is changed | snapcraft | merged | Merged into master. Fixes environment cleanup when project directories are relocated or reused. The build provider now tracks the directory path, verifies compatibility, and automatically cleans the environment on mismatch. Approved and passed CI. | |
| #2460 build providers: recreate instance if base changed | snapcraft | merged | Merged fix ensuring build providers recreate instances when the project base changes. Previously, base updates were ignored after initial provisioning. This resolves Launchpad bug #1794506 and was approved and merged into master. | |
| #2260 build providers: allow setting ram and disk size | snapcraft | merged | Merged. Introduces environment variables to override default RAM and disk size for the Multipass build provider. Approved by two reviewers, passed CI checks, and resolved Launchpad bug #1791661. |