Files
action/action.yml
T
Chromatic c9067691ac v10.9.5
2024-02-14 09:50:57 -08:00

152 lines
5.9 KiB
YAML
Executable File

name: Publish to Chromatic
author: Chroma Software, Inc.
description: 'Publish your Storybook to Chromatic and run visual regression tests'
branding:
icon: 'aperture'
color: 'orange'
inputs:
allowConsoleErrors:
description: 'Do not exit when runtime errors occur in storybook'
required: false
appCode:
description: 'Deprecated, please use projectToken instead'
required: false
autoAcceptChanges:
description: 'Automatically accept all changes in chromatic: boolean or branchname'
required: false
branchName:
description: 'Override the branch name'
required: false
buildScriptName:
description: 'The npm script that builds your Storybook [build-storybook]'
required: false
configFile:
description: 'Path from where to load the Chromatic config JSON file.'
cypress:
description: 'Run build against `@chromatic-com/cypress` test archives'
required: false
debug:
description: 'Output verbose debugging information'
required: false
diagnostics:
description: 'Deprecated, use diagnosticsFile instead'
required: false
diagnosticsFile:
description: 'Write process context information to a JSON file'
required: false
dryRun:
description: 'Run without actually publishing to Chromatic'
required: false
exitOnceUploaded:
description: 'Exit with 0 once the built version has been sent to chromatic: boolean or branchname'
required: false
exitZeroOnChanges:
description: 'Positive exit of action even when there are changes: boolean or branchname'
required: false
externals:
description: 'Disable TurboSnap when any of these files have changed since the baseline build'
required: false
fileHashing:
description: 'Whether to apply file hashing to skip uploading unchanged files (default: true)'
required: false
forceRebuild:
description: 'Do not skip build when a rebuild is detected'
required: false
ignoreLastBuildOnBranch:
description: 'Do not use the last build on this branch as a baseline if it is no longer in history (i.e. branch was rebased)'
required: false
logFile:
description: 'Write CLI logs to a file'
required: false
only:
description: 'Deprecated, replaced by onlyStoryNames'
required: false
onlyChanged:
description: 'Enables TurboSnap: Only run stories affected by files changed since the baseline build'
required: false
onlyStoryNames:
description: 'Only run a single story or a subset of stories by their name'
required: false
onlyStoryFiles:
description: 'Only run a single story or a subset of stories by their filename(s)'
required: false
playwright:
description: 'Run build against `@chromatic-com/playwright` test archives'
required: false
preserveMissing:
description: 'Deprecated, use onlyChanged, onlyStoryNames or onlyStoryFiles instead'
required: false
projectToken:
description: 'Your chromatic project token (best provided via env.CHROMATIC_PROJECT_TOKEN)'
required: false
repositorySlug:
description: 'Override the repository slug (e.g. ownerName/repositoryName)'
required: false
skip:
description: 'Skip Chromatic tests, but mark the commit as passing'
required: false
storybookBaseDir:
description: 'Relative path from repository root to Storybook project root'
required: false
storybookBuildDir:
description: 'Provide a directory with your built storybook; use if you have already built your storybook'
required: false
storybookConfigDir:
description: 'Relative path from where you run Chromatic to your Storybook config directory'
required: false
storybookLogFile:
description: 'Write Storybook build logs to a file'
required: false
token:
description: 'Your github token'
required: false
traceChanged:
description: 'Print dependency trace for changed files to affected story files; set to "expanded" to list individual modules'
required: false
untraced:
description: 'Disregard these files and their dependencies when tracing dependent stories for TurboSnap'
required: false
uploadMetadata:
description: 'Upload Chromatic metadata files as part of the published Storybook'
required: false
workingDir:
description: 'Working directory for the package.json file'
required: false
zip:
description: 'Publish your Storybook to Chromatic as a single zip file instead of individual content files'
required: false
junitReport:
description: 'Write build results to a JUnit XML file'
required: false
outputs:
code:
description: 'The exit code for the current run of the Chromatic CLI'
url:
description: 'An alias for the build URL (e.g. https://www.chromatic.com/build?appId=<app id goes here>&number=<build number>)'
buildUrl:
description: 'The build URL (e.g. https://www.chromatic.com/build?appId=<app id goes here>&number=<build number>)'
storybookUrl:
description: 'The Storybook preview URL for your current branch / Pull Request (e.g. https://<app id goes here>-<branch hash>.chromatic.com/)'
specCount:
description: 'The number of stories in the published Storybook'
componentCount:
description: 'The number of components in the published Storybook'
testCount:
description: 'The number of tests on the build'
changeCount:
description: 'The number of tests with visual changes, including any inherited changes (e.g. due to TurboSnap)'
errorCount:
description: 'The number of tests with error(s), including any inherited errors (e.g. due to TurboSnap)'
interactionTestFailuresCount:
description: 'The number of stories with interaction test failures'
actualCaptureCount:
description: 'The number of captured snapshots'
inheritedCaptureCount:
description: 'The number of inherited (not captured) snapshots (e.g. due to TurboSnap)'
runs:
main: action/register.js
using: node20 # Sync with `target` in tsup.config.ts