* Add a chart for Mercure.rocks Signed-off-by: Kévin Dunglas <dunglas@gmail.com> * Fix maintainer Signed-off-by: Kévin Dunglas <dunglas@gmail.com> * Update stable/mercure/templates/secret.yaml Co-Authored-By: dunglas <dunglas@gmail.com> Signed-off-by: Kévin Dunglas <dunglas@gmail.com> * Add ingress support Signed-off-by: Kévin Dunglas <dunglas@gmail.com> * Rename var Signed-off-by: Kévin Dunglas <dunglas@gmail.com> * Fix review Signed-off-by: Kévin Dunglas <dunglas@gmail.com> * Replace latest by v0 Signed-off-by: Kévin Dunglas <dunglas@gmail.com> * Update stable/mercure/Chart.yaml Co-Authored-By: dunglas <dunglas@gmail.com> Signed-off-by: Kévin Dunglas <dunglas@gmail.com> * Add OWNERS to .helmignore Signed-off-by: Kévin Dunglas <dunglas@gmail.com>
Mercure
Mercure is a protocol allowing to push data updates to web browsers and other HTTP clients in a convenient, fast, reliable and battery-efficient way.
TL;DR;
$ helm install stable/mercure
Introduction
This chart bootstraps a Mercure Hub deployment on a Kubernetes cluster using the Helm package manager.
Prerequisites
- Kubernetes 1.4+ with Beta APIs enabled
- PV provisioner support in the underlying infrastructure
Installing the Chart
To install the chart with the release name my-release:
$ helm install --name my-release stable/mercure
The command deploys the Mercure Hub on the Kubernetes cluster in the default configuration. The configuration section lists the parameters that can be configured during installation.
Tip
: List all releases using
helm list
Uninstalling the Chart
To uninstall/delete the my-release deployment:
$ helm delete my-release
The command removes all the Kubernetes components associated with the chart and deletes the release.
Configuration
The following table lists the configurable parameters of the Moodle chart and their default values.
| Parameter | Description | Default | ||
|---|---|---|---|---|
allowAnonymous |
set to 1 to allow subscribers with no valid JWT to connect |
0 |
||
corsAllowedOrigins |
a comma separated list of allowed CORS origins, can be * for all |
empty | ||
debug |
set to 1 to enable the debug mode (prints recovery stack traces) |
0 |
||
demo |
set to 1 to enable the demo mode (automatically enabled when debug is 1) |
0 |
||
jwtKey |
the JWT key to use for both publishers and subscribers | random string | ||
logFormat |
the log format | FLUENTD |
||
publishAllowedOrigins |
a comma separated list of origins allowed to publish (only applicable when using cookie-based auth) | empty | ||
publisherJwtKey |
must contain the secret key to valid publishers' JWT, can be omited in favor of jwtKey |
empty | ||
subscriberJwtKey |
must contain the secret key to valid subscribers' JWT, can be omited in favor of jwtKey |
empty | ||
image.repository |
controller container image repository | dunglas/mercure |
||
image.tag |
controller container image tag | v0.3.2 |
||
image.pullPolicy |
controller container image pull policy | IfNotPresent |
||
nameOverride |
Name override | empty | ||
fullnameOverride |
fullname override | `empty | ||
service.type |
Service type | NodePort |
||
service.port |
Service port | 80 |
||
ingress.enabled |
Enables Ingress | false |
||
ingress.annotations |
Ingress annotations | {} |
||
ingress.path |
Ingress path | / |
||
ingress.hosts |
Ingress accepted hostnames | ["mercure.local"] |
||
ingress.tls |
Ingress TLS configuration | [] |
||
resources |
controller pod resource requests & limits | {} |
||
nodeSelector |
node labels for controller pod assignment | {} |
||
tolerations |
controller pod toleration for taints | {} |
||
Specify each parameter using the --set key=value[,key=value] argument to helm install. For example,
$ helm install --name my-release --set jwtKey=FooBar,corsAllowedOrigins=example.com stable/mercure
The above command sets the JWT key to FooBar.
Additionally it allows pages served from example.com to connect to the hub.
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
$ helm install --name my-release -f values.yaml stable/mercure
Tip
: You can use the default values.yaml