Merge branch 'master' into master

This commit is contained in:
Chris 2020-09-02 01:35:03 +02:00 committed by GitHub
commit 974105cf59
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
45 changed files with 867 additions and 581 deletions

1
.gitignore vendored
View file

@ -3,3 +3,4 @@ output
.DS_Store .DS_Store
.idea .idea
**/*.tgz **/*.tgz
**/charts/*/charts

View file

@ -1,8 +1,8 @@
apiVersion: v1 apiVersion: v1
appVersion: "1.6.1" appVersion: "1.6.2"
description: A Helm chart for ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes. description: A Helm chart for ArgoCD, a declarative, GitOps continuous delivery tool for Kubernetes.
name: argo-cd name: argo-cd
version: 2.5.4 version: 2.6.3
home: https://github.com/argoproj/argo-helm home: https://github.com/argoproj/argo-helm
icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png
keywords: keywords:

File diff suppressed because it is too large Load diff

View file

@ -20,34 +20,37 @@ spec:
scope: Namespaced scope: Namespaced
validation: validation:
openAPIV3Schema: openAPIV3Schema:
description: 'AppProject provides a logical grouping of applications, providing description: 'AppProject provides a logical grouping of applications, providing controls for: * where the apps may deploy to (cluster whitelist) * what may be deployed (repository whitelist, resource whitelist/blacklist) * who can access these applications (roles, OIDC group claims bindings) * and what they can do (RBAC policies) * automation access to these roles (JWT tokens)'
controls for: * where the apps may deploy to (cluster whitelist) * what may
be deployed (repository whitelist, resource whitelist/blacklist) * who can
access these applications (roles, OIDC group claims bindings) * and what they
can do (RBAC policies) * automation access to these roles (JWT tokens)'
properties: properties:
apiVersion: apiVersion:
description: 'APIVersion defines the versioned schema of this representation description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string type: string
kind: kind:
description: 'Kind is a string value representing the REST resource this description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string type: string
metadata: metadata:
type: object type: object
spec: spec:
description: AppProjectSpec is the specification of an AppProject description: AppProjectSpec is the specification of an AppProject
properties: properties:
clusterResourceWhitelist: clusterResourceBlacklist:
description: ClusterResourceWhitelist contains list of whitelisted cluster description: ClusterResourceBlacklist contains list of blacklisted cluster level resources
level resources
items: items:
description: GroupKind specifies a Group and a Kind, but does not description: GroupKind specifies a Group and a Kind, but does not force a version. This is useful for identifying concepts during lookup stages without having partially valid types
force a version. This is useful for identifying concepts during properties:
lookup stages without having partially valid types group:
type: string
kind:
type: string
required:
- group
- kind
type: object
type: array
clusterResourceWhitelist:
description: ClusterResourceWhitelist contains list of whitelisted cluster level resources
items:
description: GroupKind specifies a Group and a Kind, but does not force a version. This is useful for identifying concepts during lookup stages without having partially valid types
properties: properties:
group: group:
type: string type: string
@ -62,29 +65,25 @@ spec:
description: Description contains optional project description description: Description contains optional project description
type: string type: string
destinations: destinations:
description: Destinations contains list of destinations available for description: Destinations contains list of destinations available for deployment
deployment
items: items:
description: ApplicationDestination contains deployment destination description: ApplicationDestination contains deployment destination information
information
properties: properties:
name:
description: Name of the destination cluster which can be used instead of server (url) field
type: string
namespace: namespace:
description: Namespace overrides the environment namespace value description: Namespace overrides the environment namespace value in the ksonnet app.yaml
in the ksonnet app.yaml
type: string type: string
server: server:
description: Server overrides the environment server value in description: Server overrides the environment server value in the ksonnet app.yaml
the ksonnet app.yaml
type: string type: string
type: object type: object
type: array type: array
namespaceResourceBlacklist: namespaceResourceBlacklist:
description: NamespaceResourceBlacklist contains list of blacklisted description: NamespaceResourceBlacklist contains list of blacklisted namespace level resources
namespace level resources
items: items:
description: GroupKind specifies a Group and a Kind, but does not description: GroupKind specifies a Group and a Kind, but does not force a version. This is useful for identifying concepts during lookup stages without having partially valid types
force a version. This is useful for identifying concepts during
lookup stages without having partially valid types
properties: properties:
group: group:
type: string type: string
@ -96,12 +95,9 @@ spec:
type: object type: object
type: array type: array
namespaceResourceWhitelist: namespaceResourceWhitelist:
description: NamespaceResourceWhitelist contains list of whitelisted description: NamespaceResourceWhitelist contains list of whitelisted namespace level resources
namespace level resources
items: items:
description: GroupKind specifies a Group and a Kind, but does not description: GroupKind specifies a Group and a Kind, but does not force a version. This is useful for identifying concepts during lookup stages without having partially valid types
force a version. This is useful for identifying concepts during
lookup stages without having partially valid types
properties: properties:
group: group:
type: string type: string
@ -113,17 +109,25 @@ spec:
type: object type: object
type: array type: array
orphanedResources: orphanedResources:
description: OrphanedResources specifies if controller should monitor description: OrphanedResources specifies if controller should monitor orphaned resources of apps in this project
orphaned resources of apps in this project
properties: properties:
ignore:
items:
properties:
group:
type: string
kind:
type: string
name:
type: string
type: object
type: array
warn: warn:
description: Warn indicates if warning condition should be created description: Warn indicates if warning condition should be created for apps which have orphaned resources
for apps which have orphaned resources
type: boolean type: boolean
type: object type: object
roles: roles:
description: Roles are user defined RBAC roles associated with this description: Roles are user defined RBAC roles associated with this project
project
items: items:
description: ProjectRole represents a role that has access to a project description: ProjectRole represents a role that has access to a project
properties: properties:
@ -131,17 +135,14 @@ spec:
description: Description is a description of the role description: Description is a description of the role
type: string type: string
groups: groups:
description: Groups are a list of OIDC group claims bound to this description: Groups are a list of OIDC group claims bound to this role
role
items: items:
type: string type: string
type: array type: array
jwtTokens: jwtTokens:
description: JWTTokens are a list of generated JWT tokens bound description: JWTTokens are a list of generated JWT tokens bound to this role
to this role
items: items:
description: JWTToken holds the issuedAt and expiresAt values description: JWTToken holds the issuedAt and expiresAt values of a token
of a token
properties: properties:
exp: exp:
format: int64 format: int64
@ -159,8 +160,7 @@ spec:
description: Name is a name for this role description: Name is a name for this role
type: string type: string
policies: policies:
description: Policies Stores a list of casbin formated strings description: Policies Stores a list of casbin formated strings that define access policies for the role in the project
that define access policies for the role in the project
items: items:
type: string type: string
type: array type: array
@ -168,55 +168,83 @@ spec:
- name - name
type: object type: object
type: array type: array
signatureKeys:
description: List of PGP key IDs that commits to be synced to must be signed with
items:
description: SignatureKey is the specification of a key required to verify commit signatures with
properties:
keyID:
description: The ID of the key in hexadecimal notation
type: string
required:
- keyID
type: object
type: array
sourceRepos: sourceRepos:
description: SourceRepos contains list of repository URLs which can description: SourceRepos contains list of repository URLs which can be used for deployment
be used for deployment
items: items:
type: string type: string
type: array type: array
syncWindows: syncWindows:
description: SyncWindows controls when syncs can be run for apps in description: SyncWindows controls when syncs can be run for apps in this project
this project
items: items:
description: SyncWindow contains the kind, time, duration and attributes description: SyncWindow contains the kind, time, duration and attributes that are used to assign the syncWindows to apps
that are used to assign the syncWindows to apps
properties: properties:
applications: applications:
description: Applications contains a list of applications that description: Applications contains a list of applications that the window will apply to
the window will apply to
items: items:
type: string type: string
type: array type: array
clusters: clusters:
description: Clusters contains a list of clusters that the window description: Clusters contains a list of clusters that the window will apply to
will apply to
items: items:
type: string type: string
type: array type: array
duration: duration:
description: Duration is the amount of time the sync window will description: Duration is the amount of time the sync window will be open
be open
type: string type: string
kind: kind:
description: Kind defines if the window allows or blocks syncs description: Kind defines if the window allows or blocks syncs
type: string type: string
manualSync: manualSync:
description: ManualSync enables manual syncs when they would otherwise description: ManualSync enables manual syncs when they would otherwise be blocked
be blocked
type: boolean type: boolean
namespaces: namespaces:
description: Namespaces contains a list of namespaces that the description: Namespaces contains a list of namespaces that the window will apply to
window will apply to
items: items:
type: string type: string
type: array type: array
schedule: schedule:
description: Schedule is the time the window will begin, specified description: Schedule is the time the window will begin, specified in cron format
in cron format
type: string type: string
type: object type: object
type: array type: array
type: object type: object
status:
description: AppProjectStatus contains information about appproj
properties:
jwtTokensByRole:
additionalProperties:
properties:
items:
items:
description: JWTToken holds the issuedAt and expiresAt values of a token
properties:
exp:
format: int64
type: integer
iat:
format: int64
type: integer
id:
type: string
required:
- iat
type: object
type: array
type: object
type: object
type: object
required: required:
- metadata - metadata
- spec - spec

View file

@ -2,6 +2,7 @@
{{- $serviceName := include "argo-cd.server.fullname" . -}} {{- $serviceName := include "argo-cd.server.fullname" . -}}
{{- $servicePort := ternary .Values.server.service.servicePortHttps .Values.server.service.servicePortHttp .Values.server.ingressGrpc.https -}} {{- $servicePort := ternary .Values.server.service.servicePortHttps .Values.server.service.servicePortHttp .Values.server.ingressGrpc.https -}}
{{- $paths := .Values.server.ingressGrpc.paths -}} {{- $paths := .Values.server.ingressGrpc.paths -}}
{{- $extraPaths := .Values.server.ingressGrpc.extraPaths -}}
{{- if .Capabilities.APIVersions.Has "networking.k8s.io/v1beta1" }} {{- if .Capabilities.APIVersions.Has "networking.k8s.io/v1beta1" }}
apiVersion: networking.k8s.io/v1beta1 apiVersion: networking.k8s.io/v1beta1
{{ else }} {{ else }}
@ -33,6 +34,9 @@ spec:
- host: {{ $host }} - host: {{ $host }}
http: http:
paths: paths:
{{- if $extraPaths }}
{{- toYaml $extraPaths | nindent 10 }}
{{- end -}}
{{- range $p := $paths }} {{- range $p := $paths }}
- path: {{ $p }} - path: {{ $p }}
backend: backend:
@ -43,6 +47,9 @@ spec:
{{- else }} {{- else }}
- http: - http:
paths: paths:
{{- if $extraPaths }}
{{- toYaml $extraPaths | nindent 10 }}
{{- end -}}
{{- range $p := $paths }} {{- range $p := $paths }}
- path: {{ $p }} - path: {{ $p }}
backend: backend:

View file

@ -2,6 +2,7 @@
{{- $serviceName := include "argo-cd.server.fullname" . -}} {{- $serviceName := include "argo-cd.server.fullname" . -}}
{{- $servicePort := ternary .Values.server.service.servicePortHttps .Values.server.service.servicePortHttp .Values.server.ingress.https -}} {{- $servicePort := ternary .Values.server.service.servicePortHttps .Values.server.service.servicePortHttp .Values.server.ingress.https -}}
{{- $paths := .Values.server.ingress.paths -}} {{- $paths := .Values.server.ingress.paths -}}
{{- $extraPaths := .Values.server.ingress.extraPaths -}}
{{- if .Capabilities.APIVersions.Has "networking.k8s.io/v1beta1" }} {{- if .Capabilities.APIVersions.Has "networking.k8s.io/v1beta1" }}
apiVersion: networking.k8s.io/v1beta1 apiVersion: networking.k8s.io/v1beta1
{{ else }} {{ else }}
@ -33,6 +34,9 @@ spec:
- host: {{ $host }} - host: {{ $host }}
http: http:
paths: paths:
{{- if $extraPaths }}
{{- toYaml $extraPaths | nindent 10 }}
{{- end }}
{{- range $p := $paths }} {{- range $p := $paths }}
- path: {{ $p }} - path: {{ $p }}
backend: backend:
@ -43,6 +47,9 @@ spec:
{{- else }} {{- else }}
- http: - http:
paths: paths:
{{- if $extraPaths }}
{{- toYaml $extraPaths | nindent 10 }}
{{- end }}
{{- range $p := $paths }} {{- range $p := $paths }}
- path: {{ $p }} - path: {{ $p }}
backend: backend:

View file

@ -46,5 +46,9 @@ items:
roles: roles:
{{- toYaml .roles | nindent 8 }} {{- toYaml .roles | nindent 8 }}
{{- end }} {{- end }}
{{- if .syncWindows }}
syncWindows:
{{- toYaml .syncWindows | nindent 8 }}
{{- end }}
{{- end }} {{- end }}
{{- end }} {{- end }}

View file

@ -10,7 +10,7 @@ installCRDs: true
global: global:
image: image:
repository: argoproj/argocd repository: argoproj/argocd
tag: v1.6.1 tag: v1.6.2
imagePullPolicy: IfNotPresent imagePullPolicy: IfNotPresent
securityContext: {} securityContext: {}
# runAsUser: 999 # runAsUser: 999
@ -28,7 +28,7 @@ controller:
image: image:
repository: # argoproj/argocd repository: # argoproj/argocd
tag: # v1.6.1 tag: # v1.6.2
imagePullPolicy: # IfNotPresent imagePullPolicy: # IfNotPresent
## Argo controller commandline flags ## Argo controller commandline flags
@ -454,6 +454,12 @@ server:
# - argocd.example.com # - argocd.example.com
paths: paths:
- / - /
extraPaths:
[]
# - path: /*
# backend:
# serviceName: ssl-redirect
# servicePort: use-annotation
tls: tls:
[] []
# - secretName: argocd-example-tls # - secretName: argocd-example-tls
@ -476,6 +482,12 @@ server:
# - argocd.example.com # - argocd.example.com
paths: paths:
- / - /
extraPaths:
[]
# - path: /*
# backend:
# serviceName: ssl-redirect
# servicePort: use-annotation
tls: tls:
[] []
# - secretName: argocd-example-tls # - secretName: argocd-example-tls
@ -604,6 +616,13 @@ server:
# kind: StatefulSet # kind: StatefulSet
# orphanedResources: {} # orphanedResources: {}
# roles: [] # roles: []
# syncWindows:
# - kind: allow
# schedule: '10 1 * * *'
# duration: 1h
# applications:
# - '*-prod'
# manualSync: true
## Enable Admin ClusterRole resources. ## Enable Admin ClusterRole resources.
## Enable if you would like to grant rights to ArgoCD to deploy to the local Kubernetes cluster. ## Enable if you would like to grant rights to ArgoCD to deploy to the local Kubernetes cluster.

View file

@ -1,7 +1,7 @@
apiVersion: v1 apiVersion: v1
description: A Helm chart for Argo-CI description: A Helm chart for Argo-CI
name: argo-ci name: argo-ci
version: 0.1.6 version: 0.1.7
icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png
appVersion: v1.0.0-alpha2 appVersion: v1.0.0-alpha2
home: https://github.com/argoproj/argo-helm home: https://github.com/argoproj/argo-helm

View file

@ -33,3 +33,7 @@ spec:
ports: ports:
- containerPort: 8001 - containerPort: 8001
- containerPort: 8002 - containerPort: 8002
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}

View file

@ -2,6 +2,9 @@ imageNamespace: argoproj
ciImage: argoci ciImage: argoci
imageTag: v1.0.0-alpha2 imageTag: v1.0.0-alpha2
imagePullPolicy: Always imagePullPolicy: Always
# Secrets with credentials to pull images from a private registry
imagePullSecrets: []
# - name: argo-pull-secret
workflowNamespace: default workflowNamespace: default
argo: argo:

View file

@ -1,15 +1,17 @@
apiVersion: v1 apiVersion: v1
description: A Helm chart to install Argo-Events in k8s Cluster description: A Helm chart to install Argo-Events in k8s Cluster
name: argo-events name: argo-events
version: 0.14.0 version: 0.17.1
keywords: keywords:
- argo-events - argo-events
- sensor-controller - sensor-controller
- gateway-controller - eventsource-controller
- eventbus-controller
sources: sources:
- https://github.com/argoproj/argo-events - https://github.com/argoproj/argo-events
maintainers: maintainers:
- name: VaibhavPage - name: VaibhavPage
appVersion: 0.14.0 - name: whynowy
appVersion: 0.17.0
icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png
home: https://github.com/argoproj/argo-helm home: https://github.com/argoproj/argo-helm

View file

@ -2,13 +2,14 @@
This is a **community maintained** chart. It installs the [argo-events](https://github.com/argoproj/argo-events) application. This application comes packaged with: This is a **community maintained** chart. It installs the [argo-events](https://github.com/argoproj/argo-events) application. This application comes packaged with:
- Sensor Custom Resource Definition (See CRD Notes) - Sensor Custom Resource Definition (See CRD Notes)
- Gateway Custom Resource Definition (See CRD Notes)
- EventSource Custom Resource Definition (See CRD Notes) - EventSource Custom Resource Definition (See CRD Notes)
- EventBus Custom Resource Definition (See CRD Notes)
- Sensor Controller Deployment - Sensor Controller Deployment
- Sensor Controller ConfigMap - EventSource Controller Deployment
- Gateway Controller Deployment - EventBus Controller Deployment
- Gateway Controller ConfigMap
- Service Account - Service Account
- Roles
- Role Bindings
- Cluster Roles - Cluster Roles
- Cluster Role Bindings - Cluster Role Bindings
@ -16,10 +17,4 @@ This is a **community maintained** chart. It installs the [argo-events](https://
Some users would prefer to install the CRDs _outside_ of the chart. You can disable the CRD installation of this chart by using `--set installCRD=false` when installing the chart. Some users would prefer to install the CRDs _outside_ of the chart. You can disable the CRD installation of this chart by using `--set installCRD=false` when installing the chart.
You can install the CRDs manually like so: You can install the CRDs manually from `crds` folder.
```
kubectl apply -f https://github.com/argoproj/argo-events/raw/v0.14.0/hack/k8s/manifests/sensor-crd.yaml
kubectl apply -f https://github.com/argoproj/argo-events/raw/v0.14.0/hack/k8s/manifests/gateway-crd.yaml
kubectl apply -f https://github.com/argoproj/argo-events/raw/v0.14.0/hack/k8s/manifests/event-source-crd.yaml
```

View file

@ -1,16 +1,15 @@
---
apiVersion: apiextensions.k8s.io/v1beta1 apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
name: gateways.argoproj.io name: eventbus.argoproj.io
spec: spec:
group: argoproj.io group: argoproj.io
names: names:
kind: Gateway kind: EventBus
listKind: GatewayList listKind: EventBusList
plural: gateways plural: eventbus
singular: gateway
shortNames: shortNames:
- gw - eb
singular: eventbus
scope: Namespaced scope: Namespaced
version: "v1alpha1" version: v1alpha1

View file

@ -1,3 +1,5 @@
{{- if not .Values.singleNamespace }}
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding kind: ClusterRoleBinding
metadata: metadata:
@ -43,12 +45,12 @@ rules:
- workflows/finalizers - workflows/finalizers
- workflowtemplates - workflowtemplates
- workflowtemplates/finalizers - workflowtemplates/finalizers
- gateways
- gateways/finalizers
- sensors - sensors
- sensors/finalizers - sensors/finalizers
- eventsources - eventsources
- eventsources/finalizers - eventsources/finalizers
- eventbus
- eventbus/finalizers
- apiGroups: - apiGroups:
- "" - ""
resources: resources:
@ -83,6 +85,7 @@ rules:
- "apps" - "apps"
resources: resources:
- deployments - deployments
- statefulsets
verbs: verbs:
- create - create
- get - get
@ -92,3 +95,4 @@ rules:
- patch - patch
- delete - delete
{{- end }}

View file

@ -0,0 +1,100 @@
{{- if .Values.singleNamespace }}
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: argo-events-binding
namespace: {{ .Release.Namespace }}
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: argo-events-role
subjects:
- kind: ServiceAccount
name: {{ .Values.serviceAccount }}
namespace: {{ .Release.Namespace }}
{{- if .Values.additionalSaNamespaces }}
{{ $sa := .Values.serviceAccount }}
{{- range $namespace := .Values.additionalSaNamespaces }}
- kind: ServiceAccount
name: {{ $sa }}
namespace: {{ $namespace }}
{{- end }}
{{- end }}
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: argo-events-role
namespace: {{ .Release.Namespace }}
rules:
{{- if .Values.additionalServiceAccountRules }}
{{ .Values.additionalServiceAccountRules | toYaml | nindent 2}}
{{- end }}
- apiGroups:
- argoproj.io
verbs:
- create
- delete
- deletecollection
- get
- list
- patch
- update
- watch
resources:
- workflows
- workflows/finalizers
- workflowtemplates
- workflowtemplates/finalizers
- sensors
- sensors/finalizers
- eventsources
- eventsources/finalizers
- eventbus
- eventbus/finalizers
- apiGroups:
- ""
resources:
- pods
- pods/exec
- configmaps
- secrets
- services
- events
- persistentvolumeclaims
verbs:
- create
- get
- list
- watch
- update
- patch
- delete
- apiGroups:
- "batch"
resources:
- jobs
verbs:
- create
- get
- list
- watch
- update
- patch
- delete
- apiGroups:
- "apps"
resources:
- deployments
- statefulsets
verbs:
- create
- get
- list
- watch
- update
- patch
- delete
{{- end }}

View file

@ -0,0 +1,43 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}-{{ .Values.eventbusController.name }}
labels:
app: {{ .Release.Name }}-{{ .Values.eventbusController.name }}
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
spec:
replicas: {{ .Values.eventbusController.replicaCount }}
selector:
matchLabels:
app: {{ .Release.Name }}-{{ .Values.eventbusController.name }}
release: {{ .Release.Name }}
template:
metadata:
labels:
app: {{ .Release.Name }}-{{ .Values.eventbusController.name }}
release: {{ .Release.Name }}
spec:
serviceAccountName: {{ .Values.serviceAccount }}
containers:
- name: {{ .Values.eventbusController.name }}
image: "{{ .Values.registry }}/{{ .Values.eventbusController.image }}:{{ .Values.eventbusController.tag }}"
imagePullPolicy: {{ .Values.imagePullPolicy }}
{{- if .Values.singleNamespace }}
args:
- --namespaced
{{- end }}
env:
- name: NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- name: NATS_STREAMING_IMAGE
value: {{ .Values.eventbusController.natsStreamingImage }}
- name: NATS_METRICS_EXPORTER_IMAGE
value: {{ .Values.eventbusController.natsMetricsExporterImage }}
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}

View file

@ -0,0 +1,24 @@
{{- if .Values.installCRD }}
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: eventbus.argoproj.io
annotations:
helm.sh/hook: crd-install
helm.sh/hook-delete-policy: before-hook-creation
spec:
group: argoproj.io
names:
kind: EventBus
listKind: EventBusList
plural: eventbus
shortNames:
- eb
singular: eventbus
scope: Namespaced
version: v1alpha1
versions:
- name: v1alpha1
served: true
storage: true
{{- end }}

View file

@ -0,0 +1,41 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}-{{ .Values.eventsourceController.name }}
labels:
app: {{ .Release.Name }}-{{ .Values.eventsourceController.name }}
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
spec:
replicas: {{ .Values.eventsourceController.replicaCount }}
selector:
matchLabels:
app: {{ .Release.Name }}-{{ .Values.eventsourceController.name }}
release: {{ .Release.Name }}
template:
metadata:
labels:
app: {{ .Release.Name }}-{{ .Values.eventsourceController.name }}
release: {{ .Release.Name }}
spec:
serviceAccountName: {{ .Values.serviceAccount }}
containers:
- name: {{ .Values.eventsourceController.name }}
image: "{{ .Values.registry }}/{{ .Values.eventsourceController.image }}:{{ .Values.eventsourceController.tag }}"
imagePullPolicy: {{ .Values.imagePullPolicy }}
{{- if .Values.singleNamespace }}
args:
- --namespaced
{{- end }}
env:
- name: NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- name: EVENTSOURCE_IMAGE
value: "{{ .Values.registry }}/{{ .Values.eventsourceController.eventsourceImage }}:{{ .Values.eventsourceController.tag }}"
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}

View file

@ -3,6 +3,9 @@ apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
name: eventsources.argoproj.io name: eventsources.argoproj.io
annotations:
helm.sh/hook: crd-install
helm.sh/hook-delete-policy: before-hook-creation
spec: spec:
group: argoproj.io group: argoproj.io
scope: Namespaced scope: Namespaced

View file

@ -1,14 +0,0 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ .Release.Name }}-{{ .Values.gatewayController.name }}-configmap
labels:
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
data:
config: |
instanceID: {{ .Values.instanceID }}
{{- if .Values.singleNamespace }}
namespace: {{ .Values.namespace }}
{{- end }}

View file

@ -1,33 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}-{{ .Values.gatewayController.name }}
labels:
app: {{ .Release.Name }}-{{ .Values.gatewayController.name }}
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
spec:
replicas: {{ .Values.gatewayController.replicaCount }}
selector:
matchLabels:
app: {{ .Release.Name }}-{{ .Values.gatewayController.name }}
release: {{ .Release.Name }}
template:
metadata:
labels:
app: {{ .Release.Name }}-{{ .Values.gatewayController.name }}
release: {{ .Release.Name }}
spec:
serviceAccountName: {{ .Values.serviceAccount }}
containers:
- name: {{ .Values.gatewayController.name }}
image: "{{ .Values.registry }}/{{ .Values.gatewayController.image }}:{{ .Values.gatewayController.tag }}"
imagePullPolicy: {{ .Values.imagePullPolicy }}
env:
- name: NAMESPACE
valueFrom:
fieldRef:
fieldPath: metadata.namespace
- name: CONTROLLER_CONFIG_MAP
value: {{ .Release.Name }}-{{ .Values.gatewayController.name }}-configmap

View file

@ -1,18 +0,0 @@
{{- if .Values.installCRD }}
# Define a "gateway" custom resource definition
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: gateways.argoproj.io
spec:
group: argoproj.io
names:
kind: Gateway
listKind: GatewayList
plural: gateways
singular: gateway
shortNames:
- gw
scope: Namespaced
version: "v1alpha1"
{{- end }}

View file

@ -1,14 +0,0 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ .Release.Name }}-{{ .Values.sensorController.name }}-configmap
labels:
chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
data:
config: |
instanceID: {{ .Values.instanceID }}
{{- if .Values.singleNamespace }}
namespace: {{ .Values.namespace }}
{{- end }}

View file

@ -24,10 +24,18 @@ spec:
- name: {{ .Values.sensorController.name }} - name: {{ .Values.sensorController.name }}
image: "{{ .Values.registry }}/{{ .Values.sensorController.image }}:{{ .Values.sensorController.tag }}" image: "{{ .Values.registry }}/{{ .Values.sensorController.image }}:{{ .Values.sensorController.tag }}"
imagePullPolicy: {{ .Values.imagePullPolicy }} imagePullPolicy: {{ .Values.imagePullPolicy }}
{{- if .Values.singleNamespace }}
args:
- --namespaced
{{- end }}
env: env:
- name: NAMESPACE - name: NAMESPACE
valueFrom: valueFrom:
fieldRef: fieldRef:
fieldPath: metadata.namespace fieldPath: metadata.namespace
- name: CONTROLLER_CONFIG_MAP - name: SENSOR_IMAGE
value: {{ .Release.Name }}-{{ .Values.sensorController.name }}-configmap value: "{{ .Values.registry }}/{{ .Values.sensorController.sensorImage }}:{{ .Values.sensorController.tag }}"
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}

View file

@ -4,6 +4,9 @@ apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
name: sensors.argoproj.io name: sensors.argoproj.io
annotations:
helm.sh/hook: crd-install
helm.sh/hook-delete-policy: before-hook-creation
spec: spec:
group: argoproj.io group: argoproj.io
names: names:

View file

@ -4,6 +4,10 @@ registry: argoproj
# The image pull policy # The image pull policy
imagePullPolicy: Always imagePullPolicy: Always
# Secrets with credentials to pull images from a private registry
imagePullSecrets: []
# - name: argo-pull-secret
# If set to false, skip installing the CRDs. Requires user to have them installed prior to helm chart installation. # If set to false, skip installing the CRDs. Requires user to have them installed prior to helm chart installation.
installCRD: true installCRD: true
@ -42,11 +46,21 @@ singleNamespace: true
sensorController: sensorController:
name: sensor-controller name: sensor-controller
image: sensor-controller image: sensor-controller
tag: v0.14.0 tag: v0.17.0
replicaCount: 1 replicaCount: 1
sensorImage: sensor
gatewayController: eventsourceController:
name: gateway-controller name: eventsource-controller
image: gateway-controller image: eventsource-controller
tag: v0.14.0 tag: v0.17.0
replicaCount: 1 replicaCount: 1
eventsourceImage: eventsource
eventbusController:
name: eventbus-controller
image: eventbus-controller
tag: v0.17.0
replicaCount: 1
natsStreamingImage: nats-streaming:0.17.0
natsMetricsExporterImage: synadia/prometheus-nats-exporter:0.6.2

View file

@ -1,8 +1,8 @@
apiVersion: v1 apiVersion: v1
appVersion: "0.8.0" appVersion: "0.8.3"
description: A Helm chart for Argo Rollouts description: A Helm chart for Argo Rollouts
name: argo-rollouts name: argo-rollouts
version: 0.3.2 version: 0.3.6
icon: https://raw.githubusercontent.com/argoproj/argo/master/argo.png icon: https://raw.githubusercontent.com/argoproj/argo/master/argo.png
home: https://github.com/argoproj/argo-helm home: https://github.com/argoproj/argo-helm
maintainers: maintainers:

View file

@ -106,4 +106,11 @@ rules:
- watch - watch
- get - get
- update - update
- apiGroups:
- ""
resources:
- pods
verbs:
- list
- delete
{{- end }} {{- end }}

View file

@ -6,6 +6,10 @@ metadata:
app.kubernetes.io/component: server app.kubernetes.io/component: server
app.kubernetes.io/name: {{ .Release.Name }}-metrics app.kubernetes.io/name: {{ .Release.Name }}-metrics
app.kubernetes.io/part-of: {{ .Release.Name }} app.kubernetes.io/part-of: {{ .Release.Name }}
annotations:
{{- range $key, $value := .Values.serviceAnnotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
spec: spec:
ports: ports:
- name: metrics - name: metrics

View file

@ -13,7 +13,7 @@ controller:
affinity: {} affinity: {}
image: image:
repository: argoproj/argo-rollouts repository: argoproj/argo-rollouts
tag: v0.8.0 tag: v0.8.3
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
resources: {} resources: {}
@ -28,12 +28,18 @@ controller:
serviceAccount: serviceAccount:
name: argo-rollouts name: argo-rollouts
## Annotations to be added to the Redis server pods ## Annotations to be added to the Rollout pods
## ##
podAnnotations: {} podAnnotations: {}
## Labels to be added to the Redis server pods ## Annotations to be added to the Rollout service
##
serviceAnnotations: {}
## Labels to be added to the Rollout pods
## ##
podLabels: {} podLabels: {}
# Secrets with credentials to pull images from a private registry
imagePullSecrets: [] imagePullSecrets: []
# - name: argo-pull-secret

View file

@ -2,7 +2,7 @@ apiVersion: v1
appVersion: v2.8.0 appVersion: v2.8.0
description: A Helm chart for Argo Workflows description: A Helm chart for Argo Workflows
name: argo name: argo
version: 0.10.0 version: 0.9.11
icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png
home: https://github.com/argoproj/argo-helm home: https://github.com/argoproj/argo-helm
maintainers: maintainers:

View file

@ -71,6 +71,10 @@ spec:
volumeMounts: volumeMounts:
{{- toYaml . | nindent 12}} {{- toYaml . | nindent 12}}
{{- end }} {{- end }}
{{- with .Values.images.pullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.server.volumes }} {{- with .Values.server.volumes }}
volumes: volumes:
{{- toYaml . | nindent 8}} {{- toYaml . | nindent 8}}

View file

@ -73,6 +73,7 @@ rules:
- events - events
verbs: verbs:
- create - create
- patch
- apiGroups: - apiGroups:
- "" - ""
resources: resources:
@ -80,6 +81,14 @@ rules:
verbs: verbs:
- get - get
- list - list
- apiGroups:
- "policy"
resources:
- poddisruptionbudgets
verbs:
- create
- get
- delete
{{- if .Values.controller.persistence }} {{- if .Values.controller.persistence }}
- apiGroups: - apiGroups:
- "" - ""

View file

@ -67,6 +67,10 @@ spec:
ports: ports:
- containerPort: 8080 - containerPort: 8080
{{- end }} {{- end }}
{{- with .Values.images.pullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.controller.nodeSelector }} {{- with .Values.controller.nodeSelector }}
nodeSelector: nodeSelector:
{{- toYaml . | nindent 8 }} {{- toYaml . | nindent 8 }}

View file

@ -4,6 +4,9 @@ images:
server: argocli server: argocli
executor: argoexec executor: argoexec
pullPolicy: Always pullPolicy: Always
# Secrets with credentials to pull images from a private registry
pullSecrets: []
# - name: argo-pull-secret
tag: v2.7.6 tag: v2.7.6
crdVersion: v1alpha1 crdVersion: v1alpha1

View file

@ -3,7 +3,7 @@ appVersion: 0.7.0
description: A Helm chart for ArgoCD notifications, an add-on to ArgoCD. description: A Helm chart for ArgoCD notifications, an add-on to ArgoCD.
name: argocd-notifications name: argocd-notifications
type: application type: application
version: 1.0.7 version: 1.0.11
home: https://github.com/argoproj/argo-helm home: https://github.com/argoproj/argo-helm
icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png icon: https://raw.githubusercontent.com/argoproj/argo/master/docs/assets/argo.png
keywords: keywords:

View file

@ -43,6 +43,19 @@ app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
app.kubernetes.io/managed-by: {{ .Release.Service }} app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end -}} {{- end -}}
{{/*
Common metrics labels
*/}}
{{- define "argocd-notifications.metrics.labels" -}}
helm.sh/chart: {{ include "argocd-notifications.chart" . }}
{{ include "argocd-notifications.metrics.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
{{- end -}}
{{/* {{/*
Common slack bot labels Common slack bot labels
*/}} */}}
@ -63,6 +76,14 @@ app.kubernetes.io/name: {{ include "argocd-notifications.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/instance: {{ .Release.Name }}
{{- end -}} {{- end -}}
{{/*
Selector metrics labels
*/}}
{{- define "argocd-notifications.metrics.selectorLabels" -}}
app.kubernetes.io/name: {{ include "argocd-notifications.name" . }}-metrics
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end -}}
{{/* {{/*
Selector slack bot labels Selector slack bot labels
*/}} */}}

