• Stars
    star
    133
  • Rank 272,600 (Top 6 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created over 4 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A github action for waiting for the vercel preview

Wait for Vercel Preview β€” A GitHub Action ⏱

Do you have other Github actions (Lighthouse, Cypress, etc) that depend on the Vercel Preview URL? This action will wait until the url is available before running the next task.

Please note that this action is supposed to be run on the pull_request or push events.

Inputs

token (Required)

The github secret ${{ secrets.GITHUB_TOKEN }}

environment

Optional β€” The name of the environment that was deployed to (e.g., staging or production)

max_timeout

Optional β€” The amount of time to spend waiting on Vercel. Defaults to 60 seconds

allow_inactive

Optional - Use the most recent inactive deployment (previously deployed preview) associated with the pull request if no new deployment is available. Defaults to false.

check_interval

Optional - How often (in seconds) should we make the HTTP request checking to see if the deployment is available? Defaults to 2 seconds.

vercel_password

Optional - The password for the deployment

path

Optional - The URL that tests should run against (eg. path: "https://vercel.com").

Outputs

url

The vercel deploy preview url that was deployed.

vercel_jwt

If accessing a password protected site, the JWT from the login event. This can be passed on to e2e tests, for instance.

Example usage

Basic Usage

steps:
  - name: Waiting for 200 from the Vercel Preview
    uses: patrickedqvist/[email protected]
    id: waitFor200
    with:
      token: ${{ secrets.GITHUB_TOKEN }}
      max_timeout: 60
  # access preview url
  - run: echo ${{steps.waitFor200.outputs.url}}

Building

The Action is bundled via ncc. See this discussion for more information.

npm run build
# outputs the build to dist/index.js

Tests

Unit tests with Jest and Mock Service Worker

npm test