commands: add clean command
Metadata
Current evaluation
Merged as c4502a7a via PR #93, adding the rockcraft clean command scaffold with TODO paths for part, destructive-mode, and provider cleanup.
Resolution: closed resolved
Reason: PR #93 was merged as commit c4502a7a, establishing the clean command framework. The specific part and provider cleanup implementations followed separately in PRs #165 and #108.
Evaluated by: mr-cal-bot
No scores available.
Issue body
- [X] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
#### Overview
Add command `rockcraft clean` with stubbed out TODOs. This lays down groundwork needed to refactor `clean_project_environments()`.
There are 3 ways the `clean` command is used:
#### 1. `rockcraft clean <part>`
- cleans a specific part
- added as a TODO to be implemented later
#### 2. `rockcraft clean --destructive-mode`
- cleans the local build environment
- added as a TODO, but users shouldn't encouter this, since `destructive mode` is also unsupported and labeled with a TODO
#### 3. `rockcraft clean`
- cleans a provider environment
- added as a TODO, but will be supported in my next PR
(CRAFT-1394)
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged as c4502a7a via PR #93, adding the rockcraft clean command scaffold with TODO paths for part, destructive-mode, and provider cleanup. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged in canonical/rockcraft#93 (c4502a7a), adding clean command scaffolding with TODOs for part, destructive-mode, and provider cleanup. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged rockcraft clean command with stubbed TODOs for cleaning parts, destructive mode, and provider environments. Establishes groundwork for refactoring clean_project_environments(). Approved and merged despite a documentation request. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged the rockcraft clean command featuring stubbed TODOs for part, destructive mode, and provider environment cleanup. The reviewer requested documentation for future PRs to avoid merging undocumented features. |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/rockcraft#108
(confidence 99%)
Follow-up PR implementing provider-environment cleanup promised by the scaffold.
-
Related To:
canonical/rockcraft#165
(confidence 99%)
Follow-up PR implementing cleanup for a specific part.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #3680 commands, parts: add clean command | snapcraft | merged | Merged #3680 via 35ecc5c64, adding a clean command for parts and build-instance cleanup outside destructive or managed modes. | |
| #105 docs: add commands | rockcraft | merged | Merged PR #105 as commit 68906471, adding the first draft of rockcraft command documentation and resolving issue #101. | |
| #165 parts: allow cleaning specific parts | rockcraft | merged | Merged PR #165, adding support for cleaning specific parts within Rockcraft's managed environment. | |
| #412 clean: introduce clean command (CRAFT-62) | charmcraft | merged | Merged PR #412 (commit 23db6367, merge 646bc259) added a `clean` command removing Charmcraft-created LXD build containers, plus a caplog filter fixture. Later removed as unused in #1571. | |
| #101 docs for `rockcraft clean` | rockcraft | closed | Documentation for `rockcraft clean` was requested after #93 added the command in c4502a7a, but no resolving docs PR or commit was identified before closure. | |
| #93 feat: support "--destructive-mode". | craft-application | merged | Merged PR #93 (commit c0dd21a3) added --destructive-mode support to all lifecycle commands, including pack and clean, closing issue #57; maintainer confirmed it also re-enabled a disabled rockcraft spread test. | |
| #227 cli: add --destructive-mode flag | rockcraft | merged | Merged PR #227 as commit 84f76b85, adding --destructive-mode so ROCKs can be built directly on the host, matching Snapcraft and Charmcraft. |