← Back to issue list

providers: specify build-on and build-for in instance name

View original Github issue

Metadata

Project
snapcraft
Number
#3820
Type
pull request
State
merged
Author
mr-cal
Labels
—
Created
Updated
Closed

Current evaluation

Merged #3820 as commit 21cb1ab9a, adding build-on and build-for architecture names to provider instance names for core22 multi-architecture support.

Resolution: closed resolved

Reason: PR #3820 was approved and merged as commit 21cb1ab9a. The change implements the provider instance naming portion of the broader core22 architecture work split from #3712.

Evaluated by: mr-cal-bot

No scores available.

Issue body

- [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] Have you successfully run `make lint`? - [X] Have you successfully run `pytest tests/unit`? ----- New naming convention for instances. Part 6 of supporting architectures for `core22`. Full code change is proposed [here](https://github.com/snapcore/snapcraft/pull/3712). #### Previous naming convention `snapcraft-<project_name>-<inode-number>` `snapcraft-hello-world-10488157` #### New naming convention `snapcraft-<project_name>-on-<build_on>-for-<build_for>-<inode-number>` `snapcraft-hello-world-on-amd64-for-arm64-10488157` #### Reference: Charmcraft naming convention `charmcraft-<project_name>-<inode-number>-<bases_index>-<build_on_index>-<target_arch>` `charmcraft-hello-world-20846552-2-1-amd64` Where `bases_index` and `build_on_index` are the indices of each base and architecture defined in the charmcraft config. For snapcraft, I chose to use the architectures names themselves, rather than indices. It's more descriptive and is not affected by the re-ordering of architectures in `snapcraft.yaml`. (CRAFT-1172)

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged #3820 as commit 21cb1ab9a, adding build-on and build-for architecture names to provider instance names for core22 multi-architecture support.
stealth/space-bunny-alpha — closed resolved Merged #3820, adding build-on and build-for architecture names to provider instance names for the core22 multi-architecture work split from #3712.
qwen/qwen3.6-35b-a3b — — Merged changes to instance naming convention, incorporating build-on and build-for architecture specifications. Approved by reviewers, passed CI with 100% coverage, and enables core22 multi-architecture support.
qwen3.6-35b-a3b-mtp-q6 — — Merged into main. Updated instance naming convention to include build-on and build-for architecture details, enhancing multi-architecture support for core22. Achieved 100% test coverage upon integration.

Update history

No update history recorded yet.

Related work

  • Related To: snapcore/snapcraft#3712 (confidence 98%)

    Broader core22 architecture proposal that was split into smaller pull requests, including #3820.

  • Related To: snapcore/snapcraft#3821 (confidence 90%)

    Companion pull request implementing the remaining core22 build-on/build-for architecture behavior.

Related issues

Issue Project State Summary Similarity
#3821 meta: architectures snapcraft merged Merged core22 architecture support, including build-on/build-for handling, host and build-instance selection, and SNAPCRAFT_BUILD_FOR filtering, via commit 4876b53.
73%
#2522 build providers: add API for friendly instance type names snapcraft merged Merged PR #2522 in commit e8efe5279, adding a build-provider API for friendly instance type names.
72%
#1027 feat: allow building on other compatible architectures craft-application merged Merged #1027 as commit 15f48281, enabling provider-compatible cross-architecture builds and CRAFT_BUILD_ON architecture selection.
71%
#4341 architectures: allow same arch in multiple build-ons in core20 snapcraft closed Closed as an enhancement: overlapping build-on entries already work in core22+ via merged PR #3821 (4876b53); core20 support was declined due to regression and legacy remote-build risk.
70%