Skip to content

A GitHub action that will wait until a Netlify Preview deploy has completed before continuing on

License

Notifications You must be signed in to change notification settings

JakePartusch/wait-for-netlify-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Wait for Netlify — A GitHub Action ⏱

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

Inputs

site_name

Required The name of the Netlify site to reach https://{site_name}.netlify.app

request_headers

Optional — Stringified HTTP Header object key/value pairs to send in requests (eg. '{ "Authorization": "Basic YWxhZGRpbjpvcGVuc2VzYW1l }')

max_timeout

Optional — The amount of time to spend waiting on Netlify. Defaults to 60 seconds

base_path

Optional — The page that needs to be tested for 200. Defaults to "/" (eg: https://{site_name}.netlify.app{base_path})

Outputs

url

The netlify deploy preview url that was deployed.

Example usage

Basic Usage

steps:
  - name: Waiting for 200 from the Netlify Preview
    uses: jakepartusch/wait-for-netlify-action@v1.4
    id: waitFor200
    with:
      site_name: "jakepartusch"
      max_timeout: 60
Complete example with Lighthouse
name: Lighthouse

on: [pull_request]

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v1
      - name: Use Node.js 12.x
        uses: actions/setup-node@v1
        with:
          node-version: 12.x
      - name: Install
        run: |
          npm ci
      - name: Build
        run: |
          npm run build
      - name: Waiting for 200 from the Netlify Preview
        uses: jakepartusch/wait-for-netlify-action@v1.4
        id: waitFor200
        with:
          site_name: "jakepartusch"
      - name: Lighthouse CI
        run: |
          npm install -g @lhci/cli@0.3.x
          lhci autorun --upload.target=temporary-public-storage --collect.url=${{ steps.waitFor200.outputs.url }} || echo "LHCI failed!"
        env:
          LHCI_GITHUB_APP_TOKEN: ${{ secrets.LHCI_GITHUB_APP_TOKEN }}

About

A GitHub action that will wait until a Netlify Preview deploy has completed before continuing on

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •