From e3638bf4dc9ec89a8fa5b82d7fdb79968441526c Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Fri, 10 Mar 2017 23:22:38 -0800 Subject: [PATCH] Update releasing docs --- source/developers/releasing.markdown | 39 ++++++++++++++++++---------- 1 file changed, 25 insertions(+), 14 deletions(-) diff --git a/source/developers/releasing.markdown b/source/developers/releasing.markdown index c651002b450..ddfe3f1d89f 100644 --- a/source/developers/releasing.markdown +++ b/source/developers/releasing.markdown @@ -11,27 +11,38 @@ footer: true This page describes the steps for publishing a new Home Assistant release. +### {% linkable_title GitHub (3 days before release) %} + +1. Merge `master` into `dev` to make the PR mergeable. +2. Cut a release branch from `dev`. Example name `release-0-40`. +3. Create a pull request from release branch to `master` with the upcoming release number as the title. PR message contains intro, highlighting major changes, and an overview of all changes tagging each author. +4. Update `homeassistant/const.py` with the correct version number (remove the `dev` tag) and push that commit to release branch. +5. From now until the release branch has been merged, we tag bugfixes with the milestone for the release (create if doesn't exist) + +### {% linkable_title Website (3 days before release) %} + +1. Merge `current` into `next` +2. Cut release branch of `next`. For example `release-0-40`. +3. Open a PR from release branch to `current` with the upcoming release number as the title. + ### {% linkable_title GitHub %} -1. Create a pull request from `dev` to `master` with the upcoming release number as the title. -2. Merge `master` into `dev` to make the PR mergeable. PR message contains intro, highlighting major changes, and an overview of all changes tagging each author. -3. Update `homeassistant/const.py` with the correct version number (remove the `dev` tag) and push that commit. -4. Merge pull request (DO NOT SQUASH!). -5. Then, after merged, push another update to `dev` of `homeassistant/const.py` that includes the next version with the `dev` tag. Add a meaningful commit message like "Version bump to X". This commit acts as a marker for the next release. -6. Go to [releases](https://github.com/home-assistant/home-assistant/releases) and tag a new release on the `master` branch. "Tag version" and "Release title" are the version number (`O.x` for major version, `0.x.y` for minor and bug fix releases). Release description is the text from PR. Press "Publish release" to finish the process. +1. Merge pull request (DO NOT SQUASH!). +2. Go to [releases](https://github.com/home-assistant/home-assistant/releases) and tag a new release on the `master` branch. "Tag version" and "Release title" are the version number (`O.x` for major version, `0.x.y` for minor and bug fix releases). Release description is the text from PR. Press "Publish release" to finish the process. +3. Merge `master` into `dev`. ### {% linkable_title Website %} -1. Create a blog post in `next` and base it on the text of the PR in the main repository. Add images, additional text, links, etc. if it adds value. Tag each platform/component in a message to documentation. -2. Create missing documentation as stumbs in `next`. +1. Create a blog post in the release branch and base it on the text of the PR in the main repository. Add images, additional text, links, etc. if it adds value. Tag each platform/component in a message to documentation. +2. Create missing documentation as stubs. 3. Update `config.yml` with link to the new release blog post and version number (at the bottom of the file). -4. Create a pull request from `next` to `current` with the upcoming release number as the title. -5. Merge `current` into `next` (`$ git checkout next && git merge current`) to make the PR mergeable. -6. Merge pull request (blog post, updated frontpage, and all new documentation) to `current`. +4. Merge `current` into release branch (`$ git checkout release-0-40 && git merge current`) to make the PR mergeable. +5. Merge pull request (blog post, updated frontpage, and all new documentation) to `current`. +6. Merge `current` into `next`. ### {% linkable_title Docker Hub %} -Create a new [tag](https://hub.docker.com/r/homeassistant/home-assistant/tags/) at https://hub.docker.com for the release. +Tags on Docker hub are automatically created when a release has been created on GitHub. ### {% linkable_title Python Package Index %} @@ -39,6 +50,6 @@ Checkout the `master` branch and run `script/release` to publish the new release ### {% linkable_title Social media %} -1. Create a [tweet](https://twitter.com/home_assistant) announcing blog post linking to release notes. -2. Publish a link to the tweet/release blog post for the [Google+ Community](https://plus.google.com/b/110560654828510104551/communities/106562234893511202708). +1. Use [hootsuite] to publish a link to the release post on social media. +[hootsuite]: https://hootsuite.com/dashboard