This project aims to :
- Host the Primaza Helm repository that contains the Primaza App Helm charts,
- Usage section where users can learn about how installing Primaza using Helm.
This repository uses GitHub Pages to publish the Helm charts index at this address: http://halkyonio.github.io/helm-charts. To use it locally, you need to execute:
$ helm repo add halkyonio http://halkyonio.github.io/helm-charts
If you have already registered the reporitory, but you want to update it, you need to execute:
$ helm repo update halkyonio
And confirm that the snowdrop repository is listed:
$ helm repo list
NAME URL
halkyonio http://halkyonio.github.io/helm-charts
Also, you can see the list of charts available in the repository by doing:
$ helm search repo halkyonio
NAME CHART VERSION APP VERSION DESCRIPTION
halkyonio/primaza-app 0.0.1
Chart Name | Description | Source |
---|---|---|
primaza-app | Chart to start the Primaza backend | https://github.com/halkyonio/primaza-poc |
fruits-app | Chart to start the Atomic Fruits Service | https://github.com/halkyonio/atomic-fruits-service |
Requirements:
- Connected/logged to a Kubernetes/OpenShift cluster
- Have installed the Helm command line
- Have installed/updated the Primaza Helm repository
This chart deploys and exposes the Primaza backend on Kubernetes including a Postgresql database.
To install it, you need to:
- Set the container image you want to use. You can see all the versions in here.
- Set the ingress host. Only if you want to publicly expose the application.
For example:
$ helm install primaza-app halkyonio/primaza-app --set app.image=quay.io/halkyonio/primaza-app:latest --set app.host=XXX
Note that if you change the chart name to something different of primaza-app
, for example, to my-app
, you also need to update the environmental property accordingly, by setting --set app.envs.DB_SERVICE_NAME=my-app-db
This chart deploys and exposes the Atomic Fruits service on Kubernetes including a Postgresql database.
The following table lists the configurable parameters and their default values.
Parameter | Description | Default |
---|---|---|
app.envs.DB_SERVICE_NAME |
fruits-app-db | |
app.host |
The host under which the application is going to be exposed. | atomic-fruits.127.0.0.1.nip.io |
app.image |
The container image to use. | runner/atomic-fruits:1.0-SNAPSHOT |
app.serviceBinding.enabled |
Determine if the resource should be installed or not. | true |
app.serviceType |
The service type to use. | ClusterIP |
db.auth.database |
fruits_database | |
db.auth.password |
pwd | |
db.auth.username |
user | |
db.enabled |
Flag to enable/disable the dependency 'postgresql' | true |
To install it, you need to:
- Set the container image you want to use. You can see all the versions in here.
- Set the ingress host. Only if you want to publicly expose the application.
For example:
$ helm install fruits-app halkyonio/fruits-app --set app.image=quay.io/halkyonio/atomic-fruits:latest --set app.host=XXX
By default, the fruits-app
helm chart will use the database instance that is discovered using the Quarkus ServiceBinding extension (more information in here). To use it, you need to create a secret resource containing the required data to connect to another Postgresql instance. Otherwise, if no database is discovered, the fruits-app
helm chart will use a Postgresql database provided by Bitnami that is installed along with this Helm chart installation.
You can disable the installation of the Postgresql database by using --set db.enabled=false
or configure this database instance by using --set db.auth.database=<database name>
, --set db.auth.username=<username>
, or --set db.auth.password=<password>
. You can find the full set of configuration in here.
Important: Note that if you change the chart name to something different of
fruits-app
, for example, tomy-app
, you also need to update the environmental property accordingly, by setting--set app.envs.DB_SERVICE_NAME=my-app-db
Finally, you can also disable the Service Binding discovery by using --set app.serviceBinding.enabled=false
.