Skip to content

ci: release + PR checks without devbox/Nix as a stopgap#1304

Merged
abueide merged 2 commits into
masterfrom
release-without-devbox-nix
Jul 22, 2026
Merged

ci: release + PR checks without devbox/Nix as a stopgap#1304
abueide merged 2 commits into
masterfrom
release-without-devbox-nix

Conversation

@abueide

@abueide abueide commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Summary

Both release.yml and ci.yml had jobs using jetify-com/devbox-install-action, which is blocked outright by org policy (third-party action). ci.yml's run history confirms startup_failure on every single run going back weeks - every PR check on the repo has been broken, not just releases. #1303 fixes the underlying action properly, but it and the Nix/Artifactory work it depends on (#1301/#1302 here, twilio-internal/artifactory-cloud-twilio-config#11/#12) aren't merged yet.

release.yml - every job's devbox steps replaced with the exact commands devbox.json already ran, directly: actions/setup-node (node 22) + corepack enable + plain yarn invocations. Artifactory OIDC Auth step untouched (npm/yarn curation, unrelated to devbox).

ci.yml - Lint + Build + Test and Commitlint ported to the identical commands now used in release.yml's own ci job - both jobs are named Lint + Build + Test and are now byte-for-byte the same steps, so release.yml's needs: [ci] gate is the same check PRs already have to pass.

e2e-tests.yml - triggers disabled for now (workflow_dispatch only). Unlike the other two, this one never used devbox and never hit startup_failure - its recent runs show stuck queued/cancelled instead, a separate, still-unresolved runner-availability issue. Left alone rather than "fixed" for a problem it doesn't actually have.

Important: overlaps with #1303

This and #1303 both touch release.yml/ci.yml's devbox steps in different, incompatible ways. Once devbox/Nix + Artifactory is fully working and merged, this stopgap should be reconciled or reverted rather than left alongside it long-term.

Not verified end-to-end

  • No way to safely test corepack/yarn locally without touching this machine's global Node setup
  • A manually-dispatched dry-run release has been stuck queued for 10+ minutes with no runner assigned (runner_id: 0) - looks like a separate, currently-ongoing GHA runner-availability issue on this repo, unrelated to this PR's content

Test plan

  • Lint + Build + Test and Commitlint pass on this PR once runners are healthy
  • Manual workflow_dispatch with type: dry-run succeeds

abueide added 2 commits July 22, 2026 12:25
release.yml's Install devbox step still uses jetify-com/devbox-install-action,
which is blocked outright by org policy (third-party action) - #1303 fixes
that properly, but it and the underlying Nix/Artifactory work (segmentio
analytics-react-native #1301/#1302, twilio-internal
artifactory-cloud-twilio-config #11/#12) aren't merged yet, and releases
are blocked in the meantime.

Removes devbox from every job in release.yml and runs the exact same
commands devbox.json already ran, directly:
- ci:install / release / release-dry-run / update-apps scripts translated
  1:1 to their underlying yarn invocations
- actions/setup-node (node 22, matching devbox.json's pin) + corepack
  enable in place of devbox's nix-provided yarn-berry, to get the
  packageManager-pinned yarn@4.1.0
- Artifactory OIDC Auth step is untouched - that's about npm/yarn package
  curation, unrelated to the devbox/Nix bootstrap problem

This overlaps with #1303: once devbox/Nix + Artifactory is fully working
and merged, this stopgap should be reconciled or reverted rather than
left alongside it long-term.

Not verified end-to-end (no way to safely test corepack/yarn locally
without touching this machine's global Node setup) - the intended next
step is a real `dry-run` release via workflow_dispatch to confirm before
trusting it for beta/production.
ci.yml's Lint + Build + Test / Commitlint jobs both used
jetify-com/devbox-install-action, confirmed via run history to fail with
startup_failure on every single run going back weeks (the blocked-action
policy, not a code problem) - this was blocking every PR check on the
repo, not just releases.

Ports both jobs to the exact same commands release.yml's own ci job
already uses (added in the previous commit): actions/setup-node + corepack
enable + plain yarn invocations, no devbox. The two "Lint + Build + Test"
jobs are now identical, so release.yml's needs: [ci] gate is the same
check PRs already have to pass.

Also disables e2e-tests.yml's push/pull_request triggers for now - unlike
ci.yml, this one doesn't use devbox at all and never hit startup_failure;
its recent runs show stuck queued/cancelled instead, a separate,
still-unresolved runner-availability issue. Left as workflow_dispatch-only
until that's confirmed healthy, rather than porting it to "fix" a problem
it doesn't actually have.
@abueide abueide changed the title ci: release without devbox/Nix as a stopgap ci: release + PR checks without devbox/Nix as a stopgap Jul 22, 2026
@abueide
abueide merged commit bf3c6a7 into master Jul 22, 2026
9 of 11 checks passed
@abueide
abueide deleted the release-without-devbox-nix branch July 22, 2026 18:27
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