...
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@v3
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 steps:
52 - uses: actions/checkout@v3
53 with:
54 fetch-depth: 0
55 - name: "Install Deps"
56 uses: ./.github/actions/setup-deps
57 - name: "gh auth login"
58 run: |
59 gh auth login --with-token <<<'${{ secrets.GH_GITHUB_API_KEY }}'
60 - name: Create GitHub release
61 id: step-create-gh-release
62 run: |
63 make release/chart-create-gh-release
64 - id: check-slack-webhook
65 name: Assign slack webhook variable
66 run: echo "slack_webhook_url=${{secrets.SLACK_WEBHOOK_URL}}" >> $GITHUB_OUTPUT
67 - name: Slack notification
68 if: steps.check-slack-webhook.outputs.slack_webhook_url && always()
69 uses: edge/simple-slack-notify@master
70 env:
71 SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
72 with:
73 status: ${{ job.status }}
74 success_text: 'Chart GitHub release was created: ${{ steps.step-create-gh-release.outputs.url }}'
75 failure_text: 'Chart GitHub release failed'
76 cancelled_text: 'Chart GitHub release was was cancelled'
77 fields: |
78 [{ "title": "Repository", "value": "${env.GITHUB_REPOSITORY}", "short": true },
79 { "title": "Branch", "value": "${env.GITHUB_REF}", "short": true },
80 { "title": "Action URL", "value": "${env.GITHUB_SERVER_URL}/${env.GITHUB_REPOSITORY}/actions/runs/${env.GITHUB_RUN_ID}"}
81 ]
82 - uses: ./.github/actions/after-job
83 if: always()
View as plain text