Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Datago 30302/upgrading vault to 1.8.11 #13

Merged
merged 116 commits into from
Jul 15, 2022
Merged
Show file tree
Hide file tree
Changes from 115 commits
Commits
Show all changes
116 commits
Select commit Hold shift + click to select a range
690ee41
Add objectSelector to webhookconfiguration (#456)
guru1306 Feb 20, 2021
ff73577
changelog++
jasonodonnell Feb 20, 2021
4c1d79f
Add CSI secrets store provider (#461)
tomhjp Mar 19, 2021
3e36bb7
updating acceptance tests to k8s 1.17 on gke (#473)
tvoran Mar 24, 2021
2ddac08
changelog++
tomhjp Mar 24, 2021
102f9e4
Target vault-csi-provider release 0.1.0 (#475)
tomhjp Mar 25, 2021
f75b19f
Update to 0.10.0 (#477)
jasonodonnell Mar 25, 2021
7fd6959
Add volumes and mounts support for CSI (#479)
jasonodonnell Mar 25, 2021
703ba50
changelog++
jasonodonnell Mar 25, 2021
a685664
Remove extra word in readme (#482)
coignetp Mar 30, 2021
7a71c0f
fix csi helm deployment (#486)
ArieLevs Apr 6, 2021
b244573
changelog++
tomhjp Apr 7, 2021
a2a07b2
add hostNetwork value to injector deployment (#471)
paulwitt Apr 8, 2021
6e46bcf
changelog++
jasonodonnell Apr 8, 2021
bfbeba2
feat(ingress): Extra paths to prepend to the ingress host configurati…
samjmarshall Apr 8, 2021
ccebde9
changelog++
jasonodonnell Apr 8, 2021
ec67b5d
Add logLevel and logFormat values for Vault (#488)
jasonodonnell Apr 8, 2021
dc696bb
changelog++
jasonodonnell Apr 8, 2021
d8c2d20
Custom value of agent port (#489)
HamzaZo Apr 12, 2021
b838d4b
changelog++
jasonodonnell Apr 12, 2021
bf5783e
Add injector agent default overrides (#493)
jasonodonnell Apr 12, 2021
366cf23
changelog++
jasonodonnell Apr 12, 2021
088ce89
[injector] Add port name in injector service (#495)
javiercri Apr 13, 2021
f2e3d57
changelog++
jasonodonnell Apr 13, 2021
5f2e1d4
Fix injector unit test failing (#496)
jasonodonnell Apr 14, 2021
be1721f
Remove redundant logic (#434)
tomhjp Apr 14, 2021
2733859
Update to v0.11.0 (#497)
jasonodonnell Apr 14, 2021
dcb4b10
Add container based tests documentation (#492)
ArieLevs Apr 14, 2021
b59cbf6
Set kubeVersion and added chart-verifier tests (#510)
tvoran May 10, 2021
794a86a
changelog++
tvoran May 10, 2021
6e8ef40
match kubeVersion on semver pre-releases (#512)
tvoran May 11, 2021
92aed2c
Add ImagePullSecrets to CSI daemonset (#519)
mehmetsalgar May 12, 2021
f84fc7e
changelog++
tomhjp May 12, 2021
1505e77
changelog++
tomhjp May 12, 2021
2a70a9f
fix CONTRIBUTING.md (#501)
ArieLevs May 12, 2021
f226051
updating to use new dedicated context and token (#515)
sarahethompson May 13, 2021
ed38f6d
added values json schema (#513)
tvoran May 14, 2021
e817b1d
changelog++
tvoran May 14, 2021
0ab15df
[Issue-520] tolerations for csi-daemonset (#521)
mehmetsalgar May 18, 2021
dbd99b1
changelog++
tvoran May 18, 2021
030d3cd
Add extraArgs value for CSI (#526)
tomhjp May 21, 2021
23ff8a1
changelog++
tomhjp May 21, 2021
e206fad
add schema unit tests (#530)
tvoran May 25, 2021
4c71c26
Add UI targetPort option (#437)
inigohu May 25, 2021
d53b011
changelog++
jasonodonnell May 25, 2021
b21b37b
Update to v0.12.0 (#532)
jasonodonnell May 25, 2021
3593739
Adding helm test for vault server (#531)
tvoran May 28, 2021
3afcb46
changelog++
tvoran May 28, 2021
af25981
fix ui.serviceNodePort schema (#537)
tvoran Jun 1, 2021
828b312
changelog++
tvoran Jun 1, 2021
4588760
change maxUnavailable to integer (#535)
rule88 Jun 1, 2021
ad9a46a
changelog++
tvoran Jun 1, 2021
637087f
use vault-helm-test:0.2.0 (#543)
tvoran Jun 2, 2021
d27121c
Added webhook-certs volume mount to sidecar injector (#545)
Jun 10, 2021
bb63d73
changelog++
tvoran Jun 10, 2021
4d23074
Adding server.enterpriseLicense (#547)
tvoran Jun 11, 2021
3a6e097
changelog++
tvoran Jun 11, 2021
0f832e0
Add openshift overrides (#549)
tvoran Jun 16, 2021
7509bc7
changelog++
tvoran Jun 16, 2021
f67b844
Update to v0.13.0 (#554)
tvoran Jun 17, 2021
14d1f97
injector: add templateConfig.exitOnRetryFailure annotation (#560)
calvn Jul 6, 2021
1e4709c
feature: Support configuring various properties as YAML directly. (#565)
benashz Jul 7, 2021
f5ef752
++changelog
benashz Jul 7, 2021
2d42085
Update the default vault agent image to come from the hashicorp docke…
benashz Jul 12, 2021
4a4295d
Update acceptance tests to use the new stable GKE version 1.18.x (#569)
benashz Jul 12, 2021
a0d7b84
++changelog
benashz Jul 12, 2021
255cdc7
Add ingress/route configurable to specify active/general service (#570)
jasonodonnell Jul 15, 2021
4365686
changelog++
jasonodonnell Jul 15, 2021
64b4d88
feature: imagePullSecrets from string array. (#576)
benashz Jul 23, 2021
86ff773
++changelog
benashz Jul 23, 2021
a5c8562
vault-helm 0.14.0 release (#578)
tvoran Jul 28, 2021
bfc01c1
Update chart verifier (#579)
tvoran Jul 29, 2021
c9c23b1
Add imagePullSecrets on server test (#572)
shiinro Aug 12, 2021
2773175
changelog++
tvoran Aug 12, 2021
f7ab37f
Add injector.webhookAnnotations chart option (#584)
tvoran Aug 16, 2021
22df6c0
changelog++
tvoran Aug 16, 2021
c820454
vault-helm 0.15.0 release (#598)
tvoran Aug 23, 2021
d31f942
Support vault-k8s internal leader election (#568)
tvoran Aug 31, 2021
87a0a56
changelog++
tvoran Aug 31, 2021
8932c37
Fix the CSI acceptance test (#608)
tvoran Sep 8, 2021
23e0348
feat(csi): make provider hostPaths configurable (#603)
eyenx Sep 15, 2021
c267805
changelog++
benashz Sep 15, 2021
dd3b3f0
changelog++
benashz Sep 15, 2021
5a864f7
Adding support for the old leader-elector (#607)
tvoran Sep 16, 2021
78a355b
changelog++
tvoran Sep 16, 2021
cd20591
vault 0.16.0 release (#612)
tvoran Sep 16, 2021
b69e3d9
vault-helm default branch is now `main` (#618)
tvoran Sep 28, 2021
5dfc351
vault-helm 0.16.1 release (#619)
tvoran Sep 29, 2021
9758666
fix chart publish job (#620)
tvoran Sep 30, 2021
72c485d
ingress stable networking api (#590)
vrumjantsev Oct 9, 2021
ffd5086
changelog++ (#623)
tvoran Oct 11, 2021
96b8c98
Updating acceptance tests (#624)
tvoran Oct 11, 2021
d96a428
Feat: add externalTrafficPolicy support (#626)
benashz Oct 18, 2021
6914c4d
fix(csi-ds): mountpoint-dir same mountpath in pod (#628)
eyenx Oct 19, 2021
4aa01e8
Update changelog for #626 and #628 (#631)
benashz Oct 21, 2021
3b1bb78
Add server.ingress.ingressClassName (#630)
tvoran Oct 21, 2021
91ac2ee
vault-helm 0.17.0 release (#632)
tvoran Oct 21, 2021
dc08ab6
note a regression in 0.17.0 (#635)
tvoran Oct 23, 2021
c09c50f
Add option for Ingress pathType (#634)
tico24 Oct 25, 2021
a186036
changelog++ (#636)
imthaghost Oct 25, 2021
4db9e83
v0.17.1 (#637)
imthaghost Oct 25, 2021
8582cb3
Explain this fork in the README
j-setiawan Apr 2, 2020
9ad36a1
Adding support for LoadBalancerIP field in ServiceSpec
Apr 10, 2020
6ee557e
DATAGO-13861: Adding support for logrotate
hadielaham88 May 19, 2021
d5313bf
DATAGO-13861: Adding audit log rotation and shipment to datdog
hadielaham88 May 26, 2021
7f03e7c
Fixing minor typos and removing extra lines
hadielaham88 May 26, 2021
0e796d4
Update to 0.4.0
jasonodonnell Feb 21, 2020
a99988d
Explain this fork in the README
j-setiawan Apr 2, 2020
d7767ac
Adding support for LoadBalancerIP field in ServiceSpec
Apr 10, 2020
f8fc3b4
DATAGO-13861: Adding support for logrotate
hadielaham88 May 19, 2021
8e98540
DATAGO-13861: Adding audit log rotation and shipment to datdog
hadielaham88 May 26, 2021
3562df6
Fixing minor typos and removing extra lines
hadielaham88 May 26, 2021
d92becf
feat(DATAGO-27002): Upgrade vault to version 1.7.9 (#12)
nagsubhrajitt Jun 1, 2022
fa13d7d
fix: deploy_local.sh error with file
adhish2001 Jul 14, 2022
e4b7208
minor changes
adhish2001 Jul 14, 2022
b3cadd7
Merge branch 'develop' into DATAGO-30302/upgrading-vault-to-1.8.11
adhish2001 Jul 15, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 27 additions & 4 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,36 @@ jobs:
bats-unit-test:
docker:
# This image is built from test/docker/Test.dockerfile
- image: docker.mirror.hashicorp.services/hashicorpdev/vault-helm-test:0.1.0
- image: docker.mirror.hashicorp.services/hashicorpdev/vault-helm-test:0.2.0
steps:
- checkout
- run: bats ./test/unit -t

chart-verifier:
docker:
- image: docker.mirror.hashicorp.services/cimg/go:1.16
environment:
BATS_VERSION: "1.3.0"
CHART_VERIFIER_VERSION: "1.2.1"
steps:
- checkout
- run:
name: install chart-verifier
command: go get github.com/redhat-certification/chart-verifier@${CHART_VERIFIER_VERSION}
- run:
name: install bats
command: |
curl -sSL https://github.com/bats-core/bats-core/archive/v${BATS_VERSION}.tar.gz -o /tmp/bats.tgz
tar -zxf /tmp/bats.tgz -C /tmp
sudo /bin/bash /tmp/bats-core-${BATS_VERSION}/install.sh /usr/local
- run:
name: run chart-verifier tests
command: bats ./test/chart -t

acceptance:
docker:
# This image is build from test/docker/Test.dockerfile
- image: docker.mirror.hashicorp.services/hashicorpdev/vault-helm-test:0.1.0
- image: docker.mirror.hashicorp.services/hashicorpdev/vault-helm-test:0.2.0

steps:
- checkout
Expand Down Expand Up @@ -66,16 +88,17 @@ workflows:
build_and_test:
jobs:
- bats-unit-test
- chart-verifier
- acceptance:
requires:
- bats-unit-test
filters:
branches:
only: master
only: main
update-helm-charts-index:
jobs:
- update-helm-charts-index:
context: helm-charts-trigger
context: helm-charts-trigger-vault
filters:
tags:
only: /^v.*/
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,4 @@ vaul-helm-dev-creds.json
./test/unit/vaul-helm-dev-creds.json
./test/acceptance/values.yaml
./test/acceptance/values.yml
.idea
107 changes: 107 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,112 @@
## Unreleased

## 0.17.1 (October 25th, 2021)

Improvements:
* Add option for Ingress PathType [GH-634](https://github.com/hashicorp/vault-helm/pull/634)

## 0.17.0 (October 21st, 2021)

KNOWN ISSUES:
* The chart will fail to deploy on Kubernetes 1.19+ with `server.ingress.enabled=true` because no `pathType` is set

CHANGES:
* Vault image default 1.8.4
* Vault K8s image default 0.14.0

Improvements:
* Support Ingress stable networking API [GH-590](https://github.com/hashicorp/vault-helm/pull/590)
* Support setting the `externalTrafficPolicy` for `LoadBalancer` and `NodePort` service types [GH-626](https://github.com/hashicorp/vault-helm/pull/626)
* Support setting ingressClassName on server Ingress [GH-630](https://github.com/hashicorp/vault-helm/pull/630)

Bugs:
* Ensure `kubeletRootDir` volume path and mounts are the same when `csi.daemonSet.kubeletRootDir` is overridden [GH-628](https://github.com/hashicorp/vault-helm/pull/628)

## 0.16.1 (September 29th, 2021)

CHANGES:
* Vault image default 1.8.3
* Vault K8s image default 0.13.1

## 0.16.0 (September 16th, 2021)

CHANGES:
* Support for deploying a leader-elector container with the [vault-k8s injector](https://github.com/hashicorp/vault-k8s) injector will be removed in version 0.18.0 of this chart since vault-k8s now uses an internal mechanism to determine leadership. To enable the deployment of the leader-elector container for use with vault-k8s 0.12.0 and earlier, set `useContainer=true`.

Improvements:
* Make CSI provider `hostPaths` configurable via `csi.daemonSet.providersDir` and `csi.daemonSet.kubeletRootDir` [GH-603](https://github.com/hashicorp/vault-helm/pull/603)
* Support vault-k8s internal leader election [GH-568](https://github.com/hashicorp/vault-helm/pull/568) [GH-607](https://github.com/hashicorp/vault-helm/pull/607)

## 0.15.0 (August 23rd, 2021)

Improvements:
* Add imagePullSecrets on server test [GH-572](https://github.com/hashicorp/vault-helm/pull/572)
* Add injector.webhookAnnotations chart option [GH-584](https://github.com/hashicorp/vault-helm/pull/584)

## 0.14.0 (July 28th, 2021)

Features:
* Added templateConfig.exitOnRetryFailure annotation for the injector [GH-560](https://github.com/hashicorp/vault-helm/pull/560)

Improvements:
* Support configuring pod tolerations, pod affinity, and node selectors as YAML [GH-565](https://github.com/hashicorp/vault-helm/pull/565)
* Set the default vault image to come from the hashicorp organization [GH-567](https://github.com/hashicorp/vault-helm/pull/567)
* Add support for running the acceptance tests against a local `kind` cluster [GH-567](https://github.com/hashicorp/vault-helm/pull/567)
* Add `server.ingress.activeService` to configure if the ingress should use the active service [GH-570](https://github.com/hashicorp/vault-helm/pull/570)
* Add `server.route.activeService` to configure if the route should use the active service [GH-570](https://github.com/hashicorp/vault-helm/pull/570)
* Support configuring `global.imagePullSecrets` from a string array [GH-576](https://github.com/hashicorp/vault-helm/pull/576)


## 0.13.0 (June 17th, 2021)

Improvements:
* Added a helm test for vault server [GH-531](https://github.com/hashicorp/vault-helm/pull/531)
* Added server.enterpriseLicense option [GH-547](https://github.com/hashicorp/vault-helm/pull/547)
* Added OpenShift overrides [GH-549](https://github.com/hashicorp/vault-helm/pull/549)

Bugs:
* Fix ui.serviceNodePort schema [GH-537](https://github.com/hashicorp/vault-helm/pull/537)
* Fix server.ha.disruptionBudget.maxUnavailable schema [GH-535](https://github.com/hashicorp/vault-helm/pull/535)
* Added webhook-certs volume mount to sidecar injector [GH-545](https://github.com/hashicorp/vault-helm/pull/545)

## 0.12.0 (May 25th, 2021)

Features:
* Pass additional arguments to `vault-csi-provider` using `csi.extraArgs` [GH-526](https://github.com/hashicorp/vault-helm/pull/526)

Improvements:
* Set chart kubeVersion and added chart-verifier tests [GH-510](https://github.com/hashicorp/vault-helm/pull/510)
* Added values json schema [GH-513](https://github.com/hashicorp/vault-helm/pull/513)
* Ability to set tolerations for CSI daemonset pods [GH-521](https://github.com/hashicorp/vault-helm/pull/521)
* UI target port is now configurable [GH-437](https://github.com/hashicorp/vault-helm/pull/437)

Bugs:
* CSI: `global.imagePullSecrets` are now also used for CSI daemonset [GH-519](https://github.com/hashicorp/vault-helm/pull/519)

## 0.11.0 (April 14th, 2021)

Features:
* Added `server.enabled` to explicitly skip installing a Vault server [GH-486](https://github.com/hashicorp/vault-helm/pull/486)
* Injector now supports enabling host network [GH-471](https://github.com/hashicorp/vault-helm/pull/471)
* Injector port is now configurable [GH-489](https://github.com/hashicorp/vault-helm/pull/489)
* Injector Vault Agent resource defaults are now configurable [GH-493](https://github.com/hashicorp/vault-helm/pull/493)
* Extra paths can now be added to the Vault ingress service [GH-460](https://github.com/hashicorp/vault-helm/pull/460)
* Log level and format can now be set directly using `server.logFormat` and `server.logLevel` [GH-488](https://github.com/hashicorp/vault-helm/pull/488)

Improvements:
* Added `https` name to injector service port [GH-495](https://github.com/hashicorp/vault-helm/pull/495)

Bugs:
* CSI: Fix ClusterRole name and DaemonSet's service account to properly match deployment name [GH-486](https://github.com/hashicorp/vault-helm/pull/486)

## 0.10.0 (March 25th, 2021)

Features:
* Add support for [Vault CSI provider](https://github.com/hashicorp/vault-csi-provider) [GH-461](https://github.com/hashicorp/vault-helm/pull/461)

Improvements:
* `objectSelector` can now be set on the mutating admission webhook [GH-456](https://github.com/hashicorp/vault-helm/pull/456)

## 0.9.1 (February 2nd, 2021)

Bugs:
Expand Down
38 changes: 34 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ quickly merge or address your contributions.

* Make sure you test against the latest released version. It is possible
we already fixed the bug you're experiencing. Even better is if you can test
against `master`, as bugs are fixed regularly but new versions are only
against `main`, as bugs are fixed regularly but new versions are only
released every few months.

* Provide steps to reproduce the issue, and if possible include the expected
Expand Down Expand Up @@ -62,7 +62,37 @@ The unit tests don't require any active Kubernetes cluster and complete
very quickly. These should be used for fast feedback during development.
The acceptance tests require a Kubernetes cluster with a configured `kubectl`.

### Prequisites
### Test Using Docker Container

The following are the instructions for running bats tests using a Docker container.

#### Prerequisites

* Docker installed
* `vault-helm` checked out locally

#### Test

**Note:** the following commands should be run from the `vault-helm` directory.

First, build the Docker image for running the tests:

```shell
docker build -f ${PWD}/test/docker/Test.dockerfile ${PWD}/test/docker/ -t vault-helm-test
```
Next, execute the tests with the following commands:
```shell
docker run -it --rm -v "${PWD}:/test" vault-helm-test bats /test/test/unit
```
It's possible to only run specific bats tests using regular expressions.
For example, the following will run only tests with "injector" in the name:
```shell
docker run -it --rm -v "${PWD}:/test" vault-helm-test bats /test/test/unit -f "injector"
```

### Test Manually
The following are the instructions for running bats tests on your workstation.
#### Prerequisites
* [Bats](https://github.com/bats-core/bats-core)
```bash
brew install bats-core
Expand All @@ -76,7 +106,7 @@ The acceptance tests require a Kubernetes cluster with a configured `kubectl`.
brew install kubernetes-helm
```

### Running The Tests
#### Test

To run the unit tests:

Expand All @@ -91,7 +121,7 @@ may not be properly cleaned up. We recommend recycling the Kubernetes cluster to
start from a clean slate.

**Note:** There is a Terraform configuration in the
[`test/terraform/`](https://github.com/hashicorp/vault-helm/tree/master/test/terraform) directory
[`test/terraform/`](https://github.com/hashicorp/vault-helm/tree/main/test/terraform) directory
that can be used to quickly bring up a GKE cluster and configure
`kubectl` and `helm` locally. This can be used to quickly spin up a test
cluster for acceptance tests. Unit tests _do not_ require a running Kubernetes
Expand Down
8 changes: 5 additions & 3 deletions Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
apiVersion: v2
name: vault
version: 0.9.1
appVersion: 1.6.2
description: Official HashiCorp Vault Chart
version: 0.17.1
appVersion: 1.8.4
kubeVersion: ">= 1.14.0-0"
description: Install and configure Vault on Kubernetes.
home: https://www.vaultproject.io
icon: https://github.com/hashicorp/vault/raw/f22d202cde2018f9455dec755118a9b84586e082/Vault_PrimaryLogo_Black.png
keywords: ["vault", "security", "encryption", "secrets", "management", "automation", "infrastructure"]
sources:
- https://github.com/hashicorp/vault
- https://github.com/hashicorp/vault-helm
- https://github.com/hashicorp/vault-k8s
- https://github.com/hashicorp/vault-csi-provider
42 changes: 39 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,27 @@ CLOUDSDK_CORE_PROJECT?=vault-helm-dev-246514
# set to run a single test - e.g acceptance/server-ha-enterprise-dr.bats
ACCEPTANCE_TESTS?=acceptance

# filter bats unit tests to run.
UNIT_TESTS_FILTER?='.*'

# set to 'true' to run acceptance tests locally in a kind cluster
LOCAL_ACCEPTANCE_TESTS?=false

# kind cluster name
KIND_CLUSTER_NAME?=vault-helm

# kind k8s version
KIND_K8S_VERSION?=v1.20.2

# Generate json schema for chart values. See test/README.md for more details.
values-schema:
helm schema-gen values.yaml > values.schema.json

test-image:
@docker build --rm -t $(TEST_IMAGE) -f $(CURDIR)/test/docker/Test.dockerfile $(CURDIR)

test-unit:
@docker run -it -v ${PWD}:/helm-test $(TEST_IMAGE) bats /helm-test/test/unit
@docker run --rm -it -v ${PWD}:/helm-test $(TEST_IMAGE) bats -f $(UNIT_TESTS_FILTER) /helm-test/test/unit

test-bats: test-unit test-acceptance

Expand All @@ -17,14 +33,19 @@ test: test-image test-bats
# run acceptance tests on GKE
# set google project/credential vars above
test-acceptance:
ifeq ($(LOCAL_ACCEPTANCE_TESTS),true)
make setup-kind acceptance
else
@docker run -it -v ${PWD}:/helm-test \
-e GOOGLE_CREDENTIALS=${GOOGLE_CREDENTIALS} \
-e CLOUDSDK_CORE_PROJECT=${CLOUDSDK_CORE_PROJECT} \
-e KUBECONFIG=/helm-test/.kube/config \
-e VAULT_LICENSE_CI=${VAULT_LICENSE_CI} \
-w /helm-test \
$(TEST_IMAGE) \
make acceptance

endif

# destroy GKE cluster using terraform
test-destroy:
@docker run -it -v ${PWD}:/helm-test \
Expand All @@ -47,7 +68,9 @@ test-provision:
# this target is for running the acceptance tests
# it is run in the docker container above when the test-acceptance target is invoked
acceptance:
ifneq ($(LOCAL_ACCEPTANCE_TESTS),true)
gcloud auth activate-service-account --key-file=${GOOGLE_CREDENTIALS}
endif
bats test/${ACCEPTANCE_TESTS}

# this target is for provisioning the GKE cluster
Expand All @@ -62,4 +85,17 @@ provision-cluster:
destroy-cluster:
terraform destroy -auto-approve

.PHONY: test-image test-unit test-bats test test-acceptance test-destroy test-provision acceptance provision-cluster destroy-cluster
# create a kind cluster for running the acceptance tests locally
setup-kind:
kind get clusters | grep -q "^${KIND_CLUSTER_NAME}$$" || \
kind create cluster \
--image kindest/node:${KIND_K8S_VERSION} \
--name ${KIND_CLUSTER_NAME} \
--config $(CURDIR)/test/kind/config.yaml
kubectl config use-context kind-${KIND_CLUSTER_NAME}

# delete the kind cluster
delete-kind:
kind delete cluster --name ${KIND_CLUSTER_NAME} || :

.PHONY: values-schema test-image test-unit test-bats test test-acceptance test-destroy test-provision acceptance provision-cluster destroy-cluster
29 changes: 22 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
# MaaS Vault

This is a forked version of HashiCorp's Vault Helm Chart. It is forked for business continuity (should the original be deleted) and to adhere to the MPL-2.0 license of public disclosure of source changes.
This repository is used as a submodule in other repositories that install and setup Vault.

# Vault Helm Chart

> :warning: **Please note**: We take Vault's security and our users' trust very seriously. If
Expand All @@ -15,16 +20,16 @@ use Vault with Kubernetes, please see the
## Prerequisites

To use the charts here, [Helm](https://helm.sh/) must be configured for your
Kubernetes cluster. Setting up Kubernetes and Helm and is outside the scope of
Kubernetes cluster. Setting up Kubernetes and Helm is outside the scope of
this README. Please refer to the Kubernetes and Helm documentation.

The versions required are:

* **Helm 3.0+** - This is the earliest version of Helm tested. It is possible
it works with earlier versions but this chart is untested for those versions.
* **Kubernetes 1.9+** - This is the earliest version of Kubernetes tested.
* **Kubernetes 1.14+** - This is the earliest version of Kubernetes tested.
It is possible that this chart works with earlier versions but it is
untested. Other versions verified are Kubernetes 1.10, 1.11.
untested.

## Usage

Expand All @@ -38,7 +43,17 @@ $ helm repo add hashicorp https://helm.releases.hashicorp.com
$ helm install vault hashicorp/vault
```

Please see the many options supported in the `values.yaml` file. These are also
fully documented directly on the [Vault
website](https://www.vaultproject.io/docs/platform/k8s/helm) along with more
detailed installation instructions.
Please see the many options supported in the `values.yaml`
file. These are also fully documented directly on the
[Vault website](https://www.vaultproject.io/docs/platform/k8s/helm.html).


## Customizations

This Helm chart has been customized in the following ways:

### Support LoadBalancerIP Field

The Service spec in the **server-service.yaml** file now allows setting a
specific IP address when the Service type is set to `LoadBalancer` and a
**maas.lbAddress** value has been provided.
Loading