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

Add polkadot umbrella chart #320

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 2 additions & 0 deletions charts/polkadot/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
ci/**/charts/
Chart.lock
14 changes: 14 additions & 0 deletions charts/polkadot/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
apiVersion: v2
name: node
description: A Helm chart to deploy Polkadot nodes
type: application
version: 1.0.0
appVersion: 1.5.0
maintainers:
- name: Parity
url: https://github.com/paritytech/helm-charts
email: [email protected]
dependencies:
- name: node
version: 5.6.0
repository: https://paritytech.github.io/helm-charts/
103 changes: 103 additions & 0 deletions charts/polkadot/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
<!--
DO NOT EDIT README.md manually!
We're using [helm-docs](https://github.com/norwoodj/helm-docs) to render values of the chart.
If you updated values.yaml file make sure to render a new README.md locally before submitting a Pull Request.
If you're using [pre-commit](https://pre-commit.com/) make sure to install the hooks first:
```
pre-commit install
```
REAMDE.md will be updating automatically after that.
Otherwise, you should install helm-docs and manually update README.md. Navigate to repository root and run:
`helm-docs --chart-search-root=charts/node --template-files=README.md.gotmpl`
You may encounter `files were modified by this hook` error after updating README.md.gotmpl file when using pre-commit.
This is intended behaviour. Make sure to run `git add -A` once again to stage changes in the auto-updated REAMDE.md
-->

# Polkadot node Helm chart

