The refactored manifest repository using OpenShift GitOps with ApplicationSets and git file generator for parameters.
The main file here is the wind-turbine-app.yaml
- file which contains an ApplicationSet using
- the
helm
chart folder for templates and - the
stages/*/config.js
files for parameters.
For easy install there is a shell script which does all kinds of installations that are needed.
The application code repository is located in https://github.com/gmodzelewski/quinoa-wind-turbine. The configuration (=manifests) repository is located in https://github.com/gmodzelewski/quinoa-wind-turbine-manifests.
- fork this repo
0-github-secret.yaml
: fill credentials for github from user settings -> Developer settings -> Personal access tokens -> Fine-grained tokens0-quay-secret.yaml
: fill credentials for quay from Robot Accounts -> Create Robot Account -> Kubernetes Secret- copy image to your quay repo (
skopeo copy docker://quay.io/modzelewski/quinoa-wind-turbine:latest docker://quay.io/<yourname>/quinoa-wind-turbine
) - run
1-install.sh
- wait until everything is deployed
- start playing
The dashboard is available under the .../dashboard
route, username developer
, password is password
(can be changed in /helm/templates/env/gitops-demo-<stage>/secret.yaml
).
INFO: Install script is work-in-progress. Not all resources, that are used in some steps, are created fast enough. If it doesn't work, just run it multiple times.
- Get routes from your stage and dev deployments
- Create json webhooks in your GitHub application project forks to push to your Event Listener Routes
- Profit
This application uses multiple tools which are installed via script on a clean environment. The tools are installed via operator or helm charts. Here's the list:
- operators:
- AMQ Streams
- OpenShift Pipelines
- OpenShift GitOps
- helm packages:
- Reloader
- Sealed Secrets
See the install shell script 1-install.sh
for further details`.
The applications can be installed manually via helm install as well. Change the values file according to your needs and install.
The pvcs are configured to be not deleted at helm uninstall. You should always delete them manually.
If some pvc gets stuck you can fix this via
oc patch pvc <pvc-name> -p '{"metadata":{"finalizers": []}}' --type=merge