1.4 KiB
1.4 KiB
ADR: Release process - in DevOps
Status
accepted
Context
We discussed how we will handle releases in cooperation with gitlab-ci.
Decision
Legend
- B. User:
- Z: Time passes / systems do something:
- E: Events:
Outcome of Eventstroming: Events ordered by time
- B: Pulls the latest changes
- B: Possibly merge/rebase with main
- B: starts "create release-notes"
- B: commits his changes with [skip-ci].
- B: starts the release build and specifies major, minor, patch
- S: does a git fetch & status and checks if there are no changes at origin
- S: starts tests
- S: runs the linting
- S: possibly does image building and image testing
- S: version numbers are adjusted in project.clj/package.json to full version
- S: change commit is tagged with git tag
- S: version numbers are adjusted in project.clj/package.json to next snapshot version
- S: makes a bump commit with [skip-ci].
- S: push to gitlab/gitea along with git tags
- S: CI starts - for a new tag
- S: CI runs tests
- S: runs the linting
- S: makes artifacts
- S: possibly performs image building and image testing
- S: publishes images and artifacts
- S: CI starts - for push with the last commit
- S: CI runs tests
- S: performs the linting
Consequences
- we implement the release process by using pyb
- we do test & linting local
- we do all git operations local