diff --git a/Release-Process.md b/Release-Process.md new file mode 100644 index 0000000..577a1e6 --- /dev/null +++ b/Release-Process.md @@ -0,0 +1,67 @@ +# Release Process + +## Release Inputs + +A release usually includes: + +- built and pushed container images +- updated documentation +- release notes +- optional migration service changes +- optional client changes + +--- + +## Suggested Release Steps + +1. Ensure the repository builds cleanly. +2. Verify payload image availability. +3. Verify base images for target architectures. +4. Verify server images for target architectures. +5. Verify multiarch manifests. +6. Test Docker Compose startup. +7. Test database initialization. +8. Test migration service startup. +9. Create release notes. +10. Publish Gitea release. +11. Verify Gitea packages. + +--- + +## Image Verification + +```bash +docker pull gitea.buchhorster.de/patrick/romexis-server:-amd64 +docker pull gitea.buchhorster.de/patrick/romexis-server: +``` + +Inspect: + +```bash +docker manifest inspect gitea.buchhorster.de/patrick/romexis-server: +``` + +--- + +## Release Notes Should Mention + +- new features +- migration service changes +- database backend changes +- breaking changes +- required environment variable changes +- known limitations + +--- + +## Gitea Areas + +Use Gitea as follows: + +| Area | Purpose | +|---|---| +| Code | Source code and Dockerfiles | +| Releases | Human-readable versioned release notes | +| Packages | Published container images | +| Wiki | Operational and developer documentation | +| Issues | Bugs, feature requests and planning |