167 lines
6.5 KiB
YAML
Executable File
167 lines
6.5 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
|
|
buildCommand:
|
|
description: 'The command that builds your Storybook (when your build command does not exist in "scripts" of your package.json)'
|
|
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
|
|
logLevel:
|
|
description: 'One of: silent, error, warn, info, debug (default: info)'
|
|
required: false
|
|
logPrefix:
|
|
description: 'Custom prefix for log messages (default: current timestamp)'
|
|
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
|
|
outputDir:
|
|
description: 'Relative path to target directory containing your Storybook (a temporary directory is used if this is not set)'
|
|
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
|
|
skipUpdateCheck:
|
|
description: 'Skips Chromatic CLI update check'
|
|
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
|