From d335e3994f2c11569187accd6831653fc10c7111 Mon Sep 17 00:00:00 2001 From: Felix Ableitner Date: Mon, 26 Apr 2021 20:58:38 +0200 Subject: [PATCH 1/3] Add documentation for release process --- src/en/SUMMARY.md | 1 + src/en/contributing/release_process.md | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 src/en/contributing/release_process.md diff --git a/src/en/SUMMARY.md b/src/en/SUMMARY.md index 0d454ba..411d7f8 100644 --- a/src/en/SUMMARY.md +++ b/src/en/SUMMARY.md @@ -28,4 +28,5 @@ - [Local Development](contributing/local_development.md) - [Tests](contributing/tests.md) - [Federation Development](contributing/federation_development.md) + - [Release Process](contributing/release_process.md) - [Code of Conduct](code_of_conduct.md) diff --git a/src/en/contributing/release_process.md b/src/en/contributing/release_process.md new file mode 100644 index 0000000..329893c --- /dev/null +++ b/src/en/contributing/release_process.md @@ -0,0 +1,20 @@ +Branching and Releases +=== + +## Branches + +In general, our handling of branches is the one described in [A stable mainline branching model for Git](https://www.bitsnbites.eu/a-stable-mainline-branching-model-for-git/). One difference is that we avoid rebase, and instead merge the base branch into the current working branch. This helps to avoid force pushes and conflicts. + +## Releases + +- For major release: make a new branch `release/v0.x` +- For minor release: cherry-pick desired changes onto `release/v0.x` branch +- Make a beta or release candidate version with `docker/prod/deploy.sh` +- Do the same for `lemmy-ui`: `./deploy.sh 0.x.0-rc-x` +- Deploy to federation test instances + - keeping one instance at the last stable version to test federation compatibility (automate this with ansible) + - eg: `ansible-playbook -i federation playbooks/site.yml --vault-password-file vault_pass -e "override_lemmy_image=dessalines/lemmy:0.x.0-rc.x override_lemmy_ui_image=dessalines/lemmy-ui:0.x.0-rc.x"` +- Test that everything works as expected, make new beta/rc releases if needed +- Deploy to lemmy.ml, to discover remaining problems +- If that went well, make the official `0.x.0` release with `docker/prod/deploy.sh` +- Announce the release on Lemmy, Matrix, Mastodon From 538de646be83e4c4b80cef47fffd4f93b620ae93 Mon Sep 17 00:00:00 2001 From: Felix Ableitner Date: Mon, 26 Apr 2021 21:13:23 +0200 Subject: [PATCH 2/3] update ansible command --- src/en/contributing/release_process.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/en/contributing/release_process.md b/src/en/contributing/release_process.md index 329893c..d2f1448 100644 --- a/src/en/contributing/release_process.md +++ b/src/en/contributing/release_process.md @@ -12,8 +12,8 @@ In general, our handling of branches is the one described in [A stable mainline - Make a beta or release candidate version with `docker/prod/deploy.sh` - Do the same for `lemmy-ui`: `./deploy.sh 0.x.0-rc-x` - Deploy to federation test instances - - keeping one instance at the last stable version to test federation compatibility (automate this with ansible) - - eg: `ansible-playbook -i federation playbooks/site.yml --vault-password-file vault_pass -e "override_lemmy_image=dessalines/lemmy:0.x.0-rc.x override_lemmy_ui_image=dessalines/lemmy-ui:0.x.0-rc.x"` + - Keeping one instance at the last stable version to test federation compatibility (automate this with ansible) + - `ansible-playbook -i federation playbooks/site.yml --vault-password-file vault_pass -e rc_version=0.x.0-rc.x` - Test that everything works as expected, make new beta/rc releases if needed - Deploy to lemmy.ml, to discover remaining problems - If that went well, make the official `0.x.0` release with `docker/prod/deploy.sh` From 7a796c9e64aa56fbfa88432c46e1b0f25389e91a Mon Sep 17 00:00:00 2001 From: Nutomic Date: Tue, 27 Apr 2021 14:17:42 +0000 Subject: [PATCH 3/3] Update release_process.md --- src/en/contributing/release_process.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/en/contributing/release_process.md b/src/en/contributing/release_process.md index d2f1448..d0c50d8 100644 --- a/src/en/contributing/release_process.md +++ b/src/en/contributing/release_process.md @@ -1,5 +1,4 @@ -Branching and Releases -=== +# Branching and Releases ## Branches