View file

@ -30,6 +30,9 @@ spec:
command: command:
- /app/argocd-notifications - /app/argocd-notifications
- bot - bot
ports:
- containerPort: 8080
name: http
{{- with .Values.bots.slack.nodeSelector }} {{- with .Values.bots.slack.nodeSelector }}
nodeSelector: nodeSelector:
{{- toYaml . | nindent 8 }} {{- toYaml . | nindent 8 }}

View file

@ -3,12 +3,16 @@ apiVersion: v1
kind: Service kind: Service
metadata: metadata:
name: {{ include "argocd-notifications.name" . }}-bot name: {{ include "argocd-notifications.name" . }}-bot
{{- if .Values.bots.slack.service.annotations }}
annotations:
{{- toYaml .Values.bots.slack.service.annotations | nindent 4 }}
{{- end }}
spec: spec:
ports: ports:
- name: server - name: http
port: 80 port: {{ .Values.bots.slack.service.port }}
protocol: TCP protocol: TCP
targetPort: 8080 targetPort: http
selector: selector:
{{- include "argocd-notifications.bots.slack.selectorLabels" . | nindent 4 }} {{- include "argocd-notifications.bots.slack.selectorLabels" . | nindent 4 }}
type: {{ .Values.bots.slack.service.type }} type: {{ .Values.bots.slack.service.type }}

