Setting exit codes for actions

You can use exit codes to set the status of an action. GitHub displays statuses to indicate passing or failing actions.

GitHub Actions is available with GitHub Free, GitHub Pro, GitHub Free for organizations, GitHub Team, GitHub Enterprise Cloud, and GitHub One. GitHub Actions is not available for private repositories owned by accounts using legacy per-repository plans. For more information, see "GitHub's products."

In this article

About exit codes

GitHub uses the exit code to set the GitHub Action's check run status, which can be success or failure.

Exit statusCheck run statusDescription
0successThe action completed successfully and other tasks that depends on it can begin.
Nonzero valuefailureAny other exit code indicates the action failed. When an action fails, all concurrent actions are canceled and future actions are skipped. The check run and check suite both get a failure status.

Setting a failure exit code in a JavaScript action

If you are creating a JavaScript action, you can use the actions toolkit @actions/core package to log a message and set a failure exit code. For example:

try {
  // something
} catch (error) {
  core.setFailed(error.message);
}

For more information, see "Creating a JavaScript action."

Setting a failure exit code in a Docker container action

If you are creating a Docker container action, you can set a failure exit code in your entrypoint.sh script. For example:

if <condition> ; then
  echo "Game over!"
  exit 1
fi

For more information, see "Creating a Docker container action."

Ask a human

Can't find what you're looking for?

Contact us