Table of Contents
Release Workflow
GitHub workflows have been introduced to simplify the release of new DokuWiki versions.
Release Preparation
Defined in release-preparation.yml
This workflow will create a new Pull Request with the following changes:
- update
VERSION
file - increase the
$updateVersion
variable
The workflow always runs on current master
, so it can only be used to create new releases, release candidates or hotfixes for the current stable release. Read info on old-stable
hotfixes below.
This is a manual workflow and it needs to be manually triggered from the GitHub actions tab. The workflow will ask for all needed input.
Important: this workflow will not trigger the unit testing worklflows, so it should only be run after the unit tests were sucessfull.
Release Build & Deploy
Defined in release-build.yml
This workflow will
- build a release tarball
- create the appropriate git tag
- create a GitHub release
- upload the tarball to the DokuWiki download page (but not enable it)
The workflow triggers when commits are pushed to the stable
branch, so it can only be used to create new releases, release candidates or hotfixes for the current stable release. Read info on old-stable
hotfixes below.
Basically, this workflow will run once the PR created by the Release Preparation workflow has been merged.
old-stable Hotfixes
When a hotfix for a old-stable
release is needed, the above workflows can't be used. Instead, the appropriate tasks have to be done manually and committed to the old-stable
branch:
- cherry-pick or monkey-patch the fix
- update the
VERSION
file - increase the
$updateVersion
by.1
indoku.php
how to best build the tarball? Would a standard download via GitHub suffice?
- manually upload the tarball to https://download.dokuwiki.org/admin/
Post Release Tasks
In the future, more of these tasks should be automated
- Log into https://download.dokuwiki.org/admin/ and change the version symlinks
- Update update.dokuwiki.org
- Update release list in dokuwiki.org config of the pluginrepo plugin
- Change message in IRC
- Update info in WikiMatrix
- Announce in mailing list, forum, social media