View file

@ -12,6 +12,12 @@ spec:
{{- include "argocd-notifications.selectorLabels" . | nindent 6 }} {{- include "argocd-notifications.selectorLabels" . | nindent 6 }}
template: template:
metadata: metadata:
{{- if .Values.podAnnotations }}
annotations:
{{- range $key, $value := .Values.podAnnotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- end }}
labels: labels:
{{- include "argocd-notifications.selectorLabels" . | nindent 8 }} {{- include "argocd-notifications.selectorLabels" . | nindent 8 }}
spec: spec:
@ -29,6 +35,19 @@ spec:
command: command:
- /app/argocd-notifications - /app/argocd-notifications
- controller - controller
- --loglevel={{ .Values.logLevel }}
{{- if .Values.metrics.enabled }}
- --metrics-port={{ .Values.metrics.port }}
{{- end }}
{{- range .Values.extraArgs }}
- {{ . | squote }}
{{- end }}
ports:
{{- if .Values.metrics.enabled }}
- containerPort: {{ .Values.metrics.port }}
name: metrics
protocol: TCP
{{- end }}
{{- with .Values.nodeSelector }} {{- with .Values.nodeSelector }}
nodeSelector: nodeSelector:
{{- toYaml . | nindent 8 }} {{- toYaml . | nindent 8 }}

