feat(argo-rollouts): Update manifests for v1.0.1 (#752)

* feat(argo-rollouts): Update manifests for v1.0.1

Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com>

* fix: add template function for labels

Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com>

* fix: Apply changes from code review

Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com>

Co-authored-by: Oliver Bähler <oliverbaehler@hotmail.com>
This commit is contained in:
Marco Kilchhofer 2021-05-31 18:06:26 +02:00 committed by GitHub
parent 87855a4caa
commit 8deaa0a119
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 248 additions and 107 deletions

View file

@ -30,3 +30,35 @@ Create chart name and version as used by the chart label.
{{- define "argo-rollouts.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
{{- end -}}
{{/*
Common labels
*/}}
{{- define "argo-rollouts.labels" -}}
helm.sh/chart: {{ include "argo-rollouts.chart" . }}
{{ include "argo-rollouts.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
app.kubernetes.io/part-of: argo-rollouts
{{- end }}
{{/*
Selector labels
*/}}
{{- define "argo-rollouts.selectorLabels" -}}
app.kubernetes.io/name: {{ include "argo-rollouts.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{/*
Create the name of the service account to use
*/}}
{{- define "argo-rollouts.serviceAccountName" -}}
{{- if .Values.serviceAccount.create }}
{{- default (include "argo-rollouts.fullname" .) .Values.serviceAccount.name }}
{{- else }}
{{- default "default" .Values.serviceAccount.name }}
{{- end }}
{{- end }}

View file

@ -2,12 +2,11 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: {{ .Release.Name }}-aggregate-to-view
name: {{ include "argo-rollouts.fullname" . }}-aggregate-to-view
labels:
rbac.authorization.k8s.io/aggregate-to-view: "true"
app.kubernetes.io/component: aggregate-cluster-role
app.kubernetes.io/name: {{ .Release.Name }}-aggregate-to-view
app.kubernetes.io/part-of: {{ .Release.Name }}
app.kubernetes.io/component: {{ .Values.controller.component }}
{{- include "argo-rollouts.labels" . | nindent 4 }}
rules:
- apiGroups:
- argoproj.io
@ -27,12 +26,11 @@ rules:
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: {{ .Release.Name }}-aggregate-to-edit
name: {{ include "argo-rollouts.fullname" . }}-aggregate-to-edit
labels:
rbac.authorization.k8s.io/aggregate-to-edit: "true"
app.kubernetes.io/component: aggregate-cluster-role
app.kubernetes.io/name: {{ .Release.Name }}-aggregate-to-edit
app.kubernetes.io/part-of: {{ .Release.Name }}
app.kubernetes.io/component: {{ .Values.controller.component }}
{{- include "argo-rollouts.labels" . | nindent 4 }}
rules:
- apiGroups:
- argoproj.io
@ -58,12 +56,11 @@ rules:
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: {{ .Release.Name }}-aggregate-to-admin
name: {{ include "argo-rollouts.fullname" . }}-aggregate-to-admin
labels:
rbac.authorization.k8s.io/aggregate-to-admin: "true"
app.kubernetes.io/component: aggregate-cluster-role
app.kubernetes.io/name: {{ .Release.Name }}-aggregate-to-admin
app.kubernetes.io/part-of: {{ .Release.Name }}
app.kubernetes.io/component: {{ .Values.controller.component }}
{{- include "argo-rollouts.labels" . | nindent 4 }}
rules:
- apiGroups:
- argoproj.io

View file

@ -2,11 +2,10 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: {{ .Release.Name }}-clusterrole
name: {{ include "argo-rollouts.fullname" . }}
labels:
app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }}-clusterrole
app.kubernetes.io/part-of: {{ .Release.Name }}
{{- include "argo-rollouts.labels" . | nindent 4 }}
rules:
- apiGroups:
- argoproj.io
@ -57,6 +56,16 @@ rules:
- update
- patch
- delete
- apiGroups:
- ""
- apps
resources:
- deployments
- podtemplates
verbs:
- get
- list
- watch
# services patch needed to update selector of canary/stable/active/preview services
- apiGroups:
- ""
@ -135,6 +144,7 @@ rules:
- watch
- get
- update
- patch
- list
# trafficsplit access needed for using the SMI provider
- apiGroups:
@ -147,4 +157,15 @@ rules:
- get
- update
- patch
- apiGroups:
- getambassador.io
resources:
- mappings
verbs:
- create
- watch
- get
- update
- list
- delete
{{- end }}

View file

@ -2,17 +2,16 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: {{ .Release.Name }}-clusterrolebinding
name: {{ include "argo-rollouts.fullname" . }}
labels:
app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }}-clusterrolebinding
app.kubernetes.io/part-of: {{ .Release.Name }}
{{- include "argo-rollouts.labels" . | nindent 4 }}
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: {{ .Release.Name }}-clusterrole
name: {{ include "argo-rollouts.fullname" . }}
subjects:
- kind: ServiceAccount
name: {{ .Values.serviceAccount.name }}
name: {{ include "argo-rollouts.serviceAccountName" . }}
namespace: {{ .Release.Namespace }}
{{- end }}

View file

@ -1,50 +1,54 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}
name: {{ include "argo-rollouts.fullname" . }}
labels:
app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
{{- if .Values.podLabels }}
{{- toYaml .Values.podLabels | nindent 4 }}
{{- end }}
{{- include "argo-rollouts.labels" . | nindent 4 }}
spec:
selector:
matchLabels:
app.kubernetes.io/name: {{ .Release.Name }}
{{- include "argo-rollouts.selectorLabels" . | nindent 6 }}
strategy:
type: Recreate
template:
metadata:
{{- if .Values.podAnnotations }}
{{- with .Values.podAnnotations }}
annotations:
{{- range $key, $value := .Values.podAnnotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
app.kubernetes.io/name: {{ .Release.Name }}
{{- include "argo-rollouts.selectorLabels" . | nindent 8 }}
{{- range $key, $value := .Values.podLabels }}
{{ $key }}: {{ $value | quote }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
serviceAccountName: {{ .Values.serviceAccount.name }}
serviceAccountName: {{ include "argo-rollouts.serviceAccountName" . }}
containers:
- image: "{{ .Values.controller.image.repository }}:{{ .Values.controller.image.tag }}"
- image: "{{ .Values.controller.image.registry }}/{{ .Values.controller.image.repository }}:{{ default .Chart.AppVersion .Values.controller.image.tag }}"
{{- if not .Values.clusterInstall }}
args:
- --namespaced
{{- end }}
imagePullPolicy: {{ .Values.controller.image.pullPolicy }}
name: {{ .Values.controller.name }}
name: argo-rollouts
ports:
- containerPort: 8090
name: metrics
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
{{- toYaml .Values.containerSecurityContext | nindent 10 }}
resources:
{{- toYaml .Values.controller.resources | nindent 10 }}
{{- if .Values.controller.nodeSelector }}
nodeSelector:
{{- toYaml .Values.controller.nodeSelector | nindent 8 }}
{{- end }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
{{- if .Values.controller.tolerations }}
tolerations:
{{- toYaml .Values.controller.tolerations | nindent 8 }}
@ -53,5 +57,3 @@ spec:
affinity:
{{- toYaml .Values.controller.affinity | nindent 8 }}
{{- end }}
strategy:
type: Recreate

View file

@ -1,14 +1,14 @@
{{- if .Values.controller.metrics.serviceMonitor.enabled }}
apiVersion: v1
kind: Service
metadata:
name: {{ .Release.Name }}-metrics
name: {{ include "argo-rollouts.fullname" . }}-metrics
labels:
app.kubernetes.io/component: server
app.kubernetes.io/name: {{ .Release.Name }}-metrics
app.kubernetes.io/part-of: {{ .Release.Name }}
{{- include "argo-rollouts.labels" . | nindent 4 }}
{{- with .Values.serviceAnnotations }}
annotations:
{{- range $key, $value := .Values.serviceAnnotations }}
{{ $key }}: {{ $value | quote }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
ports:
@ -17,4 +17,5 @@ spec:
port: 8090
targetPort: 8090
selector:
app.kubernetes.io/name: {{ .Release.Name }}
{{- include "argo-rollouts.selectorLabels" . | nindent 6 }}
{{- end }}

View file

@ -1,11 +1,11 @@
{{- if not .Values.clusterInstall }}
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: {{ .Release.Name }}-role
name: {{ include "argo-rollouts.fullname" . }}
labels:
app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }}-role
app.kubernetes.io/part-of: {{ .Release.Name }}
{{- include "argo-rollouts.labels" . | nindent 4 }}
rules:
- apiGroups:
- argoproj.io
@ -145,3 +145,4 @@ rules:
- get
- update
- patch
{{- end }}

View file

@ -1,15 +1,16 @@
{{- if not .Values.clusterInstall }}
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: {{ .Release.Name }}-role-binding
name: {{ include "argo-rollouts.fullname" . }}
labels:
app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }}-role-binding
app.kubernetes.io/part-of: {{ .Release.Name }}
{{- include "argo-rollouts.labels" . | nindent 4 }}
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: {{ .Release.Name }}-role
name: {{ include "argo-rollouts.fullname" . }}
subjects:
- kind: ServiceAccount
name: {{ .Values.serviceAccount.name }}
name: {{ include "argo-rollouts.serviceAccountName" . }}
{{- end }}

View file

@ -1,8 +1,13 @@
{{- if .Values.serviceAccount.create -}}
apiVersion: v1
kind: ServiceAccount
metadata:
name: {{ .Values.serviceAccount.name }}
name: {{ include "argo-rollouts.serviceAccountName" . }}
labels:
app.kubernetes.io/component: {{ .Values.controller.component }}
app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/part-of: {{ .Release.Name }}
{{- include "argo-rollouts.labels" . | nindent 4 }}
{{- with .Values.serviceAccount.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- end }}

View file

@ -2,17 +2,16 @@
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: {{ .Release.Name }}
name: {{ include "argo-rollouts.fullname" . }}
labels:
app.kubernetes.io/component: server
app.kubernetes.io/name: {{ .Release.Name }}-metrics
app.kubernetes.io/part-of: {{ .Release.Name }}
{{- if .Values.controller.metrics.serviceMonitor.additionalLabels }}
{{ toYaml .Values.controller.metrics.serviceMonitor.additionalLabels | indent 4 }}
{{- include "argo-rollouts.labels" . | nindent 4 }}
{{- range $key, $value := .Values.controller.metrics.serviceMonitor.additionalLabels }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- if .Values.controller.metrics.serviceMonitor.additionalAnnotations }}
{{- with .Values.controller.metrics.serviceMonitor.additionalAnnotations }}
annotations:
{{ toYaml .Values.controller.metrics.serviceMonitor.additionalAnnotations | indent 4 }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
endpoints:
@ -23,6 +22,5 @@ spec:
selector:
matchLabels:
app.kubernetes.io/component: server
app.kubernetes.io/name: {{ .Release.Name }}-metrics
app.kubernetes.io/part-of: {{ .Release.Name }}
{{- include "argo-rollouts.selectorLabels" . | nindent 6 }}
{{- end }}

View file

@ -3,9 +3,9 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.4.1
controller-gen.kubebuilder.io/version: v0.5.0
{{- if .Values.crdAnnotations }}
{{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- end }}
labels:
app.kubernetes.io/name: argo-rollouts
@ -2308,6 +2308,7 @@ spec:
start:
type: string
step:
format: int64
type: integer
required:
- end
@ -2327,6 +2328,7 @@ spec:
start:
type: string
step:
format: int64
type: integer
required:
- end
@ -2348,8 +2350,10 @@ spec:
threshold:
properties:
marginal:
format: int64
type: integer
pass:
format: int64
type: integer
required:
- marginal
@ -2407,6 +2411,7 @@ spec:
jsonPath:
type: string
timeoutSeconds:
format: int64
type: integer
url:
type: string

View file

@ -3,9 +3,9 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.4.1
controller-gen.kubebuilder.io/version: v0.5.0
{{- if .Values.crdAnnotations }}
{{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- end }}
labels:
app.kubernetes.io/name: argo-rollouts
@ -2303,6 +2303,7 @@ spec:
start:
type: string
step:
format: int64
type: integer
required:
- end
@ -2322,6 +2323,7 @@ spec:
start:
type: string
step:
format: int64
type: integer
required:
- end
@ -2343,8 +2345,10 @@ spec:
threshold:
properties:
marginal:
format: int64
type: integer
pass:
format: int64
type: integer
required:
- marginal
@ -2402,6 +2406,7 @@ spec:
jsonPath:
type: string
timeoutSeconds:
format: int64
type: integer
url:
type: string

View file

@ -3,9 +3,9 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.4.1
controller-gen.kubebuilder.io/version: v0.5.0
{{- if .Values.crdAnnotations }}
{{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- end }}
labels:
app.kubernetes.io/name: argo-rollouts
@ -2303,6 +2303,7 @@ spec:
start:
type: string
step:
format: int64
type: integer
required:
- end
@ -2322,6 +2323,7 @@ spec:
start:
type: string
step:
format: int64
type: integer
required:
- end
@ -2343,8 +2345,10 @@ spec:
threshold:
properties:
marginal:
format: int64
type: integer
pass:
format: int64
type: integer
required:
- marginal
@ -2402,6 +2406,7 @@ spec:
jsonPath:
type: string
timeoutSeconds:
format: int64
type: integer
url:
type: string

View file

@ -3,9 +3,9 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.4.1
controller-gen.kubebuilder.io/version: v0.5.0
{{- if .Values.crdAnnotations }}
{{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- end }}
labels:
app.kubernetes.io/name: argo-rollouts

View file

@ -3,9 +3,9 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.4.1
controller-gen.kubebuilder.io/version: v0.5.0
{{- if .Values.crdAnnotations }}
{{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- toYaml .Values.crdAnnotations | nindent 4 }}
{{- end }}
labels:
app.kubernetes.io/name: argo-rollouts
@ -32,11 +32,13 @@ spec:
jsonPath: .status.replicas
name: Current
type: integer
- description: Total number of non-terminated pods targeted by this rollout that have the desired template spec
- description: Total number of non-terminated pods targeted by this rollout that
have the desired template spec
jsonPath: .status.updatedReplicas
name: Up-to-date
type: integer
- description: Total number of available pods (ready for at least minReadySeconds) targeted by this rollout
- description: Total number of available pods (ready for at least minReadySeconds)
targeted by this rollout
jsonPath: .status.availableReplicas
name: Available
type: integer
@ -303,6 +305,12 @@ spec:
- type: integer
- type: string
x-kubernetes-int-or-string: true
scaleDownDelayRevisionLimit:
format: int32
type: integer
scaleDownDelaySeconds:
format: int32
type: integer
stableMetadata:
properties:
annotations:
@ -490,6 +498,15 @@ spec:
- ingress
- servicePort
type: object
ambassador:
properties:
mappings:
items:
type: string
type: array
required:
- mappings
type: object
istio:
properties:
destinationRule:
@ -2651,9 +2668,15 @@ spec:
- containers
type: object
type: object
required:
- selector
- template
workloadRef:
properties:
apiVersion:
type: string
kind:
type: string
name:
type: string
type: object
type: object
status:
properties:
@ -2768,6 +2791,8 @@ spec:
currentStepIndex:
format: int32
type: integer
message:
type: string
observedGeneration:
type: string
pauseConditions:
@ -2783,6 +2808,8 @@ spec:
- startTime
type: object
type: array
phase:
type: string
promoteFull:
type: boolean
readyReplicas: