Skip to content

gazjones00/lighthouse-ci-action

 
 

Repository files navigation

shopify/lighthouse-ci-action

About this repo | Usage | Authentication | Configuration

About this repo

Lighthouse CI on Shopify Theme Pull Requests using GitHub Actions.

Usage

Add shopify/lighthouse-ci-action to the workflow of your Shopify theme.

# .github/workflows/lighthouse-ci.yml
name: Shopify Lighthouse CI
on: [push]
jobs:
  lhci:
    name: Lighthouse
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Lighthouse
        uses: shopify/lighthouse-ci-action@1.0
        with:
          app_id: ${{ secrets.SHOP_APP_ID }}
          app_password: ${{ secrets.SHOP_APP_PASSWORD }}
          store: ${{ secrets.SHOP_STORE }}
          lhci_github_app_token: ${{ secrets.LHCI_GITHUB_APP_TOKEN }}
          lhci_min_score_performance: 0.9
          lhci_min_score_accessibility: 0.9

Authentication

Authentication is done with private app credentials. The same ones you'd use with Theme Kit.

You will need to provide the app_id, app_password and store as parameters to the GitHub action. It is recommended to set these as GitHub secrets on your repo.

jobs:
  lhci:
    name: Lighthouse
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Lighthouse
        uses: shopify/lighthouse-ci-action@1.0
        with:
          app_id: ${{ secrets.SHOP_APP_ID }}
          app_password: ${{ secrets.SHOP_APP_PASSWORD }}
          store: ${{ secrets.SHOP_STORE }}

Configuration

The shopify/lighthouse-ci-action accepts the following arguments:

  • app_id - (required) Shopify store private app ID.
  • app_password - (required) Shopify store private app password.
  • store - (required) Shopify store <domain>.myshopify.com URL.
  • password - (optional) For password protected shops
  • product_handle - (optional) Product handle to run the product page Lighthouse run on. Defaults to the first product.
  • theme_root - (optional) The root folder for the theme files that will be uploaded. Defaults to .
  • collection_handle - (optional) Collection handle to run the product page Lighthouse run on. Defaults to the first collection.
  • lhci_min_score_performance - (optional, default: 0.6) Minimum performance score for a passed audit (must be between 0 and 1).
  • lhci_min_score_accessibility - (optional, default: 0.9) Minimum accessibility score for a passed audit

For the GitHub Status Checks on PR. One of the two arguments is required:

  • lhci_github_app_token - (optional) Lighthouse GitHub app token
  • lhci_github_token - (optional) GitHub personal access token

For more details on the implications of choosing one over the other, refer to the Lighthouse CI Getting Started Page

About

No description, website, or topics provided.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 91.3%
  • Makefile 7.3%
  • Dockerfile 1.4%