[UPD] doc improve release HOW TO
This commit is contained in:
parent
2b576440d6
commit
08554315c9
3 changed files with 68 additions and 12 deletions
|
|
@ -114,3 +114,9 @@ python odoo/odoo-bin scaffold MODULE_NAME addons/REPO_NAME/
|
|||
```bash
|
||||
/script/pull_request_ERPLibre.py --github_token ### --organization ERPLibre
|
||||
```
|
||||
|
||||
# Commit
|
||||
Use this commit format:
|
||||
```bash
|
||||
git commit -am "[#ticket] subject: short sentence"
|
||||
```
|
||||
|
|
|
|||
|
|
@ -6,6 +6,8 @@ Add your dependencies in file [requirements.txt](../requirements.txt) and run sc
|
|||
```
|
||||
This will search all `requirements.txt` files and update `pyproject.toml` and it will update poetry
|
||||
|
||||
TODO add option to only add missing dependencies and ignore update.
|
||||
|
||||
## Add manually dependencies
|
||||
The automatic script will erase this dependency, but you can add it for your local test.
|
||||
```bash
|
||||
|
|
|
|||
|
|
@ -1,24 +1,68 @@
|
|||
# Release
|
||||
|
||||
A guide on how to generate a release.
|
||||
|
||||
## Generate new prod
|
||||
Before starting, validate [manifest/default.dev.xml](../manifest/default.dev.xml) is ready for production.
|
||||
|
||||
## Clean environment before generate new release
|
||||
|
||||
Be sure all files are commit and push, this will erase everything in addons.
|
||||
|
||||
```bash
|
||||
./script/clean_repo_manifest.sh
|
||||
```
|
||||
|
||||
And update all from dev to merge into prod.
|
||||
|
||||
```bash
|
||||
./script/install_locally_dev.sh
|
||||
```
|
||||
|
||||
## Generate new prod and release
|
||||
|
||||
Generate production manifest and freeze all repos versions.
|
||||
|
||||
```bash
|
||||
./.venv/repo manifest -r -o ./default.xml
|
||||
```
|
||||
Commit.
|
||||
|
||||
Update ERPLIBRE_VERSION variable in [env_var.sh](../env_var.sh) and [Dockerfile.prod](../docker/Dockerfile.prod.pkg).
|
||||
|
||||
Generate [poetry](./POETRY.md) and keep only missing dependencies, remove updates.
|
||||
```bash
|
||||
git commit -am "[#ticket] subject: short sentence"
|
||||
./script/poetry_update.py
|
||||
```
|
||||
|
||||
Update ERPLIBRE_VERSION variable in [env_var.sh](../env_var.sh)
|
||||
When running script poetry_update.py, note manually inserted dependencies, stash all changes and add it manually.
|
||||
```bash
|
||||
poetry add DEPENDENCY
|
||||
```
|
||||
|
||||
## Merge release
|
||||
When you are ready to generate a release, create a branch release/#.#.# and create a pull request to master.
|
||||
Understand differences from last release:
|
||||
|
||||
Update file [CHANGELOG.md](../CHANGELOG.md) and create a section with new version.
|
||||
Merge it when the maintainer accepts it.
|
||||
```bash
|
||||
# Get all differences between the last tag and HEAD, to update the CHANGELOG.md
|
||||
# ERPLibre
|
||||
git diff v#.#.#..HEAD
|
||||
|
||||
# All repo
|
||||
./.venv/repo forall -pc "git diff ERPLibre/v#.#.#..HEAD"
|
||||
```
|
||||
|
||||
Update file [CHANGELOG.md](../CHANGELOG.md) and create a section with new version, use next command to read all changes.
|
||||
|
||||
Create a branch release/#.#.# and create a pull request to branch master with your commit:
|
||||
|
||||
```bash
|
||||
git commit -am "Release v#.#.#"
|
||||
```
|
||||
|
||||
Review by your peers, test the docker file and merge to master.
|
||||
|
||||
## Create tag
|
||||
|
||||
Add a tag on the commit in branch master with your release. When adding tag, be sure to update default.xml
|
||||
|
||||
```bash
|
||||
git tag v#.#.#
|
||||
# Push your tags
|
||||
|
|
@ -26,11 +70,12 @@ git push --tags
|
|||
# Add tags for all repo
|
||||
./.venv/repo forall -pc "git tag ERPLibre/v#.#.#"
|
||||
./.venv/repo forall -pc "git push ERPLibre --tags"
|
||||
# Get all difference between a tag and HEAD, to update the CHANGELOG.md
|
||||
./.venv/repo forall -pc "git diff ERPLibre/v#.#.#..HEAD"
|
||||
```
|
||||
|
||||
## Push docker
|
||||
## Generate and push docker
|
||||
|
||||
Important to generate container after push git tags, otherwise the git version will be wrong.
|
||||
|
||||
When building your docker with script
|
||||
> ./script/docker_build.sh --release
|
||||
|
||||
|
|
@ -41,8 +86,11 @@ You need to push your docker image and update your tag, like 1.0.1:
|
|||
> docker push technolibre/erplibre:VERSION
|
||||
|
||||
# TIPS
|
||||
|
||||
## Compare repo differences with another ERPLibre project
|
||||
To generate a list of differences between repo git commit
|
||||
|
||||
To generate a list of differences between repo git commit
|
||||
|
||||
```bash
|
||||
./script/git_change_remote.py --sync_to /path/to/directory
|
||||
```
|
||||
Loading…
Reference in a new issue