feat: build Rockcraft rock
Metadata
Current evaluation
PR adding rockcraft.yaml to pack Rockcraft itself as a rock (plus a GHCR workflow) was closed unmerged by author cjdcordeiro; no rockcraft.yaml commit landed in rockcraft.
Resolution: closed superseded
Reason: The author closed the PR on 2024-02-09 stating "Closing. Replaced by https://github.com/canonical/rocks-toolbox/pull/10", and the rockcraft repo has no commit adding a rockcraft.yaml, confirming it was never merged.
Evaluated by: mr-cal-bot
No scores available.
Issue body
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
This PR adds the `rockcraft.yaml` for building a Rockcraft rock.
The rock runs `pack` by default, in destructive mode. Other rockcraft commands can only be achieved via the pebble `exec` command or by overriding the entrypoint.
Because of fuse, the resulting rock needs to be executed with certain privileges.
Example:
```bash
rockcraft pack -v
skopeo copy oci-archive:rockcraft_dev_amd64.rock docker-daemon:rockcraft-rock:latest
docker run --rm -v $PWD:/project \
--device /dev/fuse \
--cap-add SYS_ADMIN \
--security-opt apparmor:unconfined \
rockcraft-rock
```
The resulting rock will be copied into the host's working directory
**Additionally:** this PR also includes the GH workflow for building and pushing this rock to GHCR
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed superseded | PR adding rockcraft.yaml to pack Rockcraft itself as a rock (plus a GHCR workflow) was closed unmerged by author cjdcordeiro; no rockcraft.yaml commit landed in rockcraft. | |
| stealth/space-bunny-alpha | — | closed superseded | Rock-building work was moved to canonical/rocks-toolbox#10; the unmerged rockcraft.yaml and GHCR workflow PR was closed as superseded. | |
| qwen/qwen3.6-35b-a3b | — | — | PR adding Rockcraft rock build configuration was closed and superseded by PR #10. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Superseded by PR #10 in canonical/rocks-toolbox. Added rockcraft.yaml configuration and GitHub Actions workflow to package the tool as a Rockcraft rock, but closed in favor of the replacement. |
Update history
No update history recorded yet.
Related work
-
Superseded By:
rocks-toolbox#10
(confidence 95%)
Cited directly in the closing comment as the replacement for the Rockcraft self-packing rockcraft.yaml and GHCR workflow.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #8 project: add rockcraft.yaml load function (CRAFT-586) | rockcraft | merged | Merged PR #8 added a dedicated rockcraft.yaml loader with tests; merge commit 3cf2d6fa contains implementation commit 85981d00. | |
| #40 feat(rockcraft-pack): support rockcraft test | craft-actions | merged | Merged #40 as commit 05e3417, adding rockcraft test support to rockcraft-pack so test workflows can reuse the action's packed rock. | |
| #39 feat(rockcraft-pack): accept env-file input | craft-actions | closed | PR #39 was closed unmerged after internal discussion; the proposed rockcraft-pack env-file input was not adopted, and a required test was missing. | |
| #42 feat(rockcraft-pack): implement pro field | craft-actions | merged | Merged #42, adding the rockcraft-pack pro input to build pro rocks; the feature landed in commit 299088e. | |
| #769 feat: add the remote-build command | rockcraft | merged | Merged PR #769 via commit 8e74936f, adding Rockcraft's experimental remote-build command; documentation followed in PRs #800 and #802. | |
| #118 feat: pack snapcraft 9 for core26 | snapcraft-rocks | open | Maintainer cmatsuoka adds an experimental rockcraft.yaml plus CI/workflow changes (+179/-3, 3 files) so the build rock can pack with Snapcraft 9 against core26. Open 13 days, unreviewed (0 reviewers), CLA passing, build-rock check still pending. | |
| #57 feat(rockcraft): support --ignore=unmaintained | craft-actions | merged | PR #57 (commit 9f9af04) merged, adding an `ignore` input to rockcraft/rockcraft-pack that passes --ignore=<value> to rockcraft pack, closing feature issue #52. Approved by 3 reviewers with all CI checks green. | |
| #6 project: add basic rockcraft.yaml parsing and validation (CRAFT-584) | rockcraft | merged | Merged in rockcraft PR #6 (88c9d529), adding rockcraft.yaml parsing and parts validation, renaming tag to version, and switching output from .oci.tar to .rock. | |
| #1210 fix(commands): reference rockcraft.yaml in extensions help | rockcraft | closed | PR #1210 (fix expand-extensions help to say rockcraft.yaml instead of snapcraft.yaml) was closed unmerged by its author as a duplicate of canonical/rockcraft#1103, which is already approved and CI-passing. | |
| #372 Merge `rockcraft` | craft-application | merged | PR #372 merged into the temporary 2.x branch, adding reviewed rockcraft work and commit ccfe498d's corrected craft-cli/craft-parts constraints for the planned 2.9.0 release. |