diff --git a/.gitlab/issue_templates/release.md b/.gitlab/issue_templates/release.md index 14a420781cfb331b2bf3fedde130cc373671ad0a..cc5bc7ee8326d91bef908f5edda3b6ab846fd042 100644 --- a/.gitlab/issue_templates/release.md +++ b/.gitlab/issue_templates/release.md @@ -1,32 +1,36 @@ -# Release checklist: +# Release checklist -## Changes to do on the master branch before releasing +## In the master branch before releasing * [ ] Create a MR for the master branch for the following changes: * update/review `docs/*` and make sure it matches the current state * [ ] Update how to checkout the latest stable tag * [ ] Document how to upgrade in `docs/upgrade.md` -* [ ] Update dependencies in `requirements-stable.txt` by following the +* [ ] Update dependencies in `requirements.txt` by following the instructions in `requirements.in` * [ ] update [CHANGELOG.md](https://keepachangelog.com/en/1.0.0/) * [ ] Include `Known issues` -* [ ] update the version number in the `VERSION` file -* [ ] commit (signed) +* [ ] Update the version number in the `VERSION` file +* [ ] Commit (signed) * [ ] Push to MR +* [ ] Make sure master pipeline is successful before merging MR ! * [ ] Wait for MR to get merged into master -## Changes to do in the new release branch +## Push a signed tag -* [ ] If this is a major release, create a new release branch (i.e. `v0.5`) +* [ ] Make sure the master pipeline succeeds for the last commit before tagging. This + is important because tags should not get retagged ! +* [ ] Create and push signed tag (`git tag -s 0.6.0 -m 'Release 0.6.0'; git push --tags`) + +## In the new release branch + +* [ ] If this is a major release, create a new release branch (i.e. `v0.6`) Create a MR for the new branch with the following changes: -* [ ] Ensure all dependencies are updated and locked (locking should be done +* Ensure all dependencies are updated and locked (locking should be done only on the release branch): - * [ ] flux chart versions: `find flux/* -type f -exec yq -y -rS .spec.chart {} \;` -* [ ] Push and make sure the pipeline succeeds for the last commit before tagging. This - is important because tags should not get retagged ! -* [ ] Create and push signed tag (`git tag -s 0.2.0 -m 'Release 0.2.0'; git push --tags`) + * [ ] flux chart versions: `find flux2/* -type f -exec yq eval .spec.chart {} \;` * [ ] Wait for MR to get merged ## After release @@ -35,4 +39,5 @@ Create a MR for the new branch with the following changes: * [ ] Cherry-pick all changes from the release branch into master which shouldn't be only in the 0.4.0 branch (i.e. not the commit locking the dependencies) +* [ ] Create issue for creating a release blog post * [ ] Celebrate :clinking_glass: !! diff --git a/CHANGELOG.md b/CHANGELOG.md index bfe5e983fe880270b6e05fc96fe868ee7d3eeffd..bb25e69adaa1c726bbbf98e0a04f88eecafccc4b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,13 +2,57 @@ ## [0.6.0] - 2021-07-14 -* Overhauled installation procedure +### Added + +* Option to use a container image mirror +* .sourceignore file for flux +* Eventrouter to aggregate k8s events in loki +* Fine-tuned app resource limits +* Configure outgoing mail for alertmanager +* Code of conduct (CONTRIBUTING.md) +* Contribution docs (CONTRIBUTING.md) +* pre-commit config (.pre-commit-config.yaml) +* Add IP as SAN to k8s cluster API cert +* Add Lets encrypt staging certificate to cert store in test container + +### Changed + +* Overhaul installation procedure + * Seperate kubernetes and Openappstack installation * Secrets are now only managed on the cluster * settings.yml has been replaced with .flux.env and is saved as a secret in the cluster * Applications can be installed after first install of the cluster - * Switched to Flux 2 -* Updated all applications + * Migrate to Flux 2 +* Update documentation to reflect new installation procedure and flux2 +* Update all helm charts and applications +* Flux 2 + * Increase all pull intervals to 1h + * Change way of customizing helm charts +* Migrate from behave to taiko for end-to-end tests +* Update k3s and kubernetes version + * Increase k3s event retention from 1h to 2d +* Loki: + * Limit storage size + * Increase chunk size, reduce chunk count + * Increase retention time + * Install loki + promtail seperatly, instead of loki-stack +* Use kube-prometheus-stack instead of prometheus + grafana +* Expose alertmanager and prometheus web interface by default +* Increase prometheus retention time +* CI + * Only install and test apps on changes affecting an app + * Improve pipeline speed and overall stability + * Use new disk image template that has haveged pre-installed + * Update Dockerfile base image to alpine 3.14 + * Test Onlyoffice Nextcloud integration + * Allow invalid certs for OnlyOffice + * Use 12GB (=6 cores) for master CI droplet + * Disable the reuse of VPSs if there is already one + +### Removed + +* remove old and now unused variables from compatibility-checks role ## [0.5.0] - 2020-09-17 @@ -30,7 +74,6 @@ * Separated ansible playbooks for Kubernetes and OpenAppStack (re-)installation * Increased installation and general stability - ## [0.4.0] - 2020-06-11 * Replaced [local-storage @@ -87,15 +130,15 @@ Known issues: * Rocket.chat version 2.1.1 at chat.oas.yourdomain * Use Flux instead of Helmfile to install and update applications * Flux version 1.16.0 and helm-operator version 1.0.0-rc4 - * WordPress at www.oas.example.org from https://code.greenhost.net/open/wordpress-helm + * WordPress at www.oas.example.org from [Greenhost's wordpress helm chart](https://code.greenhost.net/open/wordpress-helm) * Application updates: - - cert-manager 0.11.0 - - prometheus-operator 0.34.0 - - nginx 0.26.1 - - nextcloud 16.0.1 - - onlyoffice 5.4.1-2 - - rke 0.3.2 - - kubernetes 1.15.5 + * cert-manager 0.11.0 + * prometheus-operator 0.34.0 + * nginx 0.26.1 + * nextcloud 16.0.1 + * onlyoffice 5.4.1-2 + * rke 0.3.2 + * kubernetes 1.15.5 * Fix many many bugs Known issues: @@ -119,13 +162,14 @@ Known issues: This is the release for the second user test. Fixes: -* [#354](https://open.greenhost.net/openappstack/openappstack/issues/354) Nextcloud timeout during helmchart install -* [#305](https://open.greenhost.net/openappstack/openappstack/issues/305) Use prometheus default securitycontext -* [#351](https://open.greenhost.net/openappstack/openappstack/issues/351) Prometheus installation cannot be repeated -* [#349](https://open.greenhost.net/openappstack/openappstack/issues/349) Improve test instructions -* [#350](https://open.greenhost.net/openappstack/openappstack/issues/350) Increase nextcloud livenessprobe's leniency -* [#346](https://open.greenhost.net/openappstack/openappstack/issues/346) Creating cluster fails if the hostname is oas-dev -* [#319](https://open.greenhost.net/openappstack/openappstack/issues/319) kube_config_cluster.yml should be copied to local machine earlier + +* [Nextcloud timeout during helmchart install](https://open.greenhost.net/openappstack/openappstack/issues/354) +* [Use prometheus default securitycontext](https://open.greenhost.net/openappstack/openappstack/issues/305) +* [Prometheus installation cannot be repeated](https://open.greenhost.net/openappstack/openappstack/issues/351) +* [Improve test instructions](https://open.greenhost.net/openappstack/openappstack/issues/349) +* [Increase nextcloud livenessprobe's leniency](https://open.greenhost.net/openappstack/openappstack/issues/350) +* [Creating cluster fails if the hostname is oas-dev](https://open.greenhost.net/openappstack/openappstack/issues/346) +* [kube_config_cluster.yml should be copied to local machine earlier](https://open.greenhost.net/openappstack/openappstack/issues/319) ## [0.2.0] - 2019-10-22 diff --git a/VERSION b/VERSION index 8f0916f768f0487bcf8d33827ce2c8dcecb645c1..a918a2aa18d5bec6a8bb93891a7a63c243111796 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.5.0 +0.6.0