Skip to content

ci: deploy webui.ipfs.io only after release#2498

Merged
lidel merged 1 commit into
mainfrom
ci/deploy-after-release
Jul 17, 2026
Merged

ci: deploy webui.ipfs.io only after release#2498
lidel merged 1 commit into
mainfrom
ci/deploy-after-release

Conversation

@lidel

@lidel lidel commented Jul 17, 2026

Copy link
Copy Markdown
Member

Problem

Production publishing is tied to the workflow_dispatch itself, not to the release outcome: a dispatch where semantic-release fails or finds nothing to release still updates webui.ipfs.io on GitHub Pages and its DNSLink. A broken release can ship to users.

Fix

  • ci.yml no longer touches production: the _dnslink.webui update and the Pages deploy are removed, along with web3.storage pinning (the remaining pin step now fails the job directly)
  • new deploy-release.yml runs when a release is published: it downloads the CAR attached to that release, the canonical source of truth for release content, verifies its root CID, deploys it to GitHub Pages, and only then points _dnslink.webui at the same CID
  • dispatching deploy-release.yml manually with a tag redeploys or rolls back to any past release
  • flow documented in docs/RELEASING.md, README.md, and new AGENTS.md

TODO

  • Before the first post-merge release, the github-pages environment needs a v* tag rule under "Deployment branches and tags", since these deploys run from tag refs.

Publishing surfaces for webui.ipfs.io now run only after
semantic-release succeeds, so a failed dispatch or one with nothing to
release can no longer update the production dnslink or GitHub Pages.

- ci.yml: drop the production dnslink step and the deployPages job;
  builds, CAR artifacts, and dev publishing are unchanged
- ci.yml: drop web3.storage pinning; the remaining cluster pin fails
  the job directly instead of via a both-backends-failed check
- deploy-release.yml: new workflow triggered by release publication;
  deploys the CAR attached to the release (the canonical source of
  truth for release content) to GitHub Pages, then points
  _dnslink.webui at the same CID; manual dispatch with a tag redeploys
  or rolls back any past release
- document the flow in docs/RELEASING.md, README.md, and new AGENTS.md
@lidel
lidel marked this pull request as ready for review July 17, 2026 17:36
@lidel
lidel requested a review from a team as a code owner July 17, 2026 17:36
@lidel
lidel merged commit f1595c9 into main Jul 17, 2026
13 checks passed
@lidel
lidel deleted the ci/deploy-after-release branch July 17, 2026 17:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant