Skip to content
This repository was archived by the owner on Nov 1, 2022. It is now read-only.

Commit c6ffc8f

Browse files
authored
Release 1.0.0-rc8 (#244)
Release 1.0.0-rc8
2 parents d7c4574 + d2f3fd2 commit c6ffc8f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+1127
-348
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

+10-8
Original file line numberDiff line numberDiff line change
@@ -8,25 +8,27 @@ assignees: ''
88
---
99

1010
**Describe the bug**
11+
1112
A clear and concise description of what the bug is.
1213

1314
**To Reproduce**
15+
1416
Steps to reproduce the behaviour:
15-
0. What's your setup?
16-
1. Go to '...'
17-
2. Click on '....'
18-
3. Scroll down to '....'
19-
4. See error
17+
1. Provide the Helm operator install instructions
18+
2. Provide a HelmRelease example
19+
3. Post the HelmRelease status, you can get this by running `kubectl describe helmrelease <name>`
2020

2121
**Expected behavior**
22+
2223
A clear and concise description of what you expected to happen.
2324

2425
**Logs**
25-
If applicable, please provide logs. In a standard stand-alone installation, you'd get this by running `kubectl logs -n default deploy/flux-helm-operator`.
26+
27+
If applicable, please provide logs. In a standard stand-alone installation, you'd get this by running `kubectl logs deploy/flux-helm-operator -n fluxcd`.
2628

2729
**Additional context**
28-
Add any other context about the problem here, e.g
30+
2931
- Helm operator version:
3032
- Kubernetes version:
3133
- Git provider:
32-
- Container registry provider:
34+
- Helm repository provider:

CHANGELOG.md

+95-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,97 @@
1-
## 1.0.0-rc7 (2019-01-10)
1+
## 1.0.0-rc8 (2020-01-25)
2+
3+
> **Notice:** upgrading to this version from `<=0.10.x` by just
4+
> updating your Helm Operator image tag is not possible as the
5+
> CRD domain and version have changed. An upgrade guide can be
6+
> found [here](./docs/guides/upgrading-to-ga.md).
7+
8+
> **Notice:** due to the multiple added fields, you need to
9+
> re-apply the `HelmRelease` CRD.
10+
11+
### Bug fixes
12+
13+
- release: push returned error as condition on sync check
14+
failure
15+
[fluxcd/helm-operator][#209]
16+
- release: reject git source if URL and path are missing
17+
[fluxcd/helm-operator][#223]
18+
- helm: only hold repository config lock for duration of
19+
read so dry-runs are run in parallel again
20+
[fluxcd/helm-operator][#225]
21+
- release: use all set `rollback` values when performing
22+
a rollback operation
23+
[fluxcd/helm-operator][#239]
24+
- helm: do not include non-template files in chart data
25+
so that the generation of a `requirement.lock` due to
26+
a dependency update does not cause spurious upgrades
27+
[fluxcd/helm-operator][#242]
28+
29+
### Enhancements
30+
31+
- release: allow `.spec.wait` to be set for upgrades
32+
[fluxcd/helm-operator][#95]
33+
- chartsync: support supplying Git HTTPS credentials
34+
using `secretRef`
35+
[fluxcd/helm-operator][#172]
36+
- status: retry status and condition updates on conflicts
37+
[fluxcd/helm-operator][#210]
38+
- release: allow `secretKeyRef` and `configMapKeyRef` to be
39+
selected from other namespaces using the `namespace` key
40+
[fluxcd/helm-operator][#219]
41+
- helm: only index missing repositories when fetching a
42+
chart from an URL
43+
[fluxcd/helm-operator][#225]
44+
- helm/v3: propagate main application logger to client
45+
[fluxcd/helm-operator][#232]
46+
- release: allow max history to be overridden using
47+
`.spec.maxHistory`
48+
[fluxcd/helm-operator][#235]
49+
- release: rely on Helm storage for determining when to
50+
upgrade after rolling back
51+
[fluxcd/helm-operator][#239]
52+
53+
### Maintenance and documentation
54+
55+
- build: update Kubernetes Kind to `v0.7.0` and set
56+
Kubernetes `v1.14.10` for end-to-end tests
57+
[fluxcd/helm-operator][#207]
58+
- build: upgrade code-generator to Kubernetes 1.16.2
59+
[fluxcd/helm-operator][#214]
60+
- docs: update FAQ on Flux garbage collection
61+
[fluxcd/helm-operator][#221]
62+
- Pkg: update Flux to `v1.17.2-0.20200121140732-3903cf8e71c3`
63+
[fluxcd/helm-operator][#230]
64+
- Pkg: make `pkg/install` a Go module to reduce its
65+
dependencies
66+
[fluxcd/helm-operator][#234]
67+
68+
69+
### Thanks
70+
71+
Thanks to @sa-spag, @carlpett, @sureshamk, @ingeknudsen, @cep21,
72+
@HaveFun83, @stefanprodan, @runningman84, @nabadger, @Helcaraxan,
73+
@stefansedich, @hiddeco, @grrywlsn, @niall-weedon, @richardcase,
74+
@REBELinBLUE, @derrickburns, and others for their contributions to
75+
this release, feedback, and reporting issues.
76+
77+
[#95]: https://github.com/fluxcd/helm-operator/pull/95
78+
[#172]: https://github.com/fluxcd/helm-operator/pull/172
79+
[#207]: https://github.com/fluxcd/helm-operator/pull/207
80+
[#209]: https://github.com/fluxcd/helm-operator/pull/209
81+
[#210]: https://github.com/fluxcd/helm-operator/pull/210
82+
[#214]: https://github.com/fluxcd/helm-operator/pull/214
83+
[#219]: https://github.com/fluxcd/helm-operator/pull/219
84+
[#221]: https://github.com/fluxcd/helm-operator/pull/221
85+
[#223]: https://github.com/fluxcd/helm-operator/pull/223
86+
[#225]: https://github.com/fluxcd/helm-operator/pull/225
87+
[#230]: https://github.com/fluxcd/helm-operator/pull/230
88+
[#232]: https://github.com/fluxcd/helm-operator/pull/232
89+
[#234]: https://github.com/fluxcd/helm-operator/pull/234
90+
[#235]: https://github.com/fluxcd/helm-operator/pull/235
91+
[#239]: https://github.com/fluxcd/helm-operator/pull/239
92+
[#242]: https://github.com/fluxcd/helm-operator/pull/242
93+
94+
## 1.0.0-rc7 (2020-01-10)
295

396
> **Notice:** upgrading to this version from `<=0.10.x` by just
497
> updating your Helm Operator image tag is not possible as the
@@ -40,7 +133,7 @@ to this release, feedback, and reporting issues.
40133
[#193]: https://github.com/fluxcd/helm-operator/pull/193
41134
[#196]: https://github.com/fluxcd/helm-operator/pull/196
42135

43-
## 1.0.0-rc6 (2019-01-08)
136+
## 1.0.0-rc6 (2020-01-08)
44137

45138
> **Notice:** upgrading to this version from `<=0.10.x` by just
46139
> updating your Helm Operator image tag is not possible as the

chart/helm-operator/CHANGELOG.md

+13
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,16 @@
1+
## 0.5.0 (2020-01-10)
2+
3+
### Improvements
4+
5+
- Update Helm Operator to `1.0.0-rc7`
6+
[fluxcd/helm-operator#197](https://github.com/fluxcd/helm-operator/pull/197)
7+
- Add support for configuring cert files for repositories
8+
[fluxcd/helm-operator#183](https://github.com/fluxcd/helm-operator/pull/183)
9+
- Add support for configuring Helm v3 repositories
10+
[fluxcd/helm-operator#173](https://github.com/fluxcd/helm-operator/pull/173)
11+
- Add Prometheus Operator ServiceMonitor templates
12+
[fluxcd/helm-operator#139](https://github.com/fluxcd/helm-operator/pull/139)
13+
114
## 0.4.0 (2019-12-23)
215

316
### Improvements

chart/helm-operator/Chart.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
apiVersion: v1
2-
appVersion: "1.0.0-rc7"
3-
version: 0.4.0
2+
appVersion: "1.0.0-rc8"
3+
version: 0.5.0
44
kubeVersion: ">=1.11.0-0"
55
name: helm-operator
66
description: Flux Helm Operator is a CRD controller for declarative helming

chart/helm-operator/README.md

+7-4
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,10 @@ You can add Helm repositories using the `configureRepositories` settings:
4646
helm upgrade -i helm-operator fluxcd/helm-operator \
4747
--namespace fluxcd \
4848
--set configureRepositories.enable=true \
49-
--set configureRepositories.repositories[0].name=stable \
50-
--set configureRepositories.repositories[0].url=https://kubernetes-charts.storage.googleapis.com \
51-
--set configureRepositories.repositories[1].name=podinfo \
52-
--set configureRepositories.repositories[1].url=https://stefanprodan.github.io/podinfo
49+
--set 'configureRepositories.repositories[0].name=stable' \
50+
--set 'configureRepositories.repositories[0].url=https://kubernetes-charts.storage.googleapis.com' \
51+
--set 'configureRepositories.repositories[1].name=podinfo' \
52+
--set 'configureRepositories.repositories[1].url=https://stefanprodan.github.io/podinfo'
5353
```
5454

5555
Install podinfo by referring to its Helm repository:
@@ -195,9 +195,12 @@ The following tables lists the configurable parameters of the Flux chart and the
195195
| `tolerations` | `[]` | Tolerations properties for the deployment
196196
| `affinity` | `{}` | Affinity properties for the deployment
197197
| `extraEnvs` | `[]` | Extra environment variables for the Helm Operator pod(s)
198+
| `podAnnotations` | `{}` | Additional pod annotations
199+
| `podLabels` | `{}` | Additional pod labels
198200
| `rbac.create` | `true` | If `true`, create and use RBAC resources
199201
| `rbac.pspEnabled` | `false` | If `true`, create and use a restricted pod security policy for Helm Operator pod(s)
200202
| `serviceAccount.create` | `true` | If `true`, create a new service account
203+
| `serviceAccount.annotations` | `` | Additional Service Account annotations
201204
| `serviceAccount.name` | `flux` | Service account to be used
202205
| `clusterRole.create` | `true` | If `false`, Helm Operator will be restricted to the namespace where is deployed
203206
| `createCRD` | `false` | Create the HelmRelease CRD

chart/helm-operator/templates/crd.yaml

+13
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,10 @@ spec:
5656
namespace to the resource name.
5757
type: string
5858
pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
59+
maxHistory:
60+
description: The maximum number of release revisions to keep, defaults to 10
61+
type: integer
62+
format: int32
5963
targetNamespace:
6064
description: The Helm release namespace. If not supplied, the namespace will be the same
6165
as the resource namespace.
@@ -68,6 +72,9 @@ spec:
6872
resetValues:
6973
description: If supplied will reset values on helm upgrade
7074
type: boolean
75+
wait:
76+
description: Wait for an upgrade to complete before marking release as successful
77+
type: boolean
7178
forceUpgrade:
7279
description: If supplied will force Helm upgrade through delete/recreate
7380
type: boolean
@@ -122,6 +129,9 @@ spec:
122129
optional:
123130
description: If set, successful retrieval of the values file is no longer mandatory
124131
type: boolean
132+
namespace:
133+
description: The namespace in which the configmap exists
134+
type: string
125135
secretKeyRef:
126136
type: object
127137
required: ['name']
@@ -135,6 +145,9 @@ spec:
135145
optional:
136146
description: If set, successful retrieval of the values file is no longer mandatory
137147
type: boolean
148+
namespace:
149+
description: The namespace in which the secret exists
150+
type: string
138151
externalSourceRef:
139152
type: object
140153
required: ['url']

chart/helm-operator/templates/deployment.yaml

+10-3
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ metadata:
88
release: {{ .Release.Name }}
99
heritage: {{ .Release.Service }}
1010
spec:
11-
replicas: {{ .Values.replicaCount }}
11+
replicas: 1
1212
selector:
1313
matchLabels:
1414
app: {{ template "helm-operator.name" . }}
@@ -20,12 +20,19 @@ spec:
2020
{{- if .Values.prometheus.enabled }}
2121
prometheus.io/scrape: "true"
2222
{{- end }}
23-
{{- if .Values.annotations }}
24-
{{- .Values.annotations | toYaml | trimSuffix "\n" | nindent 8 }}
23+
{{- if .Values.podAnnotations }}
24+
{{- range $key, $value := .Values.podAnnotations }}
25+
{{ $key }}: {{ $value | quote }}
26+
{{- end }}
2527
{{- end }}
2628
labels:
2729
app: {{ template "helm-operator.name" . }}
2830
release: {{ .Release.Name }}
31+
{{- if .Values.podLabels }}
32+
{{- range $key, $value := .Values.podLabels }}
33+
{{ $key }}: {{ $value | quote }}
34+
{{- end }}
35+
{{- end }}
2936
spec:
3037
serviceAccountName: {{ template "helm-operator.serviceAccountName" . }}
3138
{{- if .Values.image.pullSecret }}

chart/helm-operator/templates/serviceaccount.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,10 @@ metadata:
88
chart: {{ template "helm-operator.chart" . }}
99
release: {{ .Release.Name }}
1010
heritage: {{ .Release.Service }}
11+
{{- if .Values.serviceAccount.annotations }}
12+
annotations:
13+
{{- range $key, $value := .Values.serviceAccount.annotations }}
14+
{{ $key }}: {{ $value | quote }}
15+
{{- end }}
16+
{{- end }}
1117
{{- end -}}

chart/helm-operator/values.yaml

+5-3
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ fullnameOverride: ""
55

66
image:
77
repository: docker.io/fluxcd/helm-operator
8-
tag: 1.0.0-rc7
8+
tag: 1.0.0-rc8
99
pullPolicy: IfNotPresent
1010
pullSecret:
1111

@@ -129,6 +129,8 @@ rbac:
129129
serviceAccount:
130130
# Specifies whether a service account should be created
131131
create: true
132+
# Service account annotations
133+
annotations: {}
132134
# The name of the service account to use.
133135
# If not set and create is true, a name is generated using the fullname template
134136
name:
@@ -175,9 +177,9 @@ extraEnvs: []
175177
# - name: FOO
176178
# value: bar
177179

178-
replicaCount: 1
180+
podAnnotations: {}
181+
podLabels: {}
179182
nodeSelector: {}
180-
annotations: {}
181183
tolerations: []
182184
affinity: {}
183185
extraVolumeMounts: []

cmd/helm-operator/main.go

+1
Original file line numberDiff line numberDiff line change
@@ -254,6 +254,7 @@ func main() {
254254

255255
gitChartSync := chartsync.NewGitChartSync(
256256
log.With(logger, "component", "gitchartsync"),
257+
kubeClient.CoreV1(),
257258
hrInformer.Lister(),
258259
chartsync.GitConfig{GitTimeout: *gitTimeout, GitPollInterval: *gitPollInterval, GitDefaultRef: *gitDefaultRef},
259260
queue,

deploy/flux-helm-release-crd.yaml

+13
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,10 @@ spec:
4848
namespace to the resource name.
4949
type: string
5050
pattern: "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$"
51+
maxHistory:
52+
description: The maximum number of release revisions to keep, defaults to 10
53+
type: integer
54+
format: int32
5155
targetNamespace:
5256
description: The Helm release namespace. If not supplied, the namespace will be the same
5357
as the resource namespace.
@@ -60,6 +64,9 @@ spec:
6064
resetValues:
6165
description: If supplied will reset values on helm upgrade
6266
type: boolean
67+
wait:
68+
description: Wait for an upgrade to complete before marking release as successful
69+
type: boolean
6370
forceUpgrade:
6471
description: If supplied will force Helm upgrade through delete/recreate
6572
type: boolean
@@ -114,6 +121,9 @@ spec:
114121
optional:
115122
description: If set, successful retrieval of the values file is no longer mandatory
116123
type: boolean
124+
namespace:
125+
description: The namespace in which the configmap exists
126+
type: string
117127
secretKeyRef:
118128
type: object
119129
required: ['name']
@@ -127,6 +137,9 @@ spec:
127137
optional:
128138
description: If set, successful retrieval of the values file is no longer mandatory
129139
type: boolean
140+
namespace:
141+
description: The namespace in which the secret exists
142+
type: string
130143
externalSourceRef:
131144
type: object
132145
required: ['url']

deploy/helm-operator-deployment.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ spec:
7676
# There are no ":latest" images for helm-operator. Find the most recent
7777
# release or image version at https://hub.docker.com/r/weaveworks/helm-operator/tags
7878
# and replace the tag here.
79-
image: docker.io/fluxcd/helm-operator:1.0.0-rc7
79+
image: docker.io/fluxcd/helm-operator:1.0.0-rc8
8080
imagePullPolicy: IfNotPresent
8181
ports:
8282
- name: http

deploy/weave-cloud-helm-operator-deployment.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ spec:
2727
secretName: flux-git-deploy
2828
containers:
2929
- name: flux-helm-operator
30-
image: docker.io/fluxcd/helm-operator:1.0.0-rc7
30+
image: docker.io/fluxcd/helm-operator:1.0.0-rc8
3131
imagePullPolicy: IfNotPresent
3232
args:
3333
- --git-timeout=20s

docs/faq.md

+3-7
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,10 @@ more details [here](./tutorials/get-started.md).
77

88
### I've deleted a HelmRelease file from Git. Why is the Helm release still running on my cluster?
99

10-
Flux doesn't delete resources, there is an [issue](https://github.com/fluxcd/flux/issues/738) opened about this topic on GitHub.
11-
In order to delete a Helm release first remove the file from Git and afterwards run:
10+
Flux doesn't delete resources by default, you can enable Flux garbage collection feature
11+
by passing the command-line flag `--sync-garbage-collection` to `fluxd`.
1212

13-
```yaml
14-
kubectl delete helmrelease/my-release
15-
```
16-
17-
The Helm operator will receive the delete event and will purge the Helm release.
13+
With Flux garbage collection enabled, Helm operator will receive the delete event and will purge the Helm release.
1814

1915
### I've manually deleted a Helm release. Why is Flux not able to restore it?
2016

0 commit comments

Comments
 (0)