From: Luca Boccassi Date: Thu, 18 Dec 2025 00:46:41 +0000 (+0000) Subject: docs: add OBS step to release process X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b1192a01cd83b28ac0c69cd1eab454beee460a72;p=thirdparty%2Fsystemd.git docs: add OBS step to release process Version rewriting in obs-service-tar-scm is not happy with rc tags --- diff --git a/docs/RELEASE.md b/docs/RELEASE.md index cd08db9fb6b..d6ead70a509 100644 --- a/docs/RELEASE.md +++ b/docs/RELEASE.md @@ -13,24 +13,27 @@ SPDX-License-Identifier: LGPL-2.1-or-later 4. Update hwdb (`ninja -C build update-hwdb`, `ninja -C build update-hwdb-autosuspend`, commit separately). 5. Update syscall numbers (`ninja -C build update-syscall-tables update-syscall-header`). 6. [RC1] Update library numbers in `meson.build` -7. Update version number in `meson.version` (e.g. from `256~devel` to `256~rc1` or from `256~rc3` to `256`). Note that this uses a tilde (\~) instead of a hyphen (-) because tildes sort lower in version comparisons according to the [UAPI.10 Version Format Specification](https://uapi-group.org/specifications/specs/version_format_specification/), and we want `255~rc1` to sort lower than `255`. -8. Check dbus docs with `ninja -C build update-dbus-docs` -9. Check manpages list with `ninja -C build update-man-rules` -10. Update translation strings (`ninja -C build systemd-pot`, `ninja -C build systemd-update-po`) - drop the header comments from `systemd.pot` + re-add SPDX before committing. If the only change in a file is the 'POT-Creation-Date' field, then ignore that file. -11. Tag the release: `version="v$(sed 's/~/-/g' meson.version)" && git tag -s "${version}" -m "systemd ${version}"` (tildes are replaced with hyphens, because git doesn't accept the former). -12. Do `ninja -C build` -13. Make sure that the version string and package string match: `build/systemctl --version` -14. [FINAL] Close the github milestone and open a new one (https://github.com/systemd/systemd/milestones) -15. "Draft" a new release on github (https://github.com/systemd/systemd/releases/new), mark "This is a pre-release" if appropriate. -16. Check that announcement to systemd-devel, with a copy&paste from NEWS, was sent. This should happen automatically. -17. Update IRC topic (`/msg chanserv TOPIC #systemd Version NNN released | Online resources https://systemd.io/`) -18. [FINAL] Create an empty -stable branch: `git push systemd origin/main:refs/heads/v${version}-stable`. -19. [FINAL] Build and upload the documentation (on the -stable branch): `ninja -C build doc-sync` -20. [FINAL] Create a new `ci/v${version}-stable` branch for deb package builds on https://salsa.debian.org/systemd-team/systemd -21. [FINAL] Switch `.semaphore/semaphore-runner.sh` and `mkosi/mkosi.conf.d/debian-ubuntu/mkosi.conf.d/pkgenv.conf` to the new `ci/v${version}-stable` branch on the -stable branch -22. [FINAL] Change the Github Pages branch to the newly created branch (https://github.com/systemd/systemd/settings/pages) and set the 'Custom domain' to 'systemd.io' -23. [FINAL] Update version number in `meson.version` to the devel version of the next release (e.g. from `256` to `257~devel`) -24. [FINAL] Build and upload the documentation (on the main branch): `ninja -C build doc-sync` +8. [RC1] Switch `versionrewrite-pattern` and `versionrewrite-replacement` to RC mode in https://build.opensuse.org/projects/system:systemd/packages/systemd/files/_service?expand=1 +9. Update version number in `meson.version` (e.g. from `256~devel` to `256~rc1` or from `256~rc3` to `256`). Note that this uses a tilde (\~) instead of a hyphen (-) because tildes sort lower in version comparisons according to the [UAPI.10 Version Format Specification](https://uapi-group.org/specifications/specs/version_format_specification/), and we want `255~rc1` to sort lower than `255`. +10. Check dbus docs with `ninja -C build update-dbus-docs` +11. Check manpages list with `ninja -C build update-man-rules` +12. Update translation strings (`ninja -C build systemd-pot`, `ninja -C build systemd-update-po`) - drop the header comments from `systemd.pot` + re-add SPDX before committing. If the only change in a file is the 'POT-Creation-Date' field, then ignore that file. +13. Tag the release: `version="v$(sed 's/~/-/g' meson.version)" && git tag -s "${version}" -m "systemd ${version}"` (tildes are replaced with hyphens, because git doesn't accept the former). +14. Do `ninja -C build` +15. Make sure that the version string and package string match: `build/systemctl --version` +16. [FINAL] Close the github milestone and open a new one (https://github.com/systemd/systemd/milestones) +17. "Draft" a new release on github (https://github.com/systemd/systemd/releases/new), mark "This is a pre-release" if appropriate. +18. Check that announcement to systemd-devel, with a copy&paste from NEWS, was sent. This should happen automatically. +19. Update IRC topic (`/msg chanserv TOPIC #systemd Version NNN released | Online resources https://systemd.io/`) +20. [FINAL] Create an empty -stable branch: `git push systemd origin/main:refs/heads/v${version}-stable`. +21. [FINAL] Build and upload the documentation (on the -stable branch): `ninja -C build doc-sync` +22. [FINAL] Create a new `ci/v${version}-stable` branch for deb package builds on https://salsa.debian.org/systemd-team/systemd +23. [FINAL] Switch `.semaphore/semaphore-runner.sh` and `mkosi/mkosi.conf.d/debian-ubuntu/mkosi.conf.d/pkgenv.conf` to the new `ci/v${version}-stable` + to the new `ci/v${version}-stable` branch on the -stable branch +24. [FINAL] Switch `versionrewrite-pattern` and `versionrewrite-replacement` to release mode in https://build.opensuse.org/projects/system:systemd/packages/systemd/files/_service?expand=1 +25. [FINAL] Change the Github Pages branch to the newly created branch (https://github.com/systemd/systemd/settings/pages) and set the 'Custom domain' to 'systemd.io' +26. [FINAL] Update version number in `meson.version` to the devel version of the next release (e.g. from `256` to `257~devel`) +27. [FINAL] Build and upload the documentation (on the main branch): `ninja -C build doc-sync` # Steps to a Successful Stable Release