sentry-cli build upload doesn't expose two URLs that are useful after a successful upload:
- The install page URL (
https://<org>.sentry.io/preprod/install/<id>/)
- The
itms-services:// manifest URL used by Sentry's QR code, which triggers the iOS install dialog when scanned
Today the CLI only prints the artifact URL (/preprod/size/<id>) as part of human-readable stdout. To get the install URL, callers have to regex stdout. To get the itms URL, callers have to make a follow-up GET /api/0/projects/{org}/{project}/files/installablepreprodartifact/?per_page=1 request to grab the artifact string id (e.g. 59MPiMQHr-eeHIF6) and construct the manifest URL themselves.
The assemble response (AssembleBuildResponse in src/api/data_types/chunking/build.rs) currently only has state, missingChunks, detail, and artifactUrl, so the CLI doesn't have the data to print install or itms URLs even if it wanted to.
Two changes that would address this:
- Add
--output-format json to build upload, emitting the artifact URL (and any other fields) as structured output instead of formatted text.
- Extend the assemble response to include the installable artifact's string id (and ideally the install + manifest URLs), then surface them through the CLI.
sentry-cli build uploaddoesn't expose two URLs that are useful after a successful upload:https://<org>.sentry.io/preprod/install/<id>/)itms-services://manifest URL used by Sentry's QR code, which triggers the iOS install dialog when scannedToday the CLI only prints the artifact URL (
/preprod/size/<id>) as part of human-readable stdout. To get the install URL, callers have to regex stdout. To get the itms URL, callers have to make a follow-upGET /api/0/projects/{org}/{project}/files/installablepreprodartifact/?per_page=1request to grab the artifact string id (e.g.59MPiMQHr-eeHIF6) and construct the manifest URL themselves.The assemble response (
AssembleBuildResponseinsrc/api/data_types/chunking/build.rs) currently only hasstate,missingChunks,detail, andartifactUrl, so the CLI doesn't have the data to print install or itms URLs even if it wanted to.Two changes that would address this:
--output-format jsontobuild upload, emitting the artifact URL (and any other fields) as structured output instead of formatted text.