This repository has been archived by the owner on Nov 16, 2023. It is now read-only.
workflow-conclusion-action
/
2.2.2
workflow-conclusion-action 2.2.2
Install from the command line:
Learn more about npm packages
$ npm install @technote-space/workflow-conclusion-action@2.2.2
Install via package.json:
"@technote-space/workflow-conclusion-action": "2.2.2"
About this version
Read this in other languages: English, 日本語.
これはワークフローの結果を取得するためのGitHub Actions
です。
例:Lint => Test => Publish (タグ付与時のみ) => slack (いずれかのジョブが失敗した場合のみ)
on: push
name: CI
jobs:
lint:
name: ESLint
runs-on: ubuntu-latest
...
test:
name: Coverage
needs: lint
strategy:
matrix:
node: ['11', '12']
...
publish:
name: Publish Package
needs: test
if: startsWith(github.ref, 'refs/tags/v')
...
slack:
name: Slack
needs: publish # set needs only last job except this job
runs-on: ubuntu-latest
if: always() # set always
steps:
# run this action to get workflow conclusion
# You can get conclusion via env (env.WORKFLOW_CONCLUSION)
- uses: technote-space/workflow-conclusion-action@v2
- uses: 8398a7/action-slack@v3
with:
# status: ${{ env.WORKFLOW_CONCLUSION }} # neutral, success, skipped, cancelled, timed_out, action_required, failure
status: failure
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
if: env.WORKFLOW_CONCLUSION == 'failure' # notify only if failure
すべてのジョブが正常だったため、Slackアクションはスキップされます。
いくつかのジョブがスキップされた場合でもSlackアクションは実行されます。