Install URLs

Three URL shapes, each with a different lifetime guarantee.

Pinned URL

/install/<buildId>

Locked to one exact build. The same id always serves the same artifact.

Use a pinned URL when:

  • QA needs to reproduce a bug on the version it was reported against.
  • A build is being attached to a Linear or Jira ticket.
  • The link is being shared in Slack for a specific drop.

Folder URL

/install/folder/<project-slug>/<env>[/<branch>]

Always serves the latest ready build for the project, environment, and optional branch. New uploads to the same slot begin serving from the same URL.

Checkpoint folder

/install/folder/<project>/<env>

Serves the latest branchless build for the environment (the checkpoint). This is the canonical "install the current dev build" URL.

Branch folder

/install/folder/<project>/<env>/<branch>

Serves the latest build for a specific branch.

Release tag URL

/install/release/<project-slug>/<tag>

Frozen to a specific release tag. Subsequent uploads to the same environment or branch do not change which build is served.

Attach a release tag at upload time:

buildtree upload ./app.ipa --project acme --env prod --release v1.2.0

Tags are plain text. Conventional choices: v1.2.0, v1.2.0-rc1, 2024-03-15.

Choosing between the three

ScenarioURL flavor
Install the bug-repro build from yesterdayPinned
Always grab the latest dev buildFolder (checkpoint)
Always grab the latest feature/payments buildFolder (branch)
Install v1.2.0 (no auto-update)Release tag
Attach a build to PR #1234Pinned (in PR description)
Default QA bookmarkFolder (checkpoint)
Install URLs | buildtree docs