-
Notifications
You must be signed in to change notification settings - Fork 45
chore: replace Vercel native GitHub integration with explicit GitHub Actions deploy workflows#521
Merged
tstirrat15 merged 7 commits intomainfrom Feb 26, 2026
Merged
chore: replace Vercel native GitHub integration with explicit GitHub Actions deploy workflows#521tstirrat15 merged 7 commits intomainfrom
tstirrat15 merged 7 commits intomainfrom
Conversation
Member
Summary
Moves Vercel deployments from the native Vercel GitHub integration to explicit GitHub Actions workflows, giving us full control over when and how deployments are triggered.
vercel.json disables Vercel's automatic git-based deployments so only the workflows trigger deploys.
Preview workflow (vercel-preview.yml):
- Runs on pull requests; gates deployment on collaborator write access to prevent unauthorized deployments from forks
- Posts a live status comment on the PR (building / ready / failed) with a link to the preview URL
- Sets a stable branch alias (
docs-git-) in addition to the per-deploy URL-authzed.vercel.app - Branch name is sanitized and truncated to 46 chars to stay within the 63-char DNS label limit
Production workflow (vercel-production.yml):
- Runs on push to
mainand supports manualworkflow_dispatch - Creates a GitHub Deployment record and updates its status on success or failure
- Writes a job summary with deployment details
All action references are pinned to commit hashes for supply chain security.
Test plan
- Open a PR as a collaborator -- verify a preview deploy triggers and a status comment appears
- Open a PR as an external contributor -- verify the no-permission comment is posted and no deploy runs
- Merge to
main-- verify the production workflow runs and the GitHub Deployment is marked successful
Additional changes:
- Fixed all yamllint warnings and errors across workflow files -- quoted string scalars, added --- document-start
markers, replaced bare on: with "on": to avoid YAML truthy ambiguity - Disabled the yamllint comments rule to avoid requiring double-spaces before inline action pin comments (e.g. # v6)
- Removed the Lint Markdown step from the lint workflow -- markdownlint has conflicting rules with oxfmt, which
already covers formatting checks - Removed the lint:markdown script from package.json for the same reason; added lint:yaml script to run yamllint
locally - Fixed the preview deploy success comment so the "Ready" status links to the workflow run rather than the preview
URL
Generated with Claude Code
Implements automated deployment workflows to replace Vercel's built-in Git integration:
- Preview deployments for pull requests with status comments
- Production deployments on main branch pushes
- Disables Vercel Git integration to prevent duplicate deployments
Co-Authored-By: Claude Sonnet 4.5
- Preview deployments for pull requests with status comments
- Production deployments on main branch pushes
- Disables Vercel Git integration to prevent duplicate deployments
Co-Authored-By: Claude Sonnet 4.5
- Pin all GitHub Action references to commit hashes
- Add DNS label truncation to branch sanitization in preview deploy
- Fix --prod flag order in production deploy command
- Set auto-inactive: false on production GitHub Deployment
Co-Authored-By: Claude Sonnet 4.6
- Add DNS label truncation to branch sanitization in preview deploy
- Fix --prod flag order in production deploy command
- Set auto-inactive: false on production GitHub Deployment
Co-Authored-By: Claude Sonnet 4.6
Contributor
|
Preview deployment status for this pull request.
|
Quote all string scalars, use "on": to avoid truthy warnings, add
document-start markers, and fix inline comment spacing to comply with
the quoted-strings yamllint rules enforced in CI.
Also adds pnpm lint:yaml script to run yamllint locally.
Co-Authored-By: Claude Sonnet 4.6
document-start markers, and fix inline comment spacing to comply with
the quoted-strings yamllint rules enforced in CI.
Also adds pnpm lint:yaml script to run yamllint locally.
Co-Authored-By: Claude Sonnet 4.6
Co-Authored-By: Claude Sonnet 4.6
markdownlint has conflicting rules with oxfmt, and oxfmt already covers
formatting checks in this workflow.
Co-Authored-By: Claude Sonnet 4.6
formatting checks in this workflow.
Co-Authored-By: Claude Sonnet 4.6
Disables the comments spacing rule to avoid requiring 2 spaces before
inline hash comments on action pin references. Also removes the
lint:markdown script from package.json as markdownlint conflicts with
oxfmt.
Co-Authored-By: Claude Sonnet 4.6
inline hash comments on action pin references. Also removes the
lint:markdown script from package.json as markdownlint conflicts with
oxfmt.
Co-Authored-By: Claude Sonnet 4.6
miparnisari
approved these changes
Feb 26, 2026
Contributor
miparnisari
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let's try it
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.