mirror of
https://github.com/apache/superset.git
synced 2024-09-06 22:07:34 -04:00
* Update chromatic PR action to have access to Job outputs Adjusting to follow docs at: https://docs.github.com/en/actions/using-jobs/defining-outputs-for-jobs * Fixes error where step ID was incorrect location
86 lines
3.7 KiB
YAML
86 lines
3.7 KiB
YAML
# .github/workflows/chromatic.yml
|
|
# seee https://www.chromatic.com/docs/github-actions
|
|
#
|
|
# Licensed to the Apache Software Foundation (ASF) under one or more
|
|
# contributor license agreements. See the NOTICE file distributed with
|
|
# this work for additional information regarding copyright ownership.
|
|
# The ASF licenses this file to You under the Apache License, Version 2.0
|
|
# (the "License"); you may not use this file except in compliance with
|
|
# the License. You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
|
|
# Workflow name
|
|
name: 'Chromatic Pull Request'
|
|
|
|
# This will allow us to see how the Storybook builds when a PR has been created that has changes in the frontend folder
|
|
# NOTE: pull_request_target actions will always run the version of this action on master branch
|
|
# you will not see changes in the action behavior until this action's changes have been merged to master.
|
|
# This is a security precaution so that PR coming from a fork cannot access a Github secret without a repo
|
|
# committer aproving and merging the PR declaring the action safe.
|
|
on:
|
|
pull_request_target:
|
|
|
|
# We want this action to run under specific pull request changes
|
|
# opened: pull request is created
|
|
# synchronize: commit(s) pushed to the pull request
|
|
# reopened: closed pull request is reopened
|
|
types: [opened, synchronize, reopened]
|
|
# This action will only run if one or more files have changes under the superset-frontend folder
|
|
paths:
|
|
- "superset-frontend/**"
|
|
|
|
# List of jobs
|
|
jobs:
|
|
chromatic-deployment:
|
|
# Operating System
|
|
runs-on: ubuntu-latest
|
|
# define outputs that can be used in the storybook-link-comment job
|
|
outputs:
|
|
storybookUrl: ${{ steps.chromatic-deploy.outputs.storybookUrl }}
|
|
buildUrl: ${{ steps.chromatic-deploy.outputs.buildUrl }}
|
|
# Job steps
|
|
steps:
|
|
- id: chromatic-deploy
|
|
- uses: actions/checkout@v1
|
|
- name: Install dependencies
|
|
run: npm ci
|
|
working-directory: superset-frontend
|
|
# 👇 Build and publish Storybook to Chromatic
|
|
- name: Build and publish Storybook to Chromatic
|
|
id: chromatic-deploy
|
|
uses: chromaui/action@v1
|
|
# Required options for the Chromatic GitHub Action
|
|
with:
|
|
# 👇 Location of package.json from root of mono-repo
|
|
workingDir: superset-frontend
|
|
# 👇 Chromatic projectToken, refer to the manage page to obtain it.
|
|
projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
|
|
exitZeroOnChanges: true # 👈 Option to prevent the workflow from failing when changes are detected
|
|
|
|
# Put a comment on the PR with link to latest build of the Storybook for this branch
|
|
storybook-link-comment:
|
|
# Operating System
|
|
runs-on: ubuntu-latest
|
|
# job steps
|
|
needs: chromatic-deployment
|
|
steps:
|
|
- name: Echo Storybook build link
|
|
uses: actions/github-script@v6
|
|
with:
|
|
github-token: ${{secrets.GITHUB_TOKEN}}
|
|
script: |
|
|
github.rest.issues.createComment({
|
|
issue_number: context.issue.number,
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
body: 'Storybook has completed and can be viewed at ${{ needs.chromatic-deployment.outputs.storybookUrl }} Chromatic visual test results can be viewed at ${{ needs.chromatic-deployment.outputs.buildUrl }}'
|
|
})
|