1
1
name : Release
2
2
3
3
on :
4
- push :
5
- tags :
6
- - policy-controller-v*
7
- - policies-v*
4
+ workflow_call :
5
+ inputs :
6
+ chart_name :
7
+ type : string
8
+ required : true
9
+ chart_release :
10
+ type : string
11
+ required : true
8
12
9
13
jobs :
10
14
release :
@@ -24,31 +28,31 @@ jobs:
24
28
run : |
25
29
# tag names are in the format <chart-name>-v<semantic-version>
26
30
# so we need to extract the chart name
27
- chart_name =$(echo -n ${{ github.ref_name }} | awk -F'-v' '{print $1}')
28
- echo chart_name=$chart_name >> $GITHUB_OUTPUT
31
+ release_name =$(echo -n ${{ inputs.chart_release }} | awk -F'-v' '{print $1}')
32
+ echo release_name=$release_name >> $GITHUB_OUTPUT
29
33
30
34
# extract the version from the tag name
31
- version=$(echo -n ${{ github.ref_name }} | sed "s/^$chart_name -//")
32
- echo chart_version =$version >> $GITHUB_OUTPUT
35
+ version=$(echo -n ${{ inputs.chart_release }} | sed "s/^$release_name -//")
36
+ echo release_version =$version >> $GITHUB_OUTPUT
33
37
- name : Package Helm chart
34
- run : helm package charts/${{ steps.release-details.outputs.chart_name }}
38
+ run : helm package charts/${{ steps.release-details.outputs.release_name }}
35
39
- name : Login to GitHub Container Registry
36
40
uses : docker/login-action@v3
37
41
with :
38
42
registry : ${{ env.REGISTRY }}
39
43
username : ${{ github.actor }}
40
44
password : ${{ secrets.GITHUB_TOKEN }}
41
45
- name : Push packaged chart to GHCR
42
- run : helm push ${{ github.ref_name }}.tgz oci://${{ env.REGISTRY }}/${{ github.repository }}
46
+ run : helm push ${{ inputs.chart_name }}.tgz oci://${{ env.REGISTRY }}/${{ github.repository }}
43
47
- uses : imjasonh/setup-crane@00c9e93efa4e1138c9a7a5c594acd6c75a2fbf0c # v0.3
44
48
- name : Get pushed chart digest
45
49
id : get-digest
46
50
run : |
47
- digest=$(crane digest ${{ env.REGISTRY }}/${{ github.repository }}/${{ steps.release-details.outputs.chart_name }}:${{ steps.release-details.outputs.chart_version }})
51
+ digest=$(crane digest ${{ env.REGISTRY }}/${{ github.repository }}/${{ steps.release-details.outputs.release_name }}:${{ steps.release-details.outputs.release_version }})
48
52
echo digest=$digest >> $GITHUB_OUTPUT
49
53
- name : Attest
50
54
uses : actions/attest-build-provenance@173725a1209d09b31f9d30a3890cf2757ebbff0d # v1.1.2
51
55
with :
52
- subject-name : ${{ env.REGISTRY }}/${{ github.repository }}/${{ steps.release-details.outputs.chart_name }}
56
+ subject-name : ${{ env.REGISTRY }}/${{ github.repository }}/${{ steps.release-details.outputs.release_name }}
53
57
subject-digest : ${{ steps.get-digest.outputs.digest }}
54
58
push-to-registry : true
0 commit comments