Skip to content

ci(linear): wire Linear release pipeline to CI#1683

Merged
paulfalgout merged 3 commits intodevelopfrom
linear-release
May 1, 2026
Merged

ci(linear): wire Linear release pipeline to CI#1683
paulfalgout merged 3 commits intodevelopfrom
linear-release

Conversation

@paulfalgout
Copy link
Copy Markdown
Contributor

@paulfalgout paulfalgout commented May 1, 2026

Closes FE-119

Add Linear release stage updates to the tag-build artifact pipeline and the deploy pipeline. Tag artifact upload syncs the release and moves it to Started; qa/sandbox/prod deploys advance through QA, Sandbox, and Released stages, with complete called after a successful prod deploy. Skips dev deploys and prod:demonstration. Pinned CLI binary v0.7.0 with sha256 verification, scoped via the linear-secrets CircleCI context.


Summary by cubic

Integrates the Linear release pipeline into CircleCI so release stages update automatically from tag builds and deploys. Implements FE-119 by syncing on tag builds and advancing stages on QA, Sandbox, and wildcard Prod; steps use && chaining and are failure-tolerant so they won’t block deploys.

  • New Features

    • Tag artifact upload syncs the release for the tag and sets stage to Started.
    • Deploys update stages: QA → QA, Sandbox → Sandbox, prod:* → Released, then complete; skips dev and org-scoped prod:<org>; runs after deploy notifications and chains commands with && to surface failures while keeping deploys/artifacts green.
    • linear-secrets context added to tag-build, deploy-qa, and deploy-prod (not deploy-dev).
  • Dependencies

    • Adds pinned linear/linear-release CLI v0.7.0 with SHA256 verification, downloaded via scripts/download-linear-release.sh.
    • Updates docs/deploy.md with stage mapping and required LINEAR_ACCESS_KEY in linear-secrets.

Written for commit 50eb96a. Summary will update on new commits.

Add Linear release stage updates to the tag-build artifact pipeline
and the deploy pipeline. Tag artifact upload syncs the release and
moves it to Started; qa/sandbox/prod deploys advance through QA,
Sandbox, and Released stages, with complete called after a successful
prod deploy. Skips dev deploys and prod:demonstration. Pinned CLI
binary v0.7.0 with sha256 verification, scoped via the linear-secrets
CircleCI context.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
devin-ai-integration[bot]

This comment was marked as resolved.

@cypress
Copy link
Copy Markdown

cypress Bot commented May 1, 2026

RoundingWell Care Ops Frontend    Run #8903

Run Properties:  status check passed Passed #8903  •  git commit 50eb96ae3d: ci(linear): chain commands with && to surface failures
Project RoundingWell Care Ops Frontend
Branch Review linear-release
Run status status check passed Passed #8903
Run duration 02m 04s
Commit git commit 50eb96ae3d: ci(linear): chain commands with && to surface failures
Committer Paul Falgout
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 0
Tests that did not run due to a developer annotating a test with .skip  Pending 0
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 236
View all changes introduced in this branch ↗︎

This comment was marked as resolved.

@coveralls
Copy link
Copy Markdown

coveralls commented May 1, 2026

Coverage Report for CI Build 3662

Coverage remained the same at 100.0%

Details

  • Coverage remained the same as the base build.
  • Patch coverage: No coverable lines changed in this PR.
  • No coverage regressions found.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

No coverage regressions found.


Coverage Stats

Coverage Status
Relevant Lines: 6054
Covered Lines: 6054
Line Coverage: 100.0%
Relevant Branches: 1844
Covered Branches: 1844
Branch Coverage: 100.0%
Branches in Coverage %: Yes
Coverage Strength: 270.81 hits per line

💛 - Coveralls

cubic-dev-ai[bot]

This comment was marked as resolved.

- Make Linear sync/update steps failure-tolerant so a Linear API or
  download failure cannot fail the deploy/artifact job (Devin, cubic).
- Move the deploy-side Linear update step after slack/notify so the
  deploy result reflects the actual deploy, not Linear (Devin, cubic).
- Restrict prod release completion to wildcard prod:* only; org-scoped
  prod deploys (prod:demonstration, prod:apple, etc.) are skipped so
  they cannot prematurely complete a release (cubic).
- Extract the pinned CLI download to scripts/download-linear-release.sh;
  config.yml and deploy.yml both call it, removing the duplicated
  version + sha256 (Copilot).
- Inline the download into the gated deploy step so dev deploys skip
  the network call entirely (Copilot).
- Split deploy-dev workflow into deploy-dev and deploy-qa so the
  linear-secrets context is only attached when actually used (Copilot).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
cubic-dev-ai[bot]

This comment was marked as resolved.

devin-ai-integration[bot]

This comment was marked as resolved.

set -e is suspended on the left side of ||, so the previous
{ cmd1; cmd2; cmd3; } || echo block silently swallowed earlier
command failures: the group exit status came from the trailing
if/last command, not from any failed step in the middle.

Chain commands with && so the first failure short-circuits and the
fallback echo fires. The trailing prod-only complete is encoded as
{ [ stage != prod ] || complete; } so its exit status reflects
whether complete actually ran successfully.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@paulfalgout paulfalgout merged commit ab6a646 into develop May 1, 2026
7 checks passed
@paulfalgout paulfalgout deleted the linear-release branch May 1, 2026 16:11
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.

4 participants