Skip to content

Commit 5f51785

Browse files
authored
Merge pull request #510 from holyspectral/enable-release-pre-release-charts
chore: bump prerelease versions for prerelease
2 parents c0cf9e5 + 8f1f42f commit 5f51785

2 files changed

Lines changed: 135 additions & 0 deletions

File tree

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
name: Update RuntimeEnforcer prerelease chart versions
2+
3+
sources:
4+
chartVersion:
5+
name: "Get latest runtime-enforcer helm version"
6+
kind: yaml
7+
transformers:
8+
- semverinc: patch
9+
spec:
10+
file: charts/runtime-enforcer/Chart.yaml
11+
key: $.version
12+
releaseVersion:
13+
name: "Get latest runtime-enforcer version"
14+
kind: githubrelease
15+
spec:
16+
owner: '{{ requiredEnv .github.owner }}'
17+
repository: runtime-enforcer
18+
token: '{{ requiredEnv .github.token }}'
19+
typefilter: # Getting both pre-releases and releases
20+
prerelease: true
21+
release: true
22+
versionfilter:
23+
kind: "semver"
24+
pattern: ">=v0.0.0-0" # -0 suffix is required to get prerelease
25+
26+
scms:
27+
default:
28+
kind: github
29+
spec:
30+
user: "{{ .github.author }}"
31+
email: "{{ .github.email }}"
32+
directory: "/tmp/helm-charts"
33+
owner: "{{ requiredEnv .github.owner }}"
34+
repository: "runtime-enforcer"
35+
token: "{{ requiredEnv .github.token }}"
36+
username: "{{ requiredEnv .github.user }}"
37+
branch: "{{ .github.branch }}"
38+
commitusingapi: true
39+
commitmessage:
40+
type: "chore"
41+
title: "update runtime enforcer helm charts"
42+
hidecredit: true
43+
footers: "Signed-off-by: RuntimeEnforcer bot <runtime-enforcer-bot@users.noreply.github.com>"
44+
45+
conditions:
46+
prerelease:
47+
name: Check if the latest runtime-enforcer release is a pre-release.
48+
disablesourceinput: true
49+
kind: shell
50+
spec:
51+
command: 'echo {{ source `releaseVersion` }} | grep -E "v[0-9]+\.[0-9]+\.[0-9]+-([0-9A-Za-z-]+\.)*[0-9A-Za-z-]+"'
52+
53+
actions:
54+
default:
55+
title: 'chore: helm chart {{ source "chartVersion" }}-prerelease-{{ source "releaseVersion" }} release'
56+
kind: github/pullrequest
57+
scmid: default
58+
spec:
59+
automerge: false
60+
mergemethod: squash
61+
description: |
62+
Automatic Helm chart {{ source "chartVersion" }}-prerelease-{{ source "releaseVersion" }} update.
63+
This PR has been created by the automation used to automatically update the Helm charts when RuntimeEnforcer is released or helm chart content is updated.
64+
REMEMBER IF YOU WANT TO MERGE IN A SINGLE COMMIT CHANGES AND VERSION BUMP, YOU MUST SQUASH THE COMMIT BEFORE MERGING THIS PR!
65+
draft: false
66+
labels:
67+
- "chore"
68+
69+
targets:
70+
update_helm_version:
71+
scmid: default
72+
name: update Helm chart version
73+
kind: yaml
74+
disablesourceinput: true
75+
spec:
76+
file: charts/runtime-enforcer/Chart.yaml
77+
key: $.version
78+
value: '{{ source "chartVersion" }}-prerelease-{{ source "releaseVersion" }}'
79+
update_appversion:
80+
scmid: default
81+
name: update Helm chart appVersion
82+
kind: yaml
83+
sourceid: releaseVersion
84+
spec:
85+
file: charts/runtime-enforcer/Chart.yaml
86+
key: $.appVersion
87+
update_controller_version:
88+
scmid: default
89+
name: update Helm chart controller version
90+
kind: yaml
91+
sourceid: releaseVersion
92+
spec:
93+
file: charts/runtime-enforcer/values.yaml
94+
key: $.controller.image.tag
95+
update_agent_version:
96+
scmid: default
97+
name: update Helm chart agent version
98+
kind: yaml
99+
sourceid: releaseVersion
100+
spec:
101+
file: charts/runtime-enforcer/values.yaml
102+
key: $.agent.image.tag
103+
update_debugger_version:
104+
scmid: default
105+
name: update Helm chart debugger version
106+
kind: yaml
107+
sourceid: releaseVersion
108+
spec:
109+
file: charts/runtime-enforcer/values.yaml
110+
key: $.debugger.image.tag
111+
generate_values_schema:
112+
kind: shell
113+
disablesourceinput: true
114+
scmid: default
115+
name: Generate values.schema.json file
116+
spec:
117+
changedif:
118+
kind: file/checksum
119+
spec:
120+
files:
121+
- charts/runtime-enforcer/values.schema.json
122+
command: |
123+
make generate-chart

updatecli/updatecli.release.d/helm-chart-update.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,12 @@ sources:
1616
owner: '{{ requiredEnv .github.owner }}'
1717
repository: runtime-enforcer
1818
token: '{{ requiredEnv .github.token }}'
19+
typefilter: # Getting both pre-releases and releases
20+
prerelease: true
21+
release: true
1922
versionfilter:
2023
kind: "semver"
24+
pattern: ">=v0.0.0-0" # -0 suffix is required to get prerelease
2125

2226
scms:
2327
default:
@@ -38,6 +42,14 @@ scms:
3842
hidecredit: true
3943
footers: "Signed-off-by: RuntimeEnforcer bot <runtime-enforcer-bot@users.noreply.github.com>"
4044

45+
conditions:
46+
release:
47+
name: Check if the latest runtime-enforcer release is a official release
48+
disablesourceinput: true
49+
kind: shell
50+
spec:
51+
command: '! echo {{ source `releaseVersion` }} | grep -E "v[0-9]+\.[0-9]+\.[0-9]+-([0-9A-Za-z-]+\.)*[0-9A-Za-z-]+"'
52+
4153
actions:
4254
default:
4355
title: 'chore: helm chart {{ source "chartVersion" }} release'

0 commit comments

Comments
 (0)