Skip to content

Commit 5247849

Browse files
committed
Revert event reporter changes (#533)
* Revert "chore: remove deprecated event reporter templates for rollout and wor… (#490)" This reverts commit 6bf31fe. * bump cf-argocd-extras chart version to 0.5.5
1 parent 427ed27 commit 5247849

29 files changed

+1293
-55
lines changed

charts/gitops-runtime/Chart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,4 +129,4 @@ dependencies:
129129
condition: gitops-operator.enabled
130130
- name: cf-argocd-extras
131131
repository: oci://quay.io/codefresh/charts
132-
version: 0.5.4
132+
version: 0.5.5
Lines changed: 151 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,151 @@
1+
{{/*
2+
Create chart name and version as used by the chart label.
3+
*/}}
4+
{{- define "event-reporters.chart" -}}
5+
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
6+
{{- end }}
7+
8+
{{/*
9+
Expand the name of the chart.
10+
*/}}
11+
{{- define "event-reporters.rollout-reporter.name" -}}
12+
{{- print "rollout-reporter"}}
13+
{{- end }}
14+
15+
{{/*
16+
Create a default fully qualified app name.
17+
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
18+
If release name contains chart name it will be used as a full name.
19+
*/}}
20+
{{- define "event-reporters.rollout-reporter.fullname" -}}
21+
{{- print "rollout-reporter"}}
22+
{{- end }}
23+
24+
{{/*
25+
Common labels
26+
*/}}
27+
{{- define "event-reporters.rollout-reporter.labels" -}}
28+
helm.sh/chart: {{ include "event-reporters.chart" . }}
29+
{{ include "event-reporters.rollout-reporter.selectorLabels" . }}
30+
{{- if .Chart.AppVersion }}
31+
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
32+
{{- end }}
33+
app.kubernetes.io/managed-by: Helm
34+
codefresh.io/internal: "true"
35+
{{- end }}
36+
37+
{{/*
38+
Selector labels
39+
*/}}
40+
{{- define "event-reporters.rollout-reporter.selectorLabels" -}}
41+
app.kubernetes.io/part-of: rollout-reporter
42+
{{- end }}
43+
44+
{{/*
45+
Create the name of the service account to use
46+
*/}}
47+
{{- define "event-reporters.rollout-reporter.serviceAccountName" -}}
48+
{{- if .Values.rollout.serviceAccount.create }}
49+
{{- default (include "event-reporters.rollout-reporter.fullname" .) .Values.rollout.serviceAccount.name }}
50+
{{- else }}
51+
{{- default "default" .Values.rollout.serviceAccount.name }}
52+
{{- end }}
53+
{{- end }}
54+
55+
{{/*
56+
Expand the name of the chart.
57+
*/}}
58+
{{- define "event-reporters.workflow-reporter.name" -}}
59+
{{- print "workflow-reporter"}}
60+
{{- end }}
61+
62+
{{/*
63+
Create a default fully qualified app name.
64+
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
65+
If release name contains chart name it will be used as a full name.
66+
*/}}
67+
{{- define "event-reporters.workflow-reporter.fullname" -}}
68+
{{- print "workflow-reporter"}}
69+
{{- end }}
70+
71+
{{/*
72+
Common labels
73+
*/}}
74+
{{- define "event-reporters.workflow-reporter.labels" -}}
75+
helm.sh/chart: {{ include "event-reporters.chart" . }}
76+
{{ include "event-reporters.workflow-reporter.selectorLabels" . }}
77+
{{- if .Chart.AppVersion }}
78+
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
79+
{{- end }}
80+
app.kubernetes.io/managed-by: Helm
81+
codefresh.io/internal: "true"
82+
{{- end }}
83+
84+
{{/*
85+
Selector labels
86+
*/}}
87+
{{- define "event-reporters.workflow-reporter.selectorLabels" -}}
88+
app.kubernetes.io/part-of: workflow-reporter
89+
{{- end }}
90+
91+
{{/*
92+
Create the name of the service account to use
93+
*/}}
94+
{{- define "event-reporters.workflow-reporter.serviceAccountName" -}}
95+
{{- if .Values.workflow.serviceAccount.create }}
96+
{{- default "codefresh-sa" .Values.workflow.serviceAccount.name }}
97+
{{- else }}
98+
{{- default "default" .Values.workflow.serviceAccount.name }}
99+
{{- end }}
100+
{{- end }}
101+
102+
{{/*
103+
Create a single event-source sensor http trigger
104+
assumes the name, condition and payload.dependencyName are identical
105+
*/}}
106+
{{- define "event-reporters.http.trigger" -}}
107+
{{- $url := (printf "%s%s" .Values.global.codefresh.url .Values.global.codefresh.apiEventsPath | quote) -}}
108+
- template:
109+
name: {{ .name }}
110+
conditions: {{ .name }}
111+
http:
112+
method: POST
113+
url: {{ $url }}
114+
{{- if or .Values.global.codefresh.tls.caCerts.secret.create .Values.global.codefresh.tls.caCerts.secretKeyRef}}
115+
tls:
116+
caCertSecret:
117+
name: {{ .Values.global.codefresh.tls.caCerts.secret.create | ternary "codefresh-tls-certs" .Values.global.codefresh.tls.caCerts.secretKeyRef.name }}
118+
key: {{ .Values.global.codefresh.tls.caCerts.secret.create | ternary (default "ca-bundle.crt" .Values.global.codefresh.tls.caCerts.secret.key) .Values.global.codefresh.tls.caCerts.secretKeyRef.key }}
119+
{{- end }}
120+
headers:
121+
Content-Type: application/json
122+
secureHeaders:
123+
- name: Authorization
124+
valueFrom:
125+
secretKeyRef:
126+
key: token
127+
name: codefresh-token
128+
payload:
129+
- dest: {{ .payloadDest }}
130+
src:
131+
dataKey: body
132+
dependencyName: {{ .name }}
133+
{{- if .retryStrategy }}
134+
retryStrategy:
135+
{{- .retryStrategy | toYaml | nindent 4 }}
136+
{{- end }}
137+
{{- end -}}
138+
139+
{{/* Logging trigger for the sensor - gets sensor.logging dict */}}
140+
{{- define "event-reporters.log.trigger" -}}
141+
{{- if .enabled }}
142+
- template:
143+
name: log-trigger
144+
{{- if gt (int .intervalSeconds) 0 }}
145+
log:
146+
intervalSeconds: {{ .intervalSeconds }}
147+
{{- else }}
148+
log: {}
149+
{{- end }}
150+
{{- end }}
151+
{{- end }}
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
{{- define "event-reporters.rollout-reporter.eventsource"}}
2+
apiVersion: argoproj.io/v1alpha1
3+
kind: EventSource
4+
metadata:
5+
name: rollout-reporter
6+
labels:
7+
{{- include "event-reporters.rollout-reporter.labels" . | nindent 4}}
8+
spec:
9+
replicas: {{ .Values.rollout.eventSource.replicas }}
10+
eventBusName: {{ default "codefresh-eventbus" .Values.global.runtime.eventBus.name }}
11+
resource:
12+
analysisruns:
13+
eventTypes:
14+
- ADD
15+
- UPDATE
16+
- DELETE
17+
filter:
18+
createdBy: null
19+
group: argoproj.io
20+
resource: analysisruns
21+
version: v1alpha1
22+
replicasets:
23+
eventTypes:
24+
- ADD
25+
- UPDATE
26+
- DELETE
27+
filter:
28+
createdBy: null
29+
group: apps
30+
resource: replicasets
31+
version: v1
32+
rollouts:
33+
eventTypes:
34+
- ADD
35+
- UPDATE
36+
- DELETE
37+
filter:
38+
createdBy: null
39+
group: argoproj.io
40+
resource: rollouts
41+
version: v1alpha1
42+
template:
43+
container:
44+
name: ""
45+
resources:
46+
{{- with .Values.rollout.eventSource.resources }}
47+
{{- . | toYaml | nindent 8 }}
48+
{{- end }}
49+
serviceAccountName: {{ include "event-reporters.rollout-reporter.serviceAccountName" .}}
50+
tolerations:
51+
{{- with .Values.rollout.eventSource.tolerations | default .Values.global.tolerations }}
52+
{{- . | toYaml | nindent 6 }}
53+
{{- end }}
54+
nodeSelector:
55+
{{- with .Values.rollout.eventSource.nodeSelector | default .Values.global.nodeSelector }}
56+
{{- . | toYaml | nindent 6 }}
57+
{{- end }}
58+
affinity:
59+
{{- with .Values.affinity }}
60+
{{- . | toYaml | nindent 6 }}
61+
{{- end }}
62+
{{- end }}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
{{- define "event-reporters.rollout-reporter.rbac"}}
2+
apiVersion: rbac.authorization.k8s.io/v1
3+
kind: Role
4+
metadata:
5+
name: rollout-reporter-sa
6+
labels:
7+
app.kubernetes.io/part-of: rollout-reporter
8+
codefresh.io/internal: "true"
9+
rules:
10+
- apiGroups:
11+
- "*"
12+
resources:
13+
- "*"
14+
verbs:
15+
- "*"
16+
---
17+
apiVersion: rbac.authorization.k8s.io/v1
18+
kind: RoleBinding
19+
metadata:
20+
name: rollout-reporter-sa
21+
labels:
22+
app.kubernetes.io/part-of: workflow-reporter
23+
codefresh.io/internal: "true"
24+
roleRef:
25+
apiGroup: ""
26+
kind: Role
27+
name: rollout-reporter-sa
28+
subjects:
29+
- kind: ServiceAccount
30+
name: {{ include "event-reporters.rollout-reporter.serviceAccountName" . }}
31+
{{- end }}
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
{{- define "event-reporters.rollout-reporter.sensor"}}
2+
apiVersion: argoproj.io/v1alpha1
3+
kind: Sensor
4+
metadata:
5+
name: rollout-reporter
6+
labels:
7+
{{- include "event-reporters.rollout-reporter.labels" . | nindent 4 }}
8+
spec:
9+
replicas: {{ .Values.rollout.sensor.replicas }}
10+
dependencies:
11+
- name: rollouts
12+
eventSourceName: rollout-reporter
13+
eventName: rollouts
14+
- name: replicasets
15+
eventSourceName: rollout-reporter
16+
eventName: replicasets
17+
- name: analysisruns
18+
eventSourceName: rollout-reporter
19+
eventName: analysisruns
20+
eventBusName: {{ default "codefresh-eventbus" .Values.global.runtime.eventBus.name }}
21+
template:
22+
serviceAccountName: {{ include "event-reporters.rollout-reporter.serviceAccountName" .}}
23+
container:
24+
name: ""
25+
{{- include "codefresh-gitops-runtime.components.common_helpers.container-templates.env-vars" .Values.rollout.sensor.env | nindent 6 }}
26+
resources:
27+
{{- with .Values.rollout.sensor.resources }}
28+
{{- . | toYaml | nindent 8 }}
29+
{{- end }}
30+
tolerations:
31+
{{- with .Values.rollout.sensor.tolerations | default .Values.global.tolerations }}
32+
{{- . | toYaml | nindent 6 }}
33+
{{- end }}
34+
nodeSelector:
35+
{{- with .Values.rollout.sensor.nodeSelector | default .Values.global.nodeSelector}}
36+
{{- . | toYaml | nindent 6 }}
37+
{{- end }}
38+
affinity:
39+
{{- with .Values.affinity }}
40+
{{- . | toYaml | nindent 6 }}
41+
{{- end }}
42+
triggers:
43+
{{- include "event-reporters.http.trigger" (dict "name" "rollouts" "Values" .Values "payloadDest" "data.object" "retryStrategy" .Values.rollout.sensor.retryStrategy) | nindent 4 }}
44+
{{- include "event-reporters.http.trigger" (dict "name" "replicasets" "Values" .Values "payloadDest" "data.object" "retryStrategy" .Values.rollout.sensor.retryStrategy) | nindent 4 }}
45+
{{- include "event-reporters.http.trigger" (dict "name" "analysisruns" "Values" .Values "payloadDest" "data.object" "retryStrategy" .Values.rollout.sensor.retryStrategy) | nindent 4 }}
46+
{{- include "event-reporters.log.trigger" (.Values.rollout.sensor.logging) | nindent 4 }}
47+
{{- end }}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{{- define "event-reporters.rollout-reporter.sa"}}
2+
{{- if .Values.rollout.serviceAccount.create }}
3+
apiVersion: v1
4+
kind: ServiceAccount
5+
metadata:
6+
name: {{ include "event-reporters.rollout-reporter.serviceAccountName" .}}
7+
labels:
8+
{{- include "event-reporters.rollout-reporter.labels" . | nindent 4 }}
9+
{{- end }}
10+
{{- end }}
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
{{- define "event-reporters.workflow-reporter.eventsource"}}
2+
apiVersion: argoproj.io/v1alpha1
3+
kind: EventSource
4+
metadata:
5+
name: workflow-reporter
6+
labels:
7+
{{- include "event-reporters.workflow-reporter.labels" . | nindent 4 }}
8+
spec:
9+
replicas: {{ .Values.workflow.eventSource.replicas }}
10+
eventBusName: {{ default "codefresh-eventbus" .Values.global.runtime.eventBus.name }}
11+
resource:
12+
workflows:
13+
eventTypes:
14+
- ADD
15+
- UPDATE
16+
- DELETE
17+
filter:
18+
createdBy: null
19+
namespace: {{ .Release.Namespace }}
20+
group: argoproj.io
21+
resource: workflows
22+
version: v1alpha1
23+
template:
24+
container:
25+
name: ""
26+
resources:
27+
{{- with .Values.workflow.eventSource.resources }}
28+
{{- . | toYaml | nindent 8 }}
29+
{{- end }}
30+
serviceAccountName: {{ include "event-reporters.workflow-reporter.serviceAccountName" .}}
31+
tolerations:
32+
{{- with .Values.workflow.eventSource.tolerations | default .Values.global.tolerations }}
33+
{{- toYaml . | nindent 6 }}
34+
{{- end }}
35+
nodeSelector:
36+
{{- with .Values.workflow.eventSource.nodeSelector | default .Values.global.nodeSelector }}
37+
{{- toYaml . | nindent 6 }}
38+
{{- end }}
39+
affinity:
40+
{{- with .Values.affinity }}
41+
{{- toYaml . | nindent 6 }}
42+
{{- end }}
43+
{{- end }}

charts/gitops-runtime/templates/workflow-reporter-rbac.yaml renamed to charts/gitops-runtime/templates/_components/event-reporters/workflow-reporter/_rbac.yaml

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,4 @@
1-
{{/*
2-
Workflow reporter RBAC for backward compatibility
3-
*/}}
4-
{{- if (index .Values "event-reporters" "workflow" "serviceAccount" "create") }}
1+
{{- define "event-reporters.workflow-reporter.rbac"}}
52
apiVersion: rbac.authorization.k8s.io/v1
63
kind: Role
74
metadata:
@@ -21,12 +18,13 @@ kind: RoleBinding
2118
metadata:
2219
name: workflow-reporter
2320
labels:
24-
{{- include "event-reporters.workflow-reporter.labels" . | nindent 4 }}
21+
app.kubernetes.io/part-of: workflow-reporter
22+
codefresh.io/internal: "true"
2523
roleRef:
26-
apiGroup: rbac.authorization.k8s.io
24+
apiGroup: ""
2725
kind: Role
2826
name: workflow-reporter
2927
subjects:
3028
- kind: ServiceAccount
31-
name: {{ include "event-reporters.workflow-reporter.serviceAccountName" . }}
32-
{{- end }}
29+
name: {{ include "event-reporters.workflow-reporter.serviceAccountName" .}}
30+
{{- end }}

0 commit comments

Comments
 (0)