Create a Bazel plugin
Metadata
Current evaluation
Bazel support was merged in canonical/craft-parts#1491 (commit 3ac59612), adding a Craft Parts Bazel plugin with configurable targets/parameters and reference documentation.
Resolution: closed resolved
Reason: The implementation landed through merged PR canonical/craft-parts#1491 as commit 3ac59612. Repository history confirms BazelPlugin registration, configurable Bazel builds, artifact installation, and plugin documentation.
Evaluated by: mr-cal-bot
No scores available.
Issue body
### What needs to get done
## Craft Parts
* A new bazel plugin in Craft Parts
* This assumes the user has provisioned bazel with a `bazel-deps` part
* Optionally, the plugin can provision bazel. This behavior is similar to other plugins, like the rust plugin.
* Integration tests that build a project with Bazel
* Reference documentation
## Snapcraft
* A PR with an end-to-end test that builds a snap using the Bazel plugin
## Rockcraft
* A PR with an end-to-end test that builds a rock using the Bazel plugin
### Why it needs to get done
Bazel is a popular build tool and there have been [requests](https://github.com/canonical/snapcraft/issues/5197) to add it to the \*craft ecosystem. This task adds a new plugin for the Bazel build tool in Craft Parts.
Supersedes #963
Supersedes #1116
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Bazel support was merged in canonical/craft-parts#1491 (commit 3ac59612), adding a Craft Parts Bazel plugin with configurable targets/parameters and reference documentation. | |
| stealth/space-bunny-alpha | — | closed resolved | Bazel support was implemented in Craft Parts by merged PR #1491, commit 3ac59612, adding the Bazel plugin, tests, and documentation for the shared Crafts build pipeline. | |
| qwen/qwen3.6-35b-a3b | — | — | Implemented. Added BazelPlugin to craft_parts with configurable targets and parameters, registered under the bazel key. Includes environment validation and artifact copying to the install directory. Supersedes issues #963 and #1116. | |
| qwen/qwen3.6-35b-a3b | — | — | Implemented BazelPlugin in Craft Parts, registered under bazel. Supports configurable targets and parameters, copies artifacts from bazel-bin/, and validates bazel availability via an environment validator or bazel-deps part. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
60
Complexity:
75
Confidence:
80
Support Request:
5
|
keep open | Feature request to develop and integrate a Bazel build plugin across Craft Parts, Snapcraft, and Rockcraft. Currently triaged but inactive for over six months with no active development or maintainer follow-up. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
50
Complexity:
55
Confidence:
75
Support Request:
10
|
keep open | Enhancement to create a Bazel plugin for Craft Parts, Snapcraft, and Rockcraft, including integration tests and documentation. Currently triaged and awaiting prioritization or assignment. |
Update history
| Date | Change |
|---|---|
| closed |
Related work
-
Likely Fixed By:
canonical/craft-parts#1491
(confidence 100%)
Merged Bazel plugin implementation recorded as commit 3ac59612.
-
Related To:
canonical/craft-parts#963
(confidence 100%)
Explicitly superseded by #1438 as an earlier Bazel-plugin tracking issue.
-
Related To:
canonical/craft-parts#1116
(confidence 100%)
Explicitly superseded by #1438 as an earlier Bazel-plugin tracking issue.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #5197 Add bazel plugin | snapcraft | closed | Bazel plugin was delivered in craft-parts rather than Snapcraft: merged PR canonical/craft-parts#1491 (commit 3ac59612) added craft_parts/plugins/bazel_plugin.py, plugin docs and registration in plugins.py. | |
| #963 Add bazel plugin | craft-parts | closed | Closed as superseded by #1116 (lengau, 2025-06-09). Bazel support ultimately landed in merged PR #1491, commit 3ac59612 'feat: added bazel plugin', adding craft_parts/plugins/bazel_plugin.py plus plugin registry and docs. | |
| #1491 feat: added bazel plugin | craft-parts | merged | Bazel plugin support was merged via craft-parts#1491 (commit 3ac59612), adding bazel-bootstrap and target-based Starcraft builds. |