← Back to issue list

cli: make remote-build more user-friendly

View original Github issue

Metadata

Project
snapcraft
Number
#3553
Type
pull request
State
merged
Author
kyrofa
Labels
—
Created
Updated
Closed

Current evaluation

Merged in #3553 via 8649cedd6: --recover now reports when no build exists, the public-data prompt only appears for new builds, and tests cover the behavior.

Resolution: closed resolved

Reason: PR #3553 was merged as 8649cedd6, with implementation commit c93d417cc, resolving the remote-build UX issues described in the PR.

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 `./runtests.sh static`? - [x] Have you successfully run `./runtests.sh tests/unit`? ----- Remote build currently has a few papercuts. First of all, if there is no outstanding build, `--recover` literally means nothing: it just spins up another build as if it wasn't supplied at all, which in my experience is never what is desired. It also means there is a disconnect between how `--recover` and `--status` works. Fix that by making `--recover` function more like `--status`, and simply say that there are no builds. Harmony! Second, one is _always_ prompted about how data being sent to the remote builders is publicly available, even when using options that don't send any meaningful data to the builders, like `--status` and (now) `--recover`. Fix that by no longer using Click to prompt, and prompting only when actually spinning up a new build. Finally, add tests confirming this behavior.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged in #3553 via 8649cedd6: --recover now reports when no build exists, the public-data prompt only appears for new builds, and tests cover the behavior.
stealth/space-bunny-alpha — closed resolved Merged PR #3553 (commit 8649cedd6): remote-build now reports when --recover has no builds and limits the public-data prompt to new builds; tests were added.
stealth/space-bunny-alpha — closed resolved Merged PR #3553 (commit 8649cedd6): remote-build --recover now reports no builds, public-data prompts are limited to new builds, and tests were added.
stealth/space-bunny-alpha — closed resolved Merged in canonical/snapcraft#3553 (commit c93d417cc): --recover now matches --status, public-data warnings appear only for new builds, and tests were added.
qwen/qwen3.6-35b-a3b — — Merged improvements to remote-build CLI. Aligns --recover with --status, suppresses unnecessary public data prompts when checking status, and adds tests. Approved and merged.
qwen3.6-35b-a3b-mtp-q6 — — Merged CLI enhancements for remote-build. Updated --recover to mirror --status behavior when no builds exist, removed redundant public data prompts for non-build commands, and added tests.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#2798 cli: improve the remote-build upload messaging snapcraft merged Merged #2798 as 850b5dee8, clarifying that remote-build uploads are publicly available rather than necessarily public.
73%
#2590 remote build: add option to skip public upload question snapcraft merged Merged a remote-build option to skip the public-upload prompt in noninteractive environments; resolving commit d381d921f.
73%
#1913599 remote-build always recovers, even when --recover is not specified snapcraft (launchpad) open remote-build recovery is now opt-in: interrupted builds are resumed only with --recover, addressing the reported automation and artifact-provenance risk.
72%
#2768 remote-build: autorecovery snapcraft merged PR #2768 by cjp256 added autorecovery for `snapcraft remote-build` (retry/poll recovery of failed Launchpad builds), approved and merged as commit 0077d8265.
72%
#3919 cli: move remote build out of legacy snapcraft merged Merged as 686d69711, moving remote-build CLI logic out of legacy, exposing --build-for, hiding --build-on, and stopping the emitter during confirmation prompts.
71%
#2690 remote-build: error when --user is required snapcraft merged Merged PR #2690 (04a0d9331), restoring fail-fast remote-build validation when neither --user nor a configured username is available.
70%
#3554 cli: add support for parallel remote builds snapcraft merged Merged #3554 in commit c26fc107a, adding project-state hashes and selectable build IDs so multiple remote builds can run and be tracked in parallel.
70%
#2774 remote-build: architecture handling snapcraft merged Merged PR #2774 via commit 8300281d6, cleaning up and fixing remote-build architecture handling. Missing CLI unit tests were acknowledged as follow-up work.
70%