Skip to content

Commit

Permalink
Update DEVELOPMENT.md
Browse files Browse the repository at this point in the history
  • Loading branch information
jens-maus authored Mar 30, 2022
1 parent e8747ff commit 486b065
Showing 1 changed file with 11 additions and 11 deletions.
22 changes: 11 additions & 11 deletions DEVELOPMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,25 +40,25 @@ OCI packages require a secret to be uploaded `CR_PAT`. See GitHub [instructions(

1. As a first step and to prepare a draft release in which a raw ChangeLog will be added, go into the [Release Build](https://github.com/jens-maus/RaspberryMatic/actions?query=workflow%3A%22Release+Build%22) action and run it, but make sure "Skip build" is set to true and you are using the upcoming release date in the "Release date override" setting
2. After this draft release build is done you should see a new draft release in the releases section with the raw changelog listing all changes. Make sure to edit them and sort them into the corresponding group and explaining in less technical details what was changed.
3. If you are done with finetuning the ChangeLog and Release draft make sure that you finally bump the version number in the following files in the repository:
- (3.XX.YY.YYYYMMDD) - <https://github.com/jens-maus/RaspberryMatic/blob/master/release/LATEST-VERSION.js>
- (3.XX.YY.YYYYMMDD) - <https://github.com/jens-maus/RaspberryMatic/blob/master/home-assistant-addon/config.json#L3>
- (3.XX.YY) - <https://github.com/jens-maus/RaspberryMatic/blob/master/helm/raspberrymatic/Chart.yaml#L31>
4. Go to [_Actions_ -> _Release Build_](https://github.com/jens-maus/RaspberryMatic/actions?query=workflow%3A%22Release+Build%22)
5. Click on _Run Workflow_
6. Select the branch. Usually `master`
7. Set the "Release date override" to the actual date (YYYYMMDD) you would like to append to the OCCU (3.XX.YY) version string.
8. Set the "Skip build" to `false` or otherwise the workflow will just be tested without actually running the time consuming build job or releasing the helm charts, docker, etc.
9. Click on _Run Workflow_ to start the build. The build does the following
3. If you are done with finetuning the ChangeLog and Release draft make sure that the `config.yaml` file in the `home-assistant-addon-dev` vs. `home-assistant-addon` top-level directories have all latest development changes merged. You can use the following diff command to analyze:
`diff -u home-assistant-addon-dev/config.yaml home-assistant-addon/config.yaml`
5. Go to [_Actions_ -> _Release Build_](https://github.com/jens-maus/RaspberryMatic/actions?query=workflow%3A%22Release+Build%22)
6. Click on _Run Workflow_
7. Select the branch (Usually `master`)
8. Set the "Release date override" to the actual date (YYYYMMDD) you would like to append to the OCCU (3.XX.YY) version string.
9. Set the "Skip build" to `false` or otherwise the workflow will just be tested without actually running the time consuming build job or releasing the helm charts, docker, etc.
10. Click on _Run Workflow_ to start the build. The build does the following
- creates a new release draft with the 3.XX.YY.YYYYMMDD used as name, tag and version. If the release draft already exists then it is **not modified**.
**NOTE**: if binaries were already uploaded to the draft release you need to delete them before re-triggering the CI or the upload will fail
- builds all binaries and upload them to the draft release
- uploads the container with `latest` as tag - NOTE: after this step OCI users using latest will get the update right away!
- uploads a new release Helm chart using the `OCCU_VERSION` (3.XX.YY) as version. NOTE: after this point the Kubernetes users will get the update right away!
- bumps all public version references in `release/LATEST-VERSION.js`, `helm/raspberrymatic/Chart.yaml`, `release/rpi-imager.json` and `home-assistant-addon/config.yaml`.
- substitutes all SHA256 checksums in the release draft with the actual binary sha256 checksums.
10. While the draft is being built, the release readme can be updated from the GitHub WebUI
11. Once the build run has completed and all binaries are uploaded to the release draft the typical release archives + images should appear in the release draft assets section.
12. Verify everything and click "Publish" to finally publish the release
13. Update raspberrymatic.de and make sure to set the new released version in the update server on raspberrymatic.de so that every existing user will get a notification.
13. Update `raspberrymatic.de` and make sure to set the new released version in the update server on raspberrymatic.de so that every existing user will get a notification.

## Components Update Guide

Expand Down

0 comments on commit 486b065

Please sign in to comment.