@@ -2,9 +2,11 @@ name: Lint and Test Chart
22
33on :
44 pull_request :
5+ branches :
6+ - master
7+ - release-v*
58 paths :
6- - .github/workflows/lint-test-chart.yaml
7- - " charts/metrics-server/**"
9+ - charts/metrics-server/**
810
911permissions :
1012 contents : read
2325 with :
2426 fetch-depth : 0
2527
28+ - name : Setup
29+ id : setup
30+ run : |
31+ set -euo pipefail
32+
33+ chart_version="$(yq eval '.version' ./charts/metrics-server/Chart.yaml)"
34+ changed=false
35+
36+ if [[ -n "$(ct list-changed --target-branch=master)" ]]; then
37+ changed=true
38+ fi
39+
40+ {
41+ echo "chart_version=${chart_version}"
42+ echo "changed=${changed}"
43+ } >> "${GITHUB_OUTPUT}"
44+
2645 - name : Set-up Python
2746 uses : actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
2847 with :
@@ -36,33 +55,15 @@ jobs:
3655 - name : Set-up chart-testing
3756 uses : helm/chart-testing-action@0d28d3144d3a25ea2cc349d6e59901c4ff469b3b # v2.7.0
3857
39- - name : Check for changes
40- id : changes
41- run : |
42- changed="$(ct list-changed --target-branch=master)"
43- if [[ -n "${changed}" ]]
44- then
45- echo "changed=true" >> "${GITHUB_OUTPUT}"
46- else
47- echo "changed=false" >> "${GITHUB_OUTPUT}"
48- fi
49-
50- - name : Get chart version
51- id : chart_version
52- if : steps.changes.outputs.changed == 'true'
53- uses : mikefarah/yq@f03c9dc599c37bfcaf533427211d05e51e6fee64 # v4.47.1
54- with :
55- cmd : yq eval '.version' './charts/metrics-server/Chart.yaml'
56-
5758 - name : Get changelog entry
58- if : steps.changes .outputs.changed == 'true'
59+ if : steps.setup .outputs.changed == 'true'
5960 uses : mindsers/changelog-reader-action@32aa5b4c155d76c94e4ec883a223c947b2f02656 # v2.2.3
6061 with :
6162 path : charts/metrics-server/CHANGELOG.md
62- version : ${{ steps.chart_version .outputs.result }}
63+ version : ${{ steps.setup .outputs.chart_version }}
6364
6465 - name : Set-up Artifact Hub CLI
65- if : steps.changes .outputs.changed == 'true'
66+ if : steps.setup .outputs.changed == 'true'
6667 uses : action-stars/install-tool-from-github-release@f2e83e089fa618aa7e9fd3452fbcf4fe1598ede2 # v0.2.5
6768 with :
6869 github_token : ${{ github.token }}
@@ -73,21 +74,21 @@ jobs:
7374 version : latest
7475
7576 - name : Run Artifact Hub lint
76- if : steps.changes .outputs.changed == 'true'
77+ if : steps.setup .outputs.changed == 'true'
7778 run : ah lint --kind helm || exit 1
7879
7980 - name : Run chart-testing lint
80- if : steps.changes .outputs.changed == 'true'
81+ if : steps.setup .outputs.changed == 'true'
8182 run : ct lint --target-branch=master --check-version-increment=false
8283
8384 - name : Create Kind cluster
84- if : steps.changes .outputs.changed == 'true'
85+ if : steps.setup .outputs.changed == 'true'
8586 uses : helm/kind-action@a1b0e391336a6ee6713a0583f8c6240d70863de3 # v1.12.0
8687 with :
8788 wait : 120s
8889
8990 - name : Install cert-manager dependency
90- if : steps.changes .outputs.changed == 'true'
91+ if : steps.setup .outputs.changed == 'true'
9192 run : |
9293 helm repo add jetstack https://charts.jetstack.io
9394 helm install cert-manager jetstack/cert-manager \
9899 --set extraArgs='{--enable-certificate-owner-ref}'
99100
100101 - name : Prepare existing secret test scenario
101- if : steps.changes .outputs.changed == 'true'
102+ if : steps.setup .outputs.changed == 'true'
102103 run : |
103104 openssl req -x509 -newkey rsa:2048 -sha256 -days 365 \
104105 -nodes -keyout ${{ runner.temp }}/tls.key -out ${{ runner.temp }}/tls.crt \
@@ -119,5 +120,5 @@ jobs:
119120 rm ${{ runner.temp }}/tls.key ${{ runner.temp }}/tls.crt
120121
121122 - name : Run chart-testing install
122- if : steps.changes .outputs.changed == 'true'
123+ if : steps.setup .outputs.changed == 'true'
123124 run : ct install --target-branch=master --namespace kube-system
0 commit comments