2
0
mirror of https://github.com/frappe/bench.git synced 2024-06-03 08:50:54 +00:00

[fix] detailed release policy

This commit is contained in:
Saurabh 2017-07-24 15:26:19 +05:30
parent cc6c58ed3c
commit f9e3dedf3b
4 changed files with 32 additions and 25 deletions

View File

@ -1,33 +1,19 @@
# Release Policy
#### Create staging branch
- On Wednesday morning, we will create a `staging` branch from develop branch. `staging` branch is a release candidate. All new features will first go from `develop` to `staging` and then `staging` to `master`.
- Use the prepare-staging command to create staging branch
```usage: bench prepare-staging APP```
- Impact on branches ?
- merge all commits from develop branch to staging
- push merge commit back to develop
- QA will use staging for testing.
- Deploy staging branch on frappe.io
- Only regression and security fixes can be cherry-picked into staging
- Create a discuss post on what all new features or fixes going in next version.
---
#### Definitions:
- `develop` Branch: All new feature developments will go in develop branch
- `staging` Branch: This branch serves as a release candidate. Before a week, release team will pull the feature from develop branch to staging branch.
EG: if the feature is in 25 July's milestone then it should go in staging on 19th July.
- `master` Branch: `master` branch serves as a stable branch. This will use as production deployment.
- `hotfix` Branch: mainly define for support issues. This will include bugs or any high priority task like security patches.
#### Create release from staging
- On Tuesday, we will release from staging to master.
- Versioning:
- patch: Small fixes
- minor: For new features updates.
- major: If any API changes
- Versioning: Given a version number MAJOR.MINOR.PATCH, increment the:
- MAJOR version when you make incompatible API changes,
- MINOR version when you add functionality in a backwards-compatible manner, and
- PATCH version when you make backwards-compatible bug fixes.
- Impact on branches:
- merge staging branch to master
@ -40,11 +26,32 @@
---
#### Create staging branch
- On Wednesday morning, `develop` will be merge into `staging`. `staging` branch is a release candidate. All new features will first go from `develop` to `staging` and then `staging` to `master`.
- Use the prepare-staging command to create staging branch
```usage: bench prepare-staging APP```
- Impact on branches?
- merge all commits from develop branch to staging
- push merge commit back to develop
- QA will use staging for testing.
- Deploy staging branch on frappe.io, erpnext.org, frappe.erpnext.com.
- Only regression and security fixes can be cherry-picked into staging
- Create a discuss post on what all new features or fixes going in next version.
---
#### Create release from hotfix
- Depending on priority, hotfix release will take place.
- Versioning:
- patch: Small fixes
- PATCH version when you make backwards-compatible bug fixes.
- Impact on branches:
- merge hotfix branch to master