Make 'conclusion' optional unless 'status' is required, closes #4, based on @Akrog's fork
7 files changed
tree: 7c6b059d6e6976d5bd35cc38a1607a579311a734
  1. .github/
  2. __tests__/
  3. dist/
  4. src/
  5. .eslintignore
  6. .eslintrc.json
  7. .gitignore
  8. .prettierignore
  9. .prettierrc.json
  10. action.yml
  11. jest.config.js
  12. LICENSE
  13. package-lock.json
  14. package.json
  15. README.md
  16. tsconfig.eslint.json
  17. tsconfig.json
README.md

GitHub Actions: checks-action build-test

This GitHub Action allows you to create Check Runs directly from your GitHub Action workflow. While each job of a workflow already creates a Check Run, this Action allows to include annotations, images, actions or any other parameters supported by the Check Runs API.

Usage

The following shows how to publish a Check Run which will have the same status as your job and contains the output of another action. This will be shown predominantly in a Pull Request or on the workflow run.

name: "build-test"
on: [push]

jobs:
  test_something:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - uses: actions/create-outputs@v0.0.0-fake
      id: test
    - uses: LouisBrunner/checks-action@v0.1.0
      if: always()
      with:
        token: ${{ secrets.GITHUB_TOKEN }}
        name: Test XYZ
        conclusion: ${{ job }}
        output:
          summary: ${{ steps.test.outputs.summary }}
          text_description: ${{ steps.test.outputs.description }}

See the examples workflow for more details and examples (and see the associated runs to see how it will look like).

Inputs

token

Required Your GITHUB_TOKEN

name

Required The name of your check

conclusion

Optional (Required if status is completed, the default) The conclusion of your check, can be either success, failure, neutral, cancelled, timed_out or action_required

status

Optional The status of your check, defaults to completed, can be either queued, in_progress, completed

action_url

Optional The URL to call back to when using action_required as a conclusion of your check or when including actions

See Check Runs API (action_required) or Check Runs API (actions) for more information

output

Optional A JSON object (as a string) containing the output of your check, required when using annotations or images.

Supports the following properties:

  • summary: Required, summary of your check
  • text_description: Optional, a text description of your annotation (if any)

See Check Runs API for more information

annotations

Optional A JSON array (as a string) containing the annotations of your check, requires output to be included.

Supports the same properties with the same types and names as the Check Runs API

images

Optional A JSON array (as a string) containing the images of your check, requires output to be included.

Supports the same properties with the same types and names as the Check Runs API

actions

Optional A JSON array (as a string) containing the actions of your check.

Supports the same properties with the same types and names as the Check Runs API

Issues

  • Action Required conclusion: button doesn't work
  • Action elements: button doesn't work
  • Non-completed status: too many arguments required
  • Name is required when completing a non-completed status check even though we don't use it (see examples test_with_init*)