Commit graph

166 commits

Author SHA1 Message Date
Christopher Swenson
4c752a9f1d
Merge branch 'main' into topology 2022-04-28 10:26:20 -07:00
Stephen Herd
87e456754b
Issue 629: updated to allow customization of the CLUSTER_ADDR the same… (#709)
* Issue #629 Updates to allow customization of the CLUSTER_ADDR and unit tests to go with it

* Issue-#629 removing extra whitespace I added accidently.

* Issue-#629 fixing extra whitespace added.

* Update values.yaml

Co-authored-by: Joaco Muleiro Beltran <joaquinmuleirobeltran@gmail.com>

* Issue #629 adding changelog

Co-authored-by: Joaco Muleiro Beltran <joaquinmuleirobeltran@gmail.com>
2022-04-14 15:16:39 -07:00
Stephen Herd
12444bffb6
Support policy/v1 disruptionbudget beyond kube 1.21 (#710)
Issue #667, adding updates to the disruptionbudget to support new
non beta spec beyond kube 1.21
2022-04-04 22:26:16 -07:00
Christopher Swenson
710915952e
VAULT-571 Matching documented behavior and consul (#703)
VAULT-571 Matching documented behavior and consul

Consul's helm template defaults most of the enabled to the special value
`"-"`, which means to inherit from global. This is what is implied
should happen in Vault as well according to the documentation for the
helm chart:

> [global.enabled] The master enabled/disabled configuration. If this is
> true, most components will be installed by default. If this is false,
> no components will be installed by default and manually opting-in is
> required, such as by setting server.enabled to true.

(https://www.vaultproject.io/docs/platform/k8s/helm/configuration#enabled)

We also simplified the chart logic using a few template helpers.

Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>
2022-03-21 09:50:23 -07:00
Remco Buddelmeijer
56a253ba97
Maintain pre-existing Mutating Webhook default values for Kubernetes 1.22 (#692)
* Prepare default values for MutatingWebhookConfiguration #691
* Add values.yaml values to injector-mutating-webhook.yaml #691
* Duplicate and deprecate top-level webhook settings and put them in a webhook object
* Made the new values default with the fallback to the old values.yaml
* Fix _helpers.tpl to support both old and new webhook annotations
* Add new tests and deprecate old ones for injector webhook configuration
* Old tests now work with old values.yaml
* Add all new fields showing that they have priority over old ones
* Add deprecation note to injector.failurePolicy #691
2022-03-18 14:15:43 +00:00
Viacheslav Vasilyev
549d9b87b2
allow to configure publishNotReadyAddresses on server services (#694) 2022-03-17 17:52:53 +00:00
Christian
f59f3d4b13
Add namespace to injector-leader-elector role, rolebinding and secret (#683) 2022-03-16 15:31:59 -07:00
Tom Proctor
19b417cbaa
Fix unit test assertions (#693) 2022-02-25 19:01:04 +00:00
Michael Schuett
a2d9a0144f
Add extraLabels for CSI DaemonSet (#690) 2022-02-25 12:18:45 +00:00
Michele Baldessari
92da512577
allow injection of TLS config for OpenShift routes (#686)
* Add some tests on top of #396

* convert server-route.yaml to unix newlines

* changelog

Co-authored-by: André Becker <andre@arestless.com>
Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>
2022-01-19 22:37:26 -08:00
Ethan J. Brown
e629dc9d65
Add volumes and env vars to helm hook test pod (#673)
* Fix test typo

* Add basic server-test Pod tests

 - This covers all existing functionality that matches what's
   present in server-statefulset.bats

* Fix server-test helm hook Pod rendering

 - Properly adhere to the global.enabled flag and the presence of
   the injector.externalVaultAddr setting, the same way that
   the servers StatefulSet behaves

* Add volumes and env vars to helm hook test pod

 - Uses the same extraEnvironmentVars, volumes and volumeMounts set on
   the server statefulset to configure the Vault server test pod used by
   the helm test hook
 - This is necessary in situations where TLS is configured, but the
   certificates are not affiliated with the k8s CA / part of k8s PKI

 - Fixes GH-665
2022-01-19 18:55:56 -08:00
Vadim Grek
0043023c09
csi: ability to set priorityClassName for csi daemonset pods (#670) 2022-01-04 14:10:56 -08:00
Theron Voran
0c0b6e34f4
injector: ability to set deployment update strategy (continued) (#661)
Co-authored-by: Jason Hancock <jhancock@netskope.com>
2021-12-16 11:21:36 -08:00
Takumi Sue
248397f663
Make terminationGracePeriodSeconds configurable (#659)
Make terminationGracePeriodSeconds configurable for server pod
2021-12-14 18:15:11 -08:00
Eric Miller
b4a92492d0
Fix spelling error in server disruptionbudget test (#654) 2021-12-13 23:39:39 -08:00
Eric Miller
609444d9d9
Configurable PodDisruptionBudget for Injector (#653) 2021-12-13 23:38:00 -08:00
Eric Miller
b67a874090 Merge branch 'main' into topology 2021-11-22 15:29:50 -06:00
Eric Miller
102c29955b Implement injector HA statefulset topology UTs 2021-11-22 15:24:38 -06:00
Eric Miller
567a4386a5 Implement injector statefulset topology spread UTs 2021-11-22 15:21:15 -06:00
Eric Miller
f49ecb6802 Implement injector deployment topology spread UTs
* also remove string from the relevant schema types
2021-11-22 15:12:17 -06:00
Theron Voran
0375b184b3
remove support for the leader-elector container (#649) 2021-11-17 13:06:03 -08:00
Kaito Ii
c47ff33551
add staticSecretRenderInterval to injector (#621)
* make staticSecretRenderInterval default to empty string

* update values schema to add staticSecretRenderInterval

* add test for default value

* adding changelog entry

Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>
2021-11-05 19:07:25 -07:00
Tim Collins
c09c50f9d6
Add option for Ingress pathType (#634) 2021-10-25 11:30:06 -04:00
Theron Voran
3b1bb783be
Add server.ingress.ingressClassName (#630)
Co-authored-by: Joel Cressy <joel@jtcressy.net>
2021-10-21 09:23:45 -07:00
Ben Ash
d96a4287fa
Feat: add externalTrafficPolicy support (#626)
- externalTrafficPolicy can be set for both the ui and server services.
  It is only supported for NodePort or LoadBalancer service types.
2021-10-18 09:45:52 -04:00
Vladislav Rumjantsev
72c485dd2c
ingress stable networking api (#590)
* Moved ingress to stable networking api

* lower versions support

* ingress disabled by default

* added tests for old k8s
2021-10-08 17:13:21 -07:00
Theron Voran
5a864f7cbb
Adding support for the old leader-elector (#607)
Adds the leader-elector container support that was removed in
PR #568. The new vault-k8s uses an internal mechanism for leader
determination, so this is just for backwards compatibility, and can
be removed in the near future.

* mark the endpoint as deprecated

* add a new useContainer option for leaderElector

Default to not deploying the old leader-elector container, unless
injector.leaderElector.useContainer is `true`.
2021-09-15 18:43:04 -07:00
Toni Tauro
23e0348842
feat(csi): make provider hostPaths configurable (#603)
*  add configurable values for providersDir and kubeletRootDir

Signed-off-by: Toni Tauro <toni.tauro@adfinis.com>

Co-authored-by: Ben Ash <32777270+benashz@users.noreply.github.com>
2021-09-15 14:12:24 -04:00
Theron Voran
d31f942d3e
Support vault-k8s internal leader election (#568) 2021-08-31 15:16:06 -07:00
Theron Voran
f7ab37fd50
Add injector.webhookAnnotations chart option (#584) 2021-08-16 13:49:26 -07:00
Ben Ash
64b4d88c72
feature: imagePullSecrets from string array. (#576)
* allow configuring imagePullSecrets from an array of strings in
  addition to the already supported array of maps
2021-07-23 12:05:24 -04:00
Jason O'Donnell
255cdc7d26
Add ingress/route configurable to specify active/general service (#570)
* Add ingress/route configurable to specify active/general service

* Update test/unit/server-ingress.bats

Co-authored-by: Ben Ash <32777270+benashz@users.noreply.github.com>

* values.schema.json

Co-authored-by: Ben Ash <32777270+benashz@users.noreply.github.com>
2021-07-15 14:15:46 -04:00
Ben Ash
1e4709cc46
feature: Support configuring various properties as YAML directly. (#565)
* feature: Support configuring various properties as YAML directly.
Supported properties include: pod tolerations, pod affinity, and node selectors.
2021-07-07 19:07:58 -04:00
Calvin Leung Huang
14d1f97edd
injector: add templateConfig.exitOnRetryFailure annotation (#560)
* injector: add templateConfig.exitOnRetryFailure annotation

* update values.schema.json
2021-07-06 09:49:48 -07:00
Theron Voran
4d23074cd3
Adding server.enterpriseLicense (#547)
Sets up a vault-enterprise license for autoloading on vault
startup. Mounts an existing secret to /vault/license and sets
VAULT_LICENSE_PATH appropriately.
2021-06-11 13:29:30 -07:00
Ricardo Gândara Pinto
d27121c223
Added webhook-certs volume mount to sidecar injector (#545)
* Removed webhook-certs volume mount from leader-elector container

* Added test: injector deployment manual TLS adds volume mount
2021-06-10 15:32:22 -07:00
Rule88
458876007a
change maxUnavailable to integer (#535)
change maxUnavailable from `null` to `integer` to enable upgrade from
0.11.0 to 0.12.0 when using the specific variable.

* Also allow null value

Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>

* add test for server.ha.disruptionBudget.maxUnavailable

Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>
2021-06-01 10:51:18 -07:00
Theron Voran
af25981752
fix ui.serviceNodePort schema (#537)
UI service nodePort defaults to null, but is set as an integer
2021-06-01 10:41:02 -07:00
Theron Voran
e206fadd9e
add schema unit tests (#530) 2021-05-25 10:16:29 -04:00
Tom Proctor
030d3cd89d
Add extraArgs value for CSI (#526) 2021-05-21 12:48:21 +01:00
mehmetsalgar
0ab15dfb84
[Issue-520] tolerations for csi-daemonset (#521)
Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>
2021-05-17 17:14:19 -07:00
mehmetsalgar
92aed2cbee
Add ImagePullSecrets to CSI daemonset (#519) 2021-05-12 12:06:54 +01:00
Jason O'Donnell
5f2e1d470f
Fix injector unit test failing (#496)
* Fix injector unit test failing

* Add null check

* Add default if unset for CI
2021-04-14 08:23:50 -04:00
Jason O'Donnell
bf5783ef6b
Add injector agent default overrides (#493)
* Add injector agent default overrides

* Update test/unit/injector-deployment.bats

Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>

* Update test/unit/injector-deployment.bats

Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>

* Update test/unit/injector-deployment.bats

Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>

Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>
2021-04-12 17:01:14 -04:00
Hamza ZOUHAIR
d8c2d2058c
Custom value of agent port (#489)
* configure the agent port

* add unit test

* remove default

* remove default

* Update values.yaml

Co-authored-by: Jason O'Donnell <2160810+jasonodonnell@users.noreply.github.com>

Co-authored-by: Jason O'Donnell <2160810+jasonodonnell@users.noreply.github.com>
2021-04-12 16:59:38 -04:00
Jason O'Donnell
ec67b5dd45
Add logLevel and logFormat values for Vault (#488)
* Add logLevel and logFormat values for Vault

* Add configurable tests

* Update order of log levels

* Update values.yaml

* Update per review

* Update test/unit/server-statefulset.bats

Co-authored-by: Tom Proctor <tomhjp@users.noreply.github.com>

* Update test/unit/server-statefulset.bats

Co-authored-by: Tom Proctor <tomhjp@users.noreply.github.com>

Co-authored-by: Tom Proctor <tomhjp@users.noreply.github.com>
2021-04-08 11:18:16 -04:00
Sam Marshall
bfbeba256a
feat(ingress): Extra paths to prepend to the ingress host configuration for annotation based services (#460)
Refs #361
2021-04-08 10:09:19 -04:00
Paul Witt
a2a07b2a02
add hostNetwork value to injector deployment (#471)
* add hostNetwork value to injector deployment

* adding unit tests
2021-04-08 10:03:56 -04:00
Arie Lev
7a71c0fec4
fix csi helm deployment (#486)
* fix serviceaccount and clusterrole name reference (full name)

* add server.enabled option, align with documentation

* add unit tests

* update server.enabled behaviour to explicit true and update tests
2021-04-06 14:56:11 +01:00
Jason O'Donnell
7fd6959cdc
Add volumes and mounts support for CSI (#479)
* Remove extraVolumes from CSI, add volumes and mounts

* Add better example
2021-03-25 10:21:21 -04:00