![Version: 1.0.0](https://img.shields.io/badge/Version-1.0.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.5.0](https://img.shields.io/badge/AppVersion-1.5.0-informational?style=flat-square)

## Maintainers

| Name | Email | Url |
| ---- | ------ | --- |
| Parity | <[email protected]> | <https://github.com/paritytech/helm-charts> |

## Installing the chart

```console
helm repo add parity https://paritytech.github.io/helm-charts/
helm install polkadot parity/polkadot
```

This will deploy a single Polkadot node with the default configuration, using a pruned database snapshot for fast setup.

### Public database snapshots

You can use public database snapshots from [snapshots.polkadot.io](https://snapshots.polkadot.io/), eg:

- https://snapshots.polkadot.io/polkadot-paritydb-prune
- https://snapshots.polkadot.io/polkadot-rocksdb-prune
- https://snapshots.polkadot.io/polkadot-rocksdb-archive
- https://snapshots.polkadot.io/kusama-paritydb-prune
- https://snapshots.polkadot.io/kusama-rocksdb-prune
- https://snapshots.polkadot.io/kusama-rocksdb-archive
- https://snapshots.polkadot.io/westend-paritydb-archive
- https://snapshots.polkadot.io/westend-paritydb-prune
- https://snapshots.polkadot.io/westend-rocksdb-prune
- https://snapshots.polkadot.io/westend-rocksdb-archive
- https://snapshots.polkadot.io/westend-collectives-rocksdb-archive

For example, to restore a Kusama pruned node ParityDB database from a snapshot, use the following chart values:
```yaml
node:
node:
chain: kusama
chainData:
chainSnapshot:
enabled: true
url: https://snapshots.polkadot.io/kusama-paritydb-prune
pruning: 256
```
Polkadot and Kusama backups are pruned at 256 blocks. Westend backups are pruned at 1000 blocks.
### Resizing the node disk
Refer to the ["Resizing the node disk section" of the node chart](https://github.com/paritytech/helm-charts/tree/main/charts/node#resizing-the-node-disk).
### Optional Vault Integration
Refer to the ["Optional Vault Integration section" of the node chart](https://github.com/paritytech/helm-charts/tree/main/charts/node#optional-vault-integration).
## Requirements
| Repository | Name | Version |
|------------|------|---------|
| https://paritytech.github.io/helm-charts/ | node | 5.6.0 |
## Values
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| node.image.repository | string | `"parity/polkadot"` | Image repository |
| node.image.tag | string | `"1.5.0"` | Image tag |
| node.node.chain | string | `"polkadot"` | Embedded chain specification to use (eg: polkadot, kusama, paseo, rococo, westend) |
| node.node.chainData.chainSnapshot.enabled | bool | `true` | Enable restoring the chain datababase from a snapshot using [rclone](https://rclone.org/) |
| node.node.chainData.chainSnapshot.method | string | `"http-filelist"` | Restoration method. One of: gcs, s3, http-single-tar, http-single-tar-lz4, http-filelist |
| node.node.chainData.chainSnapshot.url | string | `"https://snapshots.polkadot.io/polkadot-paritydb-prune"` | The URL to download the chain database snapshot |
| node.node.chainData.database | string | `"paritydb"` | Database backend engine to use |
| node.node.chainData.pruning | int | `256` | State-pruning to set |
| node.node.chainData.volumeSize | string | `nil` | Size of the chain data volume |
| node.node.chainKeystore.mountInMemory.enabled | bool | `false` | Enable mounting keystore in memory keystore using an emptyDir volume |
| node.node.command | string | `"polkadot"` | Command to run within the container |
| node.node.existingSecrets | string | `nil` | Inject keys from already existing Kubernetes secrets |
| node.node.flags | string | `nil` | Flags to add to the Polkadot binary |
| node.node.keys | string | `nil` | Keys to set on the node. |
| node.node.vault | string | `nil` | Inject secrets via Hashicorp Vault annotations |

----------------------------------------------
Autogenerated from chart metadata using [helm-docs v1.12.0](https://github.com/norwoodj/helm-docs/releases/v1.12.0)
76 changes: 76 additions & 0 deletions charts/polkadot/README.md.gotmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
<!--
DO NOT EDIT README.md manually!
We're using [helm-docs](https://github.com/norwoodj/helm-docs) to render values of the chart.
If you updated values.yaml file make sure to render a new README.md locally before submitting a Pull Request.

If you're using [pre-commit](https://pre-commit.com/) make sure to install the hooks first:
```
pre-commit install
```
REAMDE.md will be updating automatically after that.

Otherwise, you should install helm-docs and manually update README.md. Navigate to repository root and run:
`helm-docs --chart-search-root=charts/node --template-files=README.md.gotmpl`

You may encounter `files were modified by this hook` error after updating README.md.gotmpl file when using pre-commit.
This is intended behaviour. Make sure to run `git add -A` once again to stage changes in the auto-updated REAMDE.md
-->

# Polkadot node Helm chart

{{ template "chart.versionBadge" . }}{{ template "chart.typeBadge" . }}{{ template "chart.appVersionBadge" . }}

{{ template "chart.maintainersSection" . }}

## Installing the chart

```console
helm repo add parity https://paritytech.github.io/helm-charts/
helm install polkadot parity/polkadot
```

This will deploy a single Polkadot node with the default configuration, using a pruned database snapshot for fast setup.

### Public database snapshots

You can use public database snapshots from [snapshots.polkadot.io](https://snapshots.polkadot.io/), eg:

- https://snapshots.polkadot.io/polkadot-paritydb-prune
- https://snapshots.polkadot.io/polkadot-rocksdb-prune
- https://snapshots.polkadot.io/polkadot-rocksdb-archive
- https://snapshots.polkadot.io/kusama-paritydb-prune
- https://snapshots.polkadot.io/kusama-rocksdb-prune
- https://snapshots.polkadot.io/kusama-rocksdb-archive
- https://snapshots.polkadot.io/westend-paritydb-archive
- https://snapshots.polkadot.io/westend-paritydb-prune
- https://snapshots.polkadot.io/westend-rocksdb-prune
- https://snapshots.polkadot.io/westend-rocksdb-archive
- https://snapshots.polkadot.io/westend-collectives-rocksdb-archive

For example, to restore a Kusama pruned node ParityDB database from a snapshot, use the following chart values:
```yaml
node:
node:
chain: kusama
chainData:
chainSnapshot:
enabled: true
url: https://snapshots.polkadot.io/kusama-paritydb-prune
pruning: 256
```

Polkadot and Kusama backups are pruned at 256 blocks. Westend backups are pruned at 1000 blocks.

### Resizing the node disk

Refer to the ["Resizing the node disk section" of the node chart](https://github.com/paritytech/helm-charts/tree/main/charts/node#resizing-the-node-disk).

### Optional Vault Integration

Refer to the ["Optional Vault Integration section" of the node chart](https://github.com/paritytech/helm-charts/tree/main/charts/node#optional-vault-integration).

{{ template "chart.requirementsSection" . }}

{{ template "chart.valuesSection" . }}

{{ template "helm-docs.versionFooter" . }}
Empty file.
38 changes: 38 additions & 0 deletions charts/polkadot/values.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
node:
image:
# -- Image repository
repository: parity/polkadot
# -- Image tag
tag: 1.5.0
node:
# -- Embedded chain specification to use (eg: polkadot, kusama, paseo, rococo, westend)
chain: polkadot
# -- Command to run within the container
command: "polkadot"
chainData:
chainSnapshot:
# -- Enable restoring the chain datababase from a snapshot using [rclone](https://rclone.org/)
enabled: true
# -- Restoration method. One of: gcs, s3, http-single-tar, http-single-tar-lz4, http-filelist
method: http-filelist
# -- The URL to download the chain database snapshot
url: https://snapshots.polkadot.io/polkadot-paritydb-prune
# -- Database backend engine to use
database: paritydb
# -- State-pruning to set
pruning: 256 # or archive
# -- Size of the chain data volume
volumeSize:
chainKeystore:
mountInMemory:
# -- Enable mounting keystore in memory keystore using an emptyDir volume
enabled: false

# -- Flags to add to the Polkadot binary
flags:
# -- Keys to set on the node.
keys:
# -- Inject keys from already existing Kubernetes secrets
existingSecrets:
# -- Inject secrets via Hashicorp Vault annotations
vault:
Loading