Wikidiff2/Release process
Appearance
This page documents the release process for the "wikidiff2" extension to PHP.
Prerequisites
[edit]- To tag and create a new wikidiff2 version a PGP Key is needed.
- The user uploading the release needs production shell access and must be part of the "releasers-wikidiff2" group
Release
[edit]- Decide what the next version is going to be, according to semantic versioning. Update
WIKIDIFF2_VERSION_STRING
accordingly. - Create a GPG signed git tag (
git tag 1.7.0 -s
), and push it (git push --tags
) - Generate a tarball, and GPG sign it. The following script should do it and name it properly:
#!/bin/bash
git clean -fdx
TAG=`git describe --abbrev=0`
NAME="wikidiff2"
echo "Releasing $TAG of wikidiff2"
git archive --prefix=$NAME-$TAG/ $TAG -o $NAME-$TAG.tar.gz
gpg --detach-sign $NAME-$TAG.tar.gz
gpg --verify $NAME-$TAG.tar.gz.sig
- Upload the tarball and signature to https://releases.wikimedia.org/wikidiff2/ (check wikitech:releases.wikimedia.org for the internal name of the current server)
scp $NAME-$TAG.tar.gz releasesXXXX:~/
# on releasesXXX
mv ~/wikidiff2*.tar.gz /srv/org/wikimedia/releases/wikidiff2/