Add Vercel - Deploy step template#1696
Open
Meanski wants to merge 1 commit into
Open
Conversation
|
Review this PR in Hyponome for a side-by-side diff of the step-template JSON and any embedded scripts. |
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Background
Adds a new step template, Vercel - Deploy, which triggers a git-connected deployment of a Vercel project via the Vercel REST API (
POST /v13/deployments).There are currently no Vercel templates in the library. This template is aimed at teams that use Octopus as their release control plane and want Vercel-hosted frontends inside the same governed pipeline: controlled environment promotion instead of push-to-deploy, approvals/change control on production, and coordinated releases where a frontend deploy is one step among several.
What the step does:
READYstate (enabled by default), failing the step if the build errors, is canceled, or a configurable timeout is reached.DeploymentId,DeploymentUrl, andDeploymentState.Implementation notes:
curland eitherjqorpython3on the worker (falls back from jq to python3 for JSON encoding/parsing).Results
A new Vercel - Deploy step template under a new vercel category.
Before
n/a — new step template; no Vercel templates exist in the library today.
After
Verified end-to-end from an Octopus Cloud instance against a live Vercel project (GitHub git source). Log excerpt from a successful deployment:
Error paths verified: invalid token (Vercel 403 surfaced with code and message, step fails with a non-zero exit code) and missing required parameters. GitLab and Bitbucket source payloads were validated against the Vercel API reference but not exercised against live projects.
gulp testspasses locally (4 specs, 0 failures).Pre-requisites
Idshould be a GUID that is not00000000-0000-0000-0000-000000000000Idproperty (updating theIdwill break the Library sync functionality in Octopus).Versionshould be incremented, otherwise the integration with Octopus won't update the step template correctly$LastModifiedByfield must be present, and (optionally) updated with the correct authorCategoryhas been created:{categoryname}.pngmust be present under thestep-templates/logosfolderswitchin thehumanizefunction ingulpfile.babel.jsmust have acasestatement corresponding to it