Commit graph

169 commits

Author SHA1 Message Date
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
Tom Proctor
102f9e49e2
Target vault-csi-provider release 0.1.0 (#475) 2021-03-25 09:02:36 -04:00
Tom Proctor
4c1d79f46e
Add CSI secrets store provider (#461) 2021-03-19 14:14:38 +00:00
guru1306
690ee410ef
Add objectSelector to webhookconfiguration (#456) 2021-02-19 23:02:04 -05:00
Theron Voran
69a3dc618d
Set VAULT_DEV_LISTEN_ADDRESS in dev mode (#446)
Binds vault to 0.0.0.0 in dev mode so that external traffic is
accepted.
2021-01-15 15:42:50 -08:00
Jason O'Donnell
3cc33172d9
Add extra time to initial probe delay (#440) 2021-01-05 13:51:28 -05:00
Tom Proctor
e6b4969acc
Support deploying multiple injector replicas with auto-TLS (#436) 2021-01-05 11:14:00 +00:00
Volodymyr Stoiko
f8e6aab4ee
Allow configurable egress for server network policy (#389)
* Allow configurable egress

* Add test for networkpolicy egress in server

* Allow egress configuration

* Fix test

* Fix networkPolicy test

* Fix test
2020-12-16 12:30:24 -05:00
Jason O'Donnell
cc20c0b3c1
Add allowPrivilegeEscalation=false to pods (#429)
* Add allowPrivilegeEscalation=false to pods

* Add openshift check

* Add injector openshift check
2020-12-14 14:14:29 -05:00
Logi
a11a75d1b5
support extraLabels for vault-agent-injector (#428)
* support extraLabels for vault-agent-injector

* added unit test for extraLabels

* fix test

* added injector.extraLabels as empty map to values file
2020-12-07 11:28:06 -05:00
Bruno FERNANDO
73e90a1308
feat: add annotations to injector service (#425) 2020-12-07 10:31:54 -05:00
Yong Wen Chua
94adad8335
Update mutating webhook API Version (#408)
* Update mutating webhook API Version

* Set to ignore by default

* Remove extra `-`

* Add required fields
2020-12-07 10:18:25 -05:00
Piotr Hryszko
e2b609817f
don't set VAULT_DEV_ROOT_TOKEN_ID by default in dev mode (#415)
* don't set VAULT_DEV_ROOT_TOKEN_ID by default in dev mode

* don't template environment variables that no longer exist

* fix tests after removing VAULT_DEV_ROOT_TOKEN_ID env variable

* removed a typo

* allow overriding VAULT_DEV_ROOT_TOKEN_ID in dev mode

* correct ambiguous description

* don't set default values in templates for visibility, update tests and set uncomment devRootToken in values.yaml

* Update devRootToken description
2020-12-07 10:09:38 -05:00
Chris Pieper
f780877e1d
Update rbac api version to v1 (#395)
* fix(rbac): update api version on rbac

* Update templates/server-clusterrolebinding.yaml

Co-authored-by: Yong Wen Chua <lawliet89@users.noreply.github.com>

* Update server-discovery-rolebinding.yaml

Co-authored-by: Yong Wen Chua <lawliet89@users.noreply.github.com>
2020-12-07 10:07:02 -05:00
Jason O'Donnell
a8c42428b0
Add extraArgs support to dev mode (#421) 2020-11-30 16:31:02 -05:00
Jean-François Roche
c45f9b997d
Enable Vault to review kube tokens when using external Vault (#392)
We want Vault to perform token reviews with Kubernetes even if we are
using an external Vault.

We need to create the ServiceAccount, Secret and ClusterRoleBinding with
the system:auth-delegator role to enable delegated authentication and
authorization checks [1].

These SA and RBAC objects are created when we deploy the Vault server.
In order to enable the creation of these objects when using an external
Vault, we remove the condition on external mode.

User might want to provide a sensible name (in global.serviceAccount.name) to the service
account such as: vault-auth.

refs #376

[1] https://www.vaultproject.io/docs/auth/kubernetes#configuring-kubernetes
2020-10-20 09:34:48 -04:00
gw0
29a77e82d1
Improve config variables (#398) 2020-10-16 10:47:31 -04:00
Ori Rawlings
5eb0ba5865
Add configurable failurePolicy for injector's webhook (#400)
Fixes #399
2020-10-13 09:20:06 -04:00
Michael Parker
1968526f0d
add ability to set pod annotations for injector (#394)
* add ability to set pod annotations for injector

* add missing unit tests
2020-10-01 11:06:53 -04:00
Jason O'Donnell
13ef8db3b5
Add configurable mountPath for audit/data storage (#393) 2020-10-01 09:32:46 -04:00
Volodymyr Stoiko
66ea34c702
Allow explicit network policy enablement (#381)
* Disable default network policy

* Make network policy configurable by explicit flag only
2020-09-15 23:40:56 -07:00
Jason O'Donnell
fc8ebfdd4e
Add configurable probe values (#387)
* Add configurable probe values

* Remove template defaults

* Update values.yaml

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

* Update values.yaml

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

* Update values.yaml

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

* Switch timeout and period defaults

Co-authored-by: Tom Proctor <tomhjp@users.noreply.github.com>
Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>
2020-09-15 16:24:38 -04:00
Tom Proctor
798ac9c597
Update notes template to be helm v3 compatible (#378)
`helm get {{ .Release.Name }}` is replaced by `vault get all {{ .Release.Name }}` in helm v3, but `all` doesn't exist in v2.
2020-08-27 16:34:25 +01:00
Jason O'Donnell
117fff79bc
Add vault-k8s metrics configurable (#372) 2020-08-20 19:03:12 -04:00
Yong Wen Chua
5dc29f6c84
Add configuration options for Vault UI service (#285)
* Add configuration options for Vault UI service

- Configure to select active Vault pod only
- Configure to not publish unready address

* Create active label only on HA
2020-08-20 14:39:46 -04:00
Scott Hawkins
622690e68b
Add volume claim annotations (#364)
* Add templates for annotations to apply to PV.

* Fix spacing for template injection.

* Fix template logic, add unit tests.
2020-08-20 14:02:27 -04:00
Dawson Mortenson
f40cc89467
allow server annotations with dev mode (#371) 2020-08-20 13:45:36 -04:00
Sergei Zyubin
9fbe720f6b
Make serviceAccount name a configuration option (#367)
* Make serviceAccount name a configuration option

Follow Helm Best Practices when defining serviceAccount names
https://helm.sh/docs/chart_best_practices/#using-rbac-resources

* Use enabled instead of create for consistency

* Add unit tests for user-defined service account name

* ServiceAccount under server

Co-authored-by: David Holsgrove <david@apnic.net>

* Update ServiceAccount in RoleBindings

to address https://github.com/hashicorp/vault-helm/pull/56#pullrequestreview-297856433

Co-authored-by: David Holsgrove <david@apnic.net>

* Update tests for helm template arg --show-only

Co-authored-by: David Holsgrove <david@apnic.net>

* Fix server-serviceaccount tests

* serviceAccount: rename enabled to create

* statefulSet: add tests for serviceAccount

Co-authored-by: Nick Satterly <nick@diabol.se>
Co-authored-by: David Holsgrove <david@apnic.net>
2020-08-18 19:13:02 -07:00
Sam Weston
ed0b918bf6
Add an option to set annotations on the StatefulSet (#199)
* Add tests for adding StatefulSet annotations

Signed-off-by: Sam Weston <weston.sam@gmail.com>
Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>
2020-08-14 15:04:52 -07:00
Lukas Grossar
ec69e1cccb
Remove tolerate-unready-endpoints annotation (#363)
This annotation has been deprecated since Kuberneets 1.8 and the
publishNotReadyAddresses parameter replacing it has been correctly
implemented in Kubernetes 1.11 (see https://github.com/kubernetes/kubernetes/pull/63742)
2020-07-30 10:23:02 -04:00
Erik DeLamarter
f965826a66
missing enabled checks for injector-network-policy (#358) 2020-07-30 10:05:01 -04:00
georgekaz
8c741f6276
add support for more flexible volume mounts. Include example values for init container (#314)
add unit tests

add missing braces
2020-07-14 10:23:08 -04:00
Yong Wen Chua
85b52694f7
Allow overriding VAULT_API_ADDR (#290) 2020-07-14 10:09:43 -04:00
Steven Merrill
70cfec3fc8
Force caBundle to always be quoted (#352)
This fixes issues when you do not provide a value for caBundle that
causes validation issues.
2020-07-14 09:53:33 -04:00
Yong Wen Chua
adf5bf65a9
Support PodSecurityPolicy (#177)
* Add PSP for server

* Add PSP for Injector

* Allow annotations to be templated

Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>
2020-06-25 23:42:52 -07:00
Omer Levi Hevroni
5a7e10cf08
allow to set extra volume mode (#321) 2020-06-11 10:50:16 -04:00
Jason O'Donnell
853cb06842
Add OpenShift beta support (#319)
* Initial commit

* Added openshift flag

* added self signed certificate for service annotation

* added OpenShift flag

* Added OpenShift flag

* cleanup

* Cleanup

* Further cleanup

* Further cleanup

* reverted security context on injector

* Extra corrections

* cleanup

* Removed Raft config for OpenShift, removed generated certs for ha and standby services

* Add openshift flag to global block, route disabled by default, condition for injector in network policy

* Added Unit tests for OpenShift

* Fixed unit test for HA statefulset for OpenShift

* Removed debug log level from stateful set

* Added port 8201 to networkpolicy

* Updated injector image

* Add openshift beta support

* Add openshift beta support

* Remove comments from configs

* Remove vault-k8s note from values

* Change route to use active service when HA

Co-authored-by: Radu Domnu <radu.domnu@sixdx.com>
Co-authored-by: Radu Domnu <radu.domnu@gmail.com>
2020-06-02 22:10:41 -04:00
ttinkr
4f81ac070b
imagePullSecrets in injector-deployment (#298)
Co-authored-by: ttinkr <thomas.fellinger@nts.eu>
2020-06-02 10:09:48 -04:00
Theron Voran
8e982a6c9d
Allow setting HA services type (#317)
Making the types for active and standby services configurable (just
like the main vault service).
2020-06-02 10:06:50 -04:00
lukemassa
78ca71d2eb
Removing namespace from yaml of non-namespaced objects (#300) 2020-05-28 22:47:41 -04:00
Jason O'Donnell
4215316818
Add postStart lifecycle hook (#315)
* Add postStart lifecycle hook

* Update values.yaml

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

Co-authored-by: Theron Voran <tvoran@users.noreply.github.com>
2020-05-28 14:53:46 -04:00
georgekaz
d755ad1ba0
Use active service on ingress when ha (#270)
Added some logic that points the ingress at the active server
when in ha mode. There are times that pointing at the standby
pods causes problems.
2020-05-28 11:51:25 -07:00
Gorka Maiztegi
6b77840e22
Update ingress apiVersion (#310)
The apiVersion `extensions/v1beta1` for ingresses has been removed in Kubernetes 1.16 and the new `networking.k8s.io/v1beta1` has to be used now. This conditional keeps compatibility with older Kubernetes versions while using the new apiVersion when available.
2020-05-26 19:28:15 -07:00
Josh Keife
9a835c40f1
Update comment in standby service (#299) 2020-05-21 11:58:53 -04:00
Adrienne Cohea
0cc1af1876
Add init containers to support TLS certificate introduction and other dynamic configuration use cases. (#258) 2020-05-08 14:35:39 -04:00
Jason O'Donnell
08a6f929b8
Revert "Add support for priorityClassName (#165)" (#287)
This reverts commit 2af6f9b44f.
2020-05-05 11:29:09 -04:00
Brian Choy
2af6f9b44f
Add support for priorityClassName (#165)
* Add support for priorityClassName

* Add unit tests

* Remove comment

* Update comment, accidentally deleted comment

* Remove whitespace
2020-05-05 11:10:17 -04:00
Yong Wen Chua
c8b18d1876
Support setting priorityClassName on pods (#282) 2020-04-30 18:37:27 -07:00
Yong Wen Chua
8cc3fdb167
Add support for setting VAULT_RAFT_NODE_ID environment variable (#269)
* Add support for setting VAULT_RAFT_NODE_ID environment variable

* Update server-statefulset.yaml

* Update server-ha-statefulset.bats
2020-04-27 11:38:26 -04:00
Theron Voran
e09de0dc63
Allow both yaml and multi-line string annotations (#272)
Changed/added helper functions to detect if the annotations value
is a string or yaml, and apply `tpl` or `toYaml`
accordingly. Defaults are left as `{}` since yaml is more likely
to be used with helm on the command line. This means a warning
will be shown when setting an annotation to a multi-line
string (which has been the existing behavior).
2020-04-27 08:28:50 -07:00