View file

@ -0,0 +1,15 @@
{{- if .Values.metrics.enabled }}
apiVersion: v1
kind: Service
metadata:
name: {{ include "argocd-notifications.name" . }}-metrics
labels:
{{- include "argocd-notifications.metrics.labels" . | nindent 4 }}
spec:
selector:
{{- include "argocd-notifications.selectorLabels" . | nindent 4 }}
ports:
- name: metrics
port: {{ .Values.metrics.port }}
targetPort: {{ .Values.metrics.port }}
{{- end }}

View file

@ -0,0 +1,30 @@
{{- if and .Values.metrics.enabled .Values.metrics.serviceMonitor.enabled }}
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: {{ include "argocd-notifications.name" . }}-metrics
{{- if .Values.metrics.serviceMonitor.namespace }}
namespace: {{ .Values.metrics.serviceMonitor.namespace }}
{{- end }}
labels:
{{- include "argocd-notifications.metrics.labels" . | nindent 4 }}
{{- if .Values.metrics.serviceMonitor.additionalLabels }}
{{- toYaml .Values.metrics.serviceMonitor.additionalLabels | nindent 4 }}
{{- end }}
spec:
endpoints:
- port: metrics
path: /metrics
{{- if .Values.metrics.serviceMonitor.interval }}
interval: {{ .Values.metrics.serviceMonitor.interval }}
{{- end }}
{{- if .Values.metrics.serviceMonitor.scrapeTimeout }}
scrapeTimeout: {{ .Values.metrics.serviceMonitor.scrapeTimeout }}
{{- end }}
namespaceSelector:
matchNames:
- {{ .Release.Namespace }}
selector:
matchLabels:
{{- include "argocd-notifications.metrics.selectorLabels" . | nindent 6 }}
{{- end }}

View file

@ -87,6 +87,22 @@ secret:
# email address in from field # email address in from field
from: from:
logLevel: info
extraArgs: []
metrics:
enabled: false
port: 9001
serviceMonitor:
enabled: false
additionalLabels: {}
# namespace: monitoring
# interval: 30s
# scrapeTimeout: 10s
podAnnotations: {}
resources: {} resources: {}
# limits: # limits:
# cpu: 100m # cpu: 100m
@ -194,6 +210,8 @@ bots:
imagePullSecrets: [] imagePullSecrets: []
service: service:
annotations: {}
port: 80
type: LoadBalancer type: LoadBalancer
serviceAccount: serviceAccount: