Skip to content

Commit

Permalink
add vaultwarden
Browse files Browse the repository at this point in the history
  • Loading branch information
andrenarchy committed Nov 20, 2023
1 parent 3ca4a8f commit 4c60a0e
Show file tree
Hide file tree
Showing 10 changed files with 304 additions and 0 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
charts/*/charts
26 changes: 26 additions & 0 deletions charts/vaultwarden/.helmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
# OWNERS file for Kubernetes
OWNERS
# helm-docs templates
*.gotmpl
12 changes: 12 additions & 0 deletions charts/vaultwarden/Chart.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
dependencies:
- name: common
repository: https://library-charts.k8s-at-home.com
version: 4.5.2
- name: mariadb
repository: https://charts.bitnami.com/bitnami
version: 11.0.14
- name: postgresql
repository: https://charts.bitnami.com/bitnami
version: 11.6.12
digest: sha256:cf7703aa35a8152efeee74a06bcfae58b64df9e0a8342da65ef571a06242586f
generated: "2022-12-06T22:09:22.954212797+01:00"
33 changes: 33 additions & 0 deletions charts/vaultwarden/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
apiVersion: v2
appVersion: 1.30.1
description: Vaultwarden is a Bitwarden compatable server in Rust
name: vaultwarden
version: 6.0.0
kubeVersion: ">=1.16.0-0"
keywords:
- Vaultwarden
- bitwardenrs
home: "https://github.com/k8s-at-home/charts/tree/master/charts/stable/vaultwarden"
icon: "https://sesoodan.sirv.com/bitwarden_rs.png"
sources:
- https://github.com/dani-garcia/vaultwarden
maintainers:
- name: André Gaul
email: [email protected]
dependencies:
- name: common
repository: https://library-charts.k8s-at-home.com
version: 4.5.2
- name: mariadb
version: 11.0.14
repository: https://charts.bitnami.com/bitnami
condition: mariadb.enabled
- name: postgresql
version: 11.6.12
repository: https://charts.bitnami.com/bitnami
condition: postgresql.enabled
annotations:
artifacthub.io/changes: |-
- kind: changed
description: Upgraded `common` chart dependency to version 4.5.2
124 changes: 124 additions & 0 deletions charts/vaultwarden/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
# vaultwarden

Helm chart originally based on a chart from [k8s-at-home](https://github.com/k8s-at-home/charts).

## Source Code

* <https://github.com/dani-garcia/vaultwarden>

## Requirements

Kubernetes: `>=1.16.0-0`

## Dependencies

| Repository | Name | Version |
|------------|------|---------|
| https://charts.bitnami.com/bitnami | mariadb | 11.0.14 |
| https://charts.bitnami.com/bitnami | postgresql | 11.6.12 |
| https://library-charts.k8s-at-home.com | common | 4.5.2 |

## TL;DR

```console
helm repo add k8s-at-home https://k8s-at-home.com/charts/
helm repo update
helm install vaultwarden k8s-at-home/vaultwarden
```

## Installing the Chart

To install the chart with the release name `vaultwarden`

```console
helm install vaultwarden k8s-at-home/vaultwarden
```

## Uninstalling the Chart

To uninstall the `vaultwarden` deployment

```console
helm uninstall vaultwarden
```

The command removes all the Kubernetes components associated with the chart **including persistent volumes** and deletes the release.

## Configuration

Read through the [values.yaml](./values.yaml) file. It has several commented out suggested values.
Other values may be used from the [values.yaml](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml) from the [common library](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common).

Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.

```console
helm install vaultwarden \
--set env.TZ="America/New York" \
k8s-at-home/vaultwarden
```

Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart.

```console
helm install vaultwarden k8s-at-home/vaultwarden -f values.yaml
```

## Custom configuration

The Vaultwarden chart requires the `/config` folder to exist. In order to provide this, some type of storage needs to be implemented.
For testing purposes, the following config snippet will work:

````yaml
persistence:
config:
enabled: true
type: emptyDir
````

## Values

**Important**: When deploying an application Helm chart you can add more values from our common library chart [here](https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common)

| Key | Type | Default | Description |
|-----|------|---------|-------------|
| env | object | See below | environment variables. See [image docs](https://github.com/dani-garcia/vaultwarden/blob/main/.env.template) for more details. |
| env.DATA_FOLDER | string | `"config"` | Config dir |
| image.pullPolicy | string | `"IfNotPresent"` | image pull policy |
| image.repository | string | `"vaultwarden/server"` | image repository |
| image.tag | string | chart.appVersion | image tag |
| ingress.main | object | See values.yaml | Enable and configure ingress settings for the chart under this key. |
| mariadb.enabled | bool | `false` | |
| persistence | object | See values.yaml | Configure persistence settings for the chart under this key. |
| postgresql.enabled | bool | `false` | |
| service | object | See values.yaml | Configures service settings for the chart. Normally this does not need to be modified. |
| strategy.type | string | `"Recreate"` | |

## Changelog

### Version 5.3.2

#### Added

N/A

#### Changed

* Upgraded `common` chart dependency to version 4.5.2

#### Fixed

N/A

### Older versions

A historical overview of changes can be found on [ArtifactHUB](https://artifacthub.io/packages/helm/k8s-at-home/vaultwarden?modal=changelog)

## Support

- See the [Docs](https://docs.k8s-at-home.com/our-helm-charts/getting-started/)
- Open an [issue](https://github.com/k8s-at-home/charts/issues/new/choose)
- Ask a [question](https://github.com/k8s-at-home/organization/discussions)
- Join our [Discord](https://discord.gg/sTMX7Vh) community

----------------------------------------------
Autogenerated from chart metadata using [helm-docs v0.1.1](https://github.com/k8s-at-home/helm-docs/releases/v0.1.1)
17 changes: 17 additions & 0 deletions charts/vaultwarden/README_CONFIG.md.gotmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{{- define "custom.custom.configuration.header" -}}
## Custom configuration
{{- end -}}

{{- define "custom.custom.configuration" -}}
{{ template "custom.custom.configuration.header" . }}

The Vaultwarden chart requires the `/config` folder to exist. In order to provide this, some type of storage needs to be implemented.
For testing purposes, the following config snippet will work:

````yaml
persistence:
config:
enabled: true
type: emptyDir
````
{{- end -}}
4 changes: 4 additions & 0 deletions charts/vaultwarden/ci/ct-values.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
persistence:
config:
enabled: true
type: emptyDir
1 change: 1 addition & 0 deletions charts/vaultwarden/templates/NOTES.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{{- include "common.notes.defaultNotes" . -}}
1 change: 1 addition & 0 deletions charts/vaultwarden/templates/common.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{{ include "common.all" . }}
85 changes: 85 additions & 0 deletions charts/vaultwarden/values.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
#
# IMPORTANT NOTE
#
# This chart inherits from our common library chart. You can check the default values/options here:
# https://github.com/k8s-at-home/library-charts/tree/main/charts/stable/common/values.yaml
#

image:
# -- image repository
repository: vaultwarden/server
# -- image pull policy
pullPolicy: IfNotPresent
# -- image tag
# @default -- chart.appVersion
tag:

strategy:
type: Recreate

# -- environment variables. See [image docs](https://github.com/dani-garcia/vaultwarden/blob/main/.env.template) for more details.
# @default -- See below
env:
# -- Config dir
DATA_FOLDER: "config"

# -- Configures service settings for the chart. Normally this does not need to be modified.
# @default -- See values.yaml
service:
main:
ports:
http:
port: 80
websocket:
enabled: true
port: 3012

ingress:
# -- Enable and configure ingress settings for the chart under this key.
# @default -- See values.yaml
main:
enabled: false
hosts:
- host: chart-example.local
paths:
- path: /
pathType: Prefix
service:
port: http
- path: /notifications/hub/negotiate
pathType: Prefix
service:
port: http
- path: /notifications/hub
pathType: Prefix
service:
port: websocket

# -- Configure persistence settings for the chart under this key.
# @default -- See values.yaml
persistence:
config:
enabled: false

# https://github.com/bitnami/charts/tree/master/bitnami/mariadb/#installing-the-chart
mariadb:
enabled: false
# primary:
# persistence:
# enabled: true
# auth:
# username: "username"
# password: "password"
# database: database

# https://github.com/bitnami/charts/tree/master/bitnami/postgresql/#installing-the-chart
postgresql:
enabled: false
# postgresqlUsername: ""
# postgresqlPassword: ""
# postgresqlDatabase: ""
# persistence:
# enabled: true
# storageClass:
# accessModes:
# - ReadWriteOnce

0 comments on commit 4c60a0e

Please sign in to comment.