...
1name: chart-publish
2"on":
3 push:
4 tags:
5 - 'chart/v*'
6jobs:
7 chart-publish:
8 runs-on: ubuntu-latest
9 name: chart-publish
10 env:
11 AWS_S3_BUCKET: ${{ secrets.AWS_S3_BUCKET }}
12 AWS_ACCESS_KEY_ID: ${{ secrets.GH_AWS_ACCESS_KEY_ID }}
13 AWS_SECRET_ACCESS_KEY: ${{ secrets.GH_AWS_SECRET_ACCESS_KEY }}
14 AWS_EC2_METADATA_DISABLED: true
15 GH_GITHUB_API_KEY: ${{ secrets.GH_GITHUB_API_KEY }}
16 DEV_REGISTRY: ${{ secrets.DEV_REGISTRY }}
17 RELEASE_REGISTRY: ${{ secrets.RELEASE_REGISTRY }}
18 steps:
19 - uses: actions/checkout@v2
20 with:
21 fetch-depth: 0
22 - name: "Install Deps"
23 uses: ./.github/actions/setup-deps
24 - run: |
25 make release/push-chart
26 - id: check-slack-webhook
27 name: Assign slack webhook variable
28 run: echo "slack_webhook_url=${{secrets.SLACK_WEBHOOK_URL}}" >> $GITHUB_OUTPUT
29 - name: Slack notification
30 if: steps.check-slack-webhook.outputs.slack_webhook_url && always()
31 uses: edge/simple-slack-notify@master
32 env:
33 SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
34 with:
35 status: ${{ job.status }}
36 success_text: "Chart successfully published for ${env.GITHUB_REF}"
37 failure_text: '${env.GITHUB_WORKFLOW} (${env.GITHUB_RUN_NUMBER}) build failed'
38 cancelled_text: '${env.GITHUB_WORKFLOW} (${env.GITHUB_RUN_NUMBER}) build was cancelled'
39 fields: |
40 [{ "title": "Repository", "value": "${env.GITHUB_REPOSITORY}", "short": true },
41 { "title": "Branch", "value": "${env.GITHUB_REF}", "short": true },
42 { "title": "Action URL", "value": "${env.GITHUB_SERVER_URL}/${env.GITHUB_REPOSITORY}/actions/runs/${env.GITHUB_RUN_ID}"}
43 ]
44 - uses: ./.github/actions/after-job
45 if: always()
46 chart-create-gh-release:
47 if: ${{ ! contains(github.ref, '-') }}
48 runs-on: ubuntu-latest
49 needs: [chart-publish]
50 name: "Create GitHub release"
51 env:
52 GIT_TOKEN: ${{ secrets.GH_GITHUB_API_KEY }}
53 steps:
54 - uses: actions/checkout@v2
55 with:
56 fetch-depth: 0
57 - name: "Install Deps"
58 uses: ./.github/actions/setup-deps
59 - name: "gh auth login"
60 run: |
61 echo "${GIT_TOKEN}" | gh auth login --with-token
62 - name: Create GitHub release
63 id: step-create-gh-release
64 run: |
65 make release/chart-create-gh-release
66 - id: check-slack-webhook
67 name: Assign slack webhook variable
68 run: echo "slack_webhook_url=${{secrets.SLACK_WEBHOOK_URL}}" >> $GITHUB_OUTPUT
69 - name: Slack notification
70 if: steps.check-slack-webhook.outputs.slack_webhook_url && always()
71 uses: edge/simple-slack-notify@master
72 env:
73 SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
74 with:
75 status: ${{ job.status }}
76 success_text: 'Chart GitHub release was created: ${{ steps.step-create-gh-release.outputs.url }}'
77 failure_text: 'Chart GitHub release failed'
78 cancelled_text: 'Chart GitHub release was was cancelled'
79 fields: |
80 [{ "title": "Repository", "value": "${env.GITHUB_REPOSITORY}", "short": true },
81 { "title": "Branch", "value": "${env.GITHUB_REF}", "short": true },
82 { "title": "Action URL", "value": "${env.GITHUB_SERVER_URL}/${env.GITHUB_REPOSITORY}/actions/runs/${env.GITHUB_RUN_ID}"}
83 ]
84 - uses: ./.github/actions/after-job
85 if: always()
View as plain text