oncall-engine/helm
Joey Orlando 7586b04f8a
fix "on helm release pr merged" GitHub Actions workflow (#5069)
# What this PR does

- Closes https://github.com/grafana/oncall/issues/5065
- Fixes [failing update Helm repo github
workflows](https://github.com/grafana/oncall/actions/workflows/on-helm-release-pr-merged.yml)
(due to `secrets. GH_HELM_RELEASE` now seeming to return "Bad
credentials")

## TODO

- [ ] after this PR is merged and change merged to `main`, remove
`GH_HELM_RELEASE` repository secret

## Checklist

- [x] Unit, integration, and e2e (if applicable) tests updated
- [x] Documentation added (or `pr:no public docs` PR label added if not
required)
- [x] Added the relevant release notes label (see labels prefixed w/
`release:`). These labels dictate how your PR will
    show up in the autogenerated release notes.
2024-09-24 17:00:37 +00:00
..
oncall fix "on helm release pr merged" GitHub Actions workflow (#5069) 2024-09-24 17:00:37 +00:00
cr.yaml configure yamllint pre-commit step (#2728) 2023-08-03 02:35:08 -04:00
ct.yaml configure yamllint pre-commit step (#2728) 2023-08-03 02:35:08 -04:00
kind.yml Update helm chart to detach integrations pod (#3204) 2023-11-03 12:34:22 +00:00
local_image.yml Add missing referenced local_image.yml for local helm setup (#3268) 2023-11-03 15:30:51 +00:00
README.md Update helm chart for newer grafana + enable externalServiceAccounts (#4876) 2024-09-05 12:18:07 -06:00
simple.yml Update helm chart for newer grafana + enable externalServiceAccounts (#4876) 2024-09-05 12:18:07 -06:00

How to run the chart locally

  1. Create the cluster with kind

    Make sure ports 30001, 30002 (Grafana, optional) are available

    kind create cluster --image kindest/node:v1.24.7 --config kind.yml
    
  2. (Optional) Build oncall image locally and load it to kind cluster

       docker build ../engine -t oncall/engine:latest --target dev
       kind load docker-image oncall/engine:latest
    

    Also make sure to add the following lines to your simple.yml (you may also need to enable devMode):

    image:
      repository: oncall/engine
      tag: latest
      pullPolicy: IfNotPresent
    oncall:
      devMode: true
    

    Alternatively you can also pass an extra --values ./local_image.yml in the command below.

  3. Install the helm chart

       helm install helm-testing \
       --wait \
       --values ./simple.yml \
       ./oncall
    
  4. Get credentials

    echo "\n\nOpen Grafana on localhost:30002 with credentials - user: admin, password: $(kubectl get secret --namespace default helm-testing-grafana -o jsonpath="{.data.admin-password}" | base64 --decode ; echo)"
    echo "Open Plugins -> Grafana OnCall -> fill form: backend url: http://host.docker.internal:30001"
    
  5. Clean up If you happen to helm uninstall helm-testing be sure to delete all the Persistent Volume Claims, as Postgres stores the auto-generated password on disk, and the next helm install will fail.

    kubectl delete pvc --all
    kubectl delete pv --all
    

    This, of course, will delete all the PVs and PVCs also :-)

    kind delete cluster