Skip to content

Commit

Permalink
NATS 1.x Helm Chart (#704)
Browse files Browse the repository at this point in the history
* nats-next helm chart

Signed-off-by: Caleb Lloyd <[email protected]>

* volume claim templates

Signed-off-by: Caleb Lloyd <[email protected]>

* persistence

Signed-off-by: Caleb Lloyd <[email protected]>

* load merge patch pattern

Signed-off-by: Caleb Lloyd <[email protected]>

* support nats config vars, units, and include

Signed-off-by: Caleb Lloyd <[email protected]>

* re-work jetstream values

Signed-off-by: Caleb Lloyd <[email protected]>

* reset merged values

Signed-off-by: Caleb Lloyd <[email protected]>

* separate jetstream config and pvc

* disable cluster advertisements by default

* tls

Signed-off-by: Caleb Lloyd <[email protected]>

* reloader

Signed-off-by: Caleb Lloyd <[email protected]>

* reorg config

Signed-off-by: Caleb Lloyd <[email protected]>

* nats box

Signed-off-by: Caleb Lloyd <[email protected]>

* nats protocol is always enabled

Signed-off-by: Caleb Lloyd <[email protected]>

* nest nats resources

Signed-off-by: Caleb Lloyd <[email protected]>

* un-nest nats

Signed-off-by: Caleb Lloyd <[email protected]>

* standardize pvc size

Signed-off-by: Caleb Lloyd <[email protected]>

* pvc names

Signed-off-by: Caleb Lloyd <[email protected]>

* allow overriding resource names

Signed-off-by: Caleb Lloyd <[email protected]>

* add websocket ingress

Signed-off-by: Caleb Lloyd <[email protected]>

* extra resources

Signed-off-by: Caleb Lloyd <[email protected]>

* update tplYaml

Signed-off-by: Caleb Lloyd <[email protected]>

* update extraResources example

Signed-off-by: Caleb Lloyd <[email protected]>

* test beginnings

Signed-off-by: Caleb Lloyd <[email protected]>

* more tests

Signed-off-by: Caleb Lloyd <[email protected]>

* default values test

Signed-off-by: Caleb Lloyd <[email protected]>

* ports test

Signed-off-by: Caleb Lloyd <[email protected]>

* port and config tests

Signed-off-by: Caleb Lloyd <[email protected]>

* tls test

Signed-off-by: Caleb Lloyd <[email protected]>

* resource merge/patch tests

Signed-off-by: Caleb Lloyd <[email protected]>

* global image section

Signed-off-by: Caleb Lloyd <[email protected]>

* nats box tests

Signed-off-by: Caleb Lloyd <[email protected]>

* includes test

Signed-off-by: Caleb Lloyd <[email protected]>

* extra resources test

Signed-off-by: Caleb Lloyd <[email protected]>

* rename nats-next to nats

Signed-off-by: Caleb Lloyd <[email protected]>

* fix nats-box test

Signed-off-by: Caleb Lloyd <[email protected]>

* fix linting

Signed-off-by: Caleb Lloyd <[email protected]>

* fix nindent check

Signed-off-by: Caleb Lloyd <[email protected]>

* bump test k8s versions

Signed-off-by: Caleb Lloyd <[email protected]>

* disable cluster and js by default

Signed-off-by: Caleb Lloyd <[email protected]>

* fix lint

Signed-off-by: Caleb Lloyd <[email protected]>

* CI updates

Signed-off-by: Caleb Lloyd <[email protected]>

* move ingress under config.websocket

Signed-off-by: Caleb Lloyd <[email protected]>

* remove cluster replica check

gateways could be configured which would enable single replica cluster to work

Signed-off-by: Caleb Lloyd <[email protected]>

* upgrade to nats 2.9.16

Signed-off-by: Caleb Lloyd <[email protected]>

* POD_NAME env var

* documentation

Signed-off-by: Caleb Lloyd <[email protected]>

* add optional service accounts

Signed-off-by: Caleb Lloyd <[email protected]>

* default enableServiceLinks: false

service discovery uses DNS; don't need service env vars

Signed-off-by: Caleb Lloyd <[email protected]>

* fix lint

Signed-off-by: Caleb Lloyd <[email protected]>

* add global labels

Signed-off-by: Caleb Lloyd <[email protected]>

* nats-box non-polling sleep

Signed-off-by: Caleb Lloyd <[email protected]>

* add helpers for secretNames

Signed-off-by: Caleb Lloyd <[email protected]>

* make include example clearer

Signed-off-by: Caleb Lloyd <[email protected]>

* natsBox: only create contents secret if used

Signed-off-by: Caleb Lloyd <[email protected]>

* tls key does not support contents

Signed-off-by: Caleb Lloyd <[email protected]>

---------

Signed-off-by: Caleb Lloyd <[email protected]>
  • Loading branch information
caleblloyd authored and Caleb Lloyd committed Aug 1, 2023
1 parent f87652b commit 9d9d64c
Show file tree
Hide file tree
Showing 70 changed files with 5,293 additions and 3,539 deletions.
27 changes: 27 additions & 0 deletions .github/workflows/nats-helm.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: nats-helm

on:
pull_request:
paths:
- 'helm/charts/nats/**'
- .github/workflows/nats-helm.yml

jobs:
test:
runs-on: ubuntu-latest
steps:

- name: Setup repo
uses: actions/checkout@v3

- name: Setup Go
uses: actions/setup-go@v4
with:
go-version: '1.20'
check-latest: true
cache: true
cache-dependency-path: helm/charts/nats/test/go.sum

- name: Test
working-directory: helm/charts/nats/test
run: go test
1 change: 1 addition & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:
push:
branches:
- main
- helm-nats-1.x

jobs:
release:
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ on:
pull_request:
paths:
- 'helm/charts/**'
- '!helm/charts/index.yaml'
- '.github/workflows/test.yaml'

jobs:
Expand All @@ -15,9 +14,9 @@ jobs:
fail-fast: false
matrix:
k8s:
- "1.23"
- "1.22"
- "1.21"
- "1.26"
- "1.25"
- "1.24"
steps:
- name: Checkout
uses: actions/checkout@v3
Expand Down Expand Up @@ -57,6 +56,8 @@ jobs:
helm/charts/stan \
-type f \
-not -name "*.md" \
-not -name "*.go" \
-not -name "_tplYaml.tpl" \
| xargs grep -E "^[ ]*\{[^\}]+nindent $i" \
| grep -Ev "^[^:]+:[ ]{$i}\{"; then
echo "invalid nindent $i found; nindent should match template indentation"
Expand All @@ -68,8 +69,7 @@ jobs:
- name: Create k8s cluster
run: |-
sudo snap install microk8s --channel="${{ matrix.k8s }}/stable" --classic
sudo microk8s.enable dns
sudo microk8s.enable storage
sudo microk8s.enable dns hostpath-storage
sudo microk8s.kubectl wait --for=condition=ready --timeout=60s node --all
sudo microk8s.kubectl wait --for=condition=ready --timeout=120s --namespace=kube-system pod --all
mkdir -p ~/.kube
Expand Down
4 changes: 4 additions & 0 deletions helm/charts/nats/.helmignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,13 @@
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

# template tests
/test
7 changes: 3 additions & 4 deletions helm/charts/nats/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
apiVersion: v2
appVersion: 2.9.20
description: A Helm chart for the NATS.io High Speed Cloud Native Distributed Communications
Technology.
appVersion: 2.9.16
description: A Helm chart for the NATS.io High Speed Cloud Native Distributed Communications Technology.
name: nats
keywords:
- nats
- messaging
- cncf
version: 0.19.17
version: 1.0.0-beta.0
home: http://github.com/nats-io/k8s
maintainers:
- email: [email protected]
Expand Down
Loading

0 comments on commit 9d9d64c

Please sign in to comment.