diff --git a/developer_manual/release-process.rst b/developer_manual/release-process.rst index 6e245d7..f908a07 100644 --- a/developer_manual/release-process.rst +++ b/developer_manual/release-process.rst @@ -6,7 +6,7 @@ Release process The normal LibreSign release path is driven from the **Prepare release** GitHub Actions workflow. -The reusable policy and contracts live in ``LibreCodeCoop/release-tool`` and orchestration lives in ``LibreCodeCoop/github-workflows``. ``LibreSign/libresign`` carries the consumer configuration and repository-specific packaging rules. +The reusable policy lives in ``LibreCodeCoop/release-tool`` and orchestration in ``LibreCodeCoop/github-workflows``. ``LibreSign/libresign`` supplies the consumer configuration and publisher. Maintainer journey ------------------ @@ -27,6 +27,7 @@ There are only two semantic human release gates: merging the generated release P .. toctree:: :maxdepth: 2 + release-process/reusable-tooling release-process/configuration release-process/preparing release-process/versioning diff --git a/developer_manual/release-process/reusable-tooling.rst b/developer_manual/release-process/reusable-tooling.rst new file mode 100644 index 0000000..83f1521 --- /dev/null +++ b/developer_manual/release-process/reusable-tooling.rst @@ -0,0 +1,36 @@ +.. SPDX-FileCopyrightText: 2026 LibreCode coop and contributors +.. SPDX-License-Identifier: AGPL-3.0-or-later + +Reusable release tooling +======================== + +LibreSign is the reference consumer of reusable release tooling: + +``LibreCodeCoop/release-tool`` + Release planning, version/changelog policy, state contracts, milestone transitions, history synchronization, draft generation and publication verification. + +``LibreCodeCoop/github-workflows`` + Tested GitHub Actions orchestration and managed workflow distribution. + +``LibreSign/libresign`` + Consumer configuration, stable branches, changelog/version files, packaging rules and publisher workflow. + +Other Nextcloud apps can adopt the same tooling without depending on LibreSign application code. + +Adopting it in another app +-------------------------- + +Use the generic guides maintained with the tooling: + +* `Getting started `_ +* `Consumer configuration `_ +* `Release lifecycle `_ +* `GitHub Actions integration `_ +* `GitHub App setup `_ +* `Managed workflow synchronization `_ + +A managed consumer installs ``prepare-release.yml`` and ``sync-workflow-templates.yml`` from the organization workflow catalog. The updater keeps installed workflows current through reviewable pull requests. + +The release GitHub App needs Contents and Pull requests read/write access. A GitHub App used for workflow synchronization additionally needs Workflows write access. + +The remaining pages in this section describe LibreSign's concrete release process. Generic configuration and GitHub App setup are intentionally not duplicated here.