From a7d20c4b65752c93195ab89ea9ded0ab2304ec52 Mon Sep 17 00:00:00 2001 From: Julien Balestra Date: Mon, 2 Jul 2018 13:52:25 +0200 Subject: [PATCH] Introduce release notes (#80) * release: introduce release notes --- RELEASE.md | 102 ++++++++++++++++++++++++++++++++---------------- releasenotes.md | 65 ++++++++++++++++++++++++++++++ 2 files changed, 134 insertions(+), 33 deletions(-) create mode 100644 releasenotes.md diff --git a/RELEASE.md b/RELEASE.md index c5ab591..e84f8a5 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -1,20 +1,41 @@ # Release process -## Local check +Pupernetes follows Semantic Versionning ([_SemVer_](https://semver.org/)): +```text +# Patch update +0.3.0 -> 0.3.1 -Updated master branch: -```bash -git checkout master -git pull +# Minor update +0.3.0 -> 0.4.0 +0.9.0 -> 0.10.0 + +# Major update +0.3.0 -> 1.0.0 +1.15.4 -> 2.0.0 +... ``` +## Local check + Clean: ```bash git clean . -fdx -e .idea make clean ``` -Compile statically the binary and generate the sha512sum: +Update master branch with *origin* as remote: +```bash +git fetch origin master +git checkout -B master origin/master +``` + +> note: v0.3.0 is a example and need to be adapted +```bash +git checkout -b v0.3.0 +``` + +Compile statically the binary and generate the sha512sum. +> note: you need go 1.10 ```bash CGO_ENABLED=0 make sha512sum @@ -41,33 +62,25 @@ sha512sum -c pupernetes.sha512sum ./pupernetes: OK ``` -### Submit a PR - -Pupernetes follows Semantic Versionning ([_SemVer_](https://semver.org/)): -```text -# Patch update -0.3.0 -> 0.3.1 - -# Minor update -0.3.0 -> 0.4.0 -0.9.0 -> 0.10.0 - -# Major update -0.3.0 -> 1.0.0 -1.15.4 -> 2.0.0 -... -``` +## Submit a PR Create a PR named as example: `release-v0.3.0` -Update the [ignition example](environments/container-linux/ignition.yaml) on the storage/files section: -* /opt/bin/setup-pupernetes -* /opt/bin/pupernetes.sha512sum +Updates: +- [releasenotes](./releasenotes.md) accordingly. + * Features + * Bugfix + * Other + Docs, CI, ... +- [ignition example](environments/container-linux/ignition.yaml) on the storage/files section: + * /opt/bin/setup-pupernetes + * /opt/bin/pupernetes.sha512sum +- [README](README.md) + * [download section](README.md#download) :`${VERSION}`. -Update the [README](README.md) -* [download section](README.md#download) :`${VERSION}`. +Commit and push the changes and open the PR. -### Push tags +## Push tags After validation, merge your PR and checkout the latest master branch: ```bash @@ -75,12 +88,35 @@ git checkout master git pull ``` -Tag the release with the new version (e.g. v0.3.0): +Verify: ```bash -git tag v0.3.0 -git push --tags +cp -v kube-csr.sha512sum pr-kube-csr.sha512sum +make clean +CGO_ENABLED=0 make sha512sum +diff pupernetes.sha512sum pr-pupernetes.sha512sum +sha512sum -c pupernetes.sha512sum +./pupernetes: OK ``` -Then upload `pupernetes` + `pupernetes.sha512sum` in the release page. +## Github UI + +Draft a new release over the github UI with the associated tag e.g. v0.3.0. + +Then upload `pupernetes` + `pupernetes.sha512sum` in the release page and select your tag. + +The release must be marked as pre-release if lower than `v0.x.x` + +Create the following field in the github release page: + +> ### Binary +> ``` +> curl -fLO https://github.com/DataDog/pupernetes/releases/download/v0.3.0/pupernetes +> curl -fLO https://github.com/DataDog/pupernetes/releases/download/v0.3.0/pupernetes.sha512sum +> sha512sum -c ./pupernetes.sha512sum +> chmod +x ./pupernetes +> ``` -The release must be marked as pre-release. +Append the associated fields from the [releasenotes](./releasenotes.md). +- Enhancement +- Bugfixes +- Other \ No newline at end of file diff --git a/releasenotes.md b/releasenotes.md new file mode 100644 index 0000000..340055f --- /dev/null +++ b/releasenotes.md @@ -0,0 +1,65 @@ +- [v0.5.0](#v0.5.0) +- [v0.4.0](#v0.4.0) +- [v0.3.0](#v0.3.0) +- [v0.2.1](#v0.2.1) +- [v0.2.0](#v0.2.0) + +## v0.5.0 + +### Enhancement +* Add pprof #62 +* Use RSA standard library #60 +* Basic check on the memory #59 +* Add a prometheus exporter #57 +* Run over old systemd platform #49 +* Command line daemon alias #48 +* Add notify to the systemd unit #47 + +### Bugfixes +* Use a dedicated timeout for each package #64 +* Fix the signal reset on SIGs during Stop #58 + +### Other +* Update the readme #63 +* Introduce ineffassign, golint and misspell #56 +* Add SaaS CI examples #50 + +## v0.4.0 + +### Enhancement +* New wait command #43 + +### Bugfixes +* Use a more portable version of listUnits #44 + +## v0.3.0 + +### Enhancement +* Introduce the daemon and the reset commands #41 +* Allow to delete jobs #38 +* Configurable Kubernetes version setup #37 +* Change the severity of the notify when not running in systemd unit #34 +* Display more state of the runtime #33 + +### Bugfixes +* Use an intermediate Certificate Authority for cluster-signing #36 +* Display the adapted config in the logs #35 +* Add aws public and ipv4 detection logic #29 + +## v0.2.1 + +### Bugfixes +* Add aws public and ipv4 detection logic #29 + +## v0.2.0 + +### Enhancement +* Job type systemd: display the logs #26 + +### Bugfixes +* Fallback to AWS hostname metadata #23 + +### Other +* Disable the reboot strategy #22 +* Refactor the Makefile #25 +* Provide a release documentation #21