docs: add docs for upgrading the project when using Helm (#582)

* docs: adding upgrade notes for Helm

* chore: adding new ignore

* docs: add in cmd to check for stuck runners

* docs: better format

* docs: removing superfluous steps

* docs: moved location of docs

Co-authored-by: Callum James Tait <callum.tait@photobox.com>
This commit is contained in:
toast-gear 2021-05-29 02:37:07 +01:00 committed by GitHub
parent d2b0920454
commit 605dae3995
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 34 additions and 1 deletions

View File

@ -21,7 +21,7 @@ v{{ .Version }}: {{ .TitlesOfImportantChanges }}
**Body**: **Body**:
``` ```
**CAUTION:** If you're using the Helm chart, beware to review changes to CRDs and do manually upgrade CRDs! Helm installs CRDs only on installing a chart. It doesn't automatically upgrade CRDs. Otherwise you end up with troubles like #427, #467, and #468 **CAUTION:** If you're using the Helm chart, beware to review changes to CRDs and do manually upgrade CRDs! Helm installs CRDs only on installing a chart. It doesn't automatically upgrade CRDs. Otherwise you end up with troubles like #427, #467, and #468. Please refer to the [UPGRADING](charts/actions-runner-controller/docs/UPGRADING.md) docs for the latest process.
This release includes the following changes from contributors. Thank you! This release includes the following changes from contributors. Thank you!

View File

@ -5,6 +5,7 @@ on:
paths: paths:
- 'charts/**' - 'charts/**'
- '.github/**' - '.github/**'
- '!.github/*.md'
workflow_dispatch: workflow_dispatch:
env: env:

View File

@ -8,6 +8,7 @@ on:
paths: paths:
- 'charts/**' - 'charts/**'
- '.github/**' - '.github/**'
- '!.github/*.md'
workflow_dispatch: workflow_dispatch:
env: env:

View File

@ -21,3 +21,5 @@
.idea/ .idea/
*.tmproj *.tmproj
.vscode/ .vscode/
# Docs
docs/

View File

@ -0,0 +1,29 @@
## Upgrading
This project makes extensive use of CRDs to provide much of its functionality. Helm unfortunately does not support [managing](https://helm.sh/docs/chart_best_practices/custom_resource_definitions/) CRDs by design:
```
There is no support at this time for upgrading or deleting CRDs using Helm. This was an explicit decision after much
community discussion due to the danger for unintentional data loss. Furthermore, there is currently no community
consensus around how to handle CRDs and their lifecycle. As this evolves, Helm will add support for those use cases.
```
Helm will do an initial install of CRDs but it will not touch them afterwards (update or delete).
Additionally, because the project leverages CRDs so extensively you **MUST** run the matching controller app container with its matching CRDs i.e. always redeploy your CRDs if you are changing the app version.
Due to the above you can't just do a `helm upgrade` to release the latest version of the chart, the best practice steps are recorded below:
## Steps
1. Uninstall the chart
2. Manually delete the CRDs:
```shell
# Delete the CRDs
kubectl get crds | grep actions.summerwind. | awk '{print $1}' | xargs kubectl delete crd
# Confirm the CRDs are gone
kubectl get crds | grep actions.summerwind.
```
3. Install the chart following the documentation