2017-02-17 09:54:51 +01:00
|
|
|
Upstream
|
|
|
|
========
|
|
|
|
|
2021-01-25 15:46:23 +01:00
|
|
|
* run the full testsuite
|
|
|
|
|
|
|
|
vagrant rsync local && \
|
|
|
|
vagrant ssh -c "build-backupninja.sh && sudo /vagrant/test/test.sh"
|
|
|
|
|
2017-09-05 16:47:08 +02:00
|
|
|
* prepare the environment:
|
2017-08-20 00:48:26 +02:00
|
|
|
|
2017-09-05 16:47:08 +02:00
|
|
|
export VERSION=x.y.z
|
2017-08-20 00:48:26 +02:00
|
|
|
|
2021-01-21 22:27:14 +01:00
|
|
|
* update `configure.ac` and `CHANGELOG.md`
|
2017-08-20 00:48:26 +02:00
|
|
|
|
2017-09-05 16:47:08 +02:00
|
|
|
perl -pi -E \
|
2021-01-21 22:29:34 +01:00
|
|
|
"s{^AC_INIT\(\[backupninja\],\[[0-9.\-rc]+\],}{AC_INIT([backupninja],[$VERSION],}" \
|
2021-01-14 16:46:08 +01:00
|
|
|
configure.ac
|
|
|
|
|
2021-01-21 22:27:14 +01:00
|
|
|
RELEASE_DATE=$(LC_ALL=C date '+%Y-%m-%d'); perl -pi -E \
|
2021-01-14 16:46:08 +01:00
|
|
|
"s{^## \[Unreleased\].*}{## [$VERSION] - $RELEASE_DATE}" \
|
|
|
|
CHANGELOG.md
|
2017-08-20 00:48:26 +02:00
|
|
|
|
2021-01-25 15:46:23 +01:00
|
|
|
* commit and created signed tag
|
2017-02-17 09:54:51 +01:00
|
|
|
|
2021-01-21 22:19:35 +01:00
|
|
|
git commit configure.ac CHANGELOG.md \
|
2017-09-05 16:47:08 +02:00
|
|
|
-m "Releasing backupninja $VERSION" && \
|
2021-01-25 15:46:23 +01:00
|
|
|
git clean -fdx -e .vagrant && \
|
2017-08-20 00:48:26 +02:00
|
|
|
git tag -s "backupninja-$VERSION" \
|
2017-09-05 16:47:08 +02:00
|
|
|
-m "Releasing backupninja $VERSION" && \
|
|
|
|
./autogen.sh && \
|
|
|
|
./configure && \
|
2017-02-17 09:54:51 +01:00
|
|
|
make dist
|
|
|
|
|
|
|
|
* compare the content of the generated tarball with the content of the
|
|
|
|
previous one
|
2017-08-20 00:48:26 +02:00
|
|
|
|
2021-01-25 15:46:23 +01:00
|
|
|
diffoscope --text-color=always ../tarballs/backupninja-x.y.z.tar.gz \
|
|
|
|
backupninja-$VERSION.tar.gz | less -R
|
|
|
|
|
|
|
|
* move the tarball outside of the Git working copy and clean up
|
2017-09-05 16:47:08 +02:00
|
|
|
|
|
|
|
mkdir -p ../tarballs && \
|
|
|
|
mv backupninja-$VERSION.tar.gz ../tarballs/ && \
|
|
|
|
make distclean && \
|
2021-01-25 15:46:23 +01:00
|
|
|
git clean -fdx -e .vagrant
|
2017-09-05 16:47:08 +02:00
|
|
|
|
|
|
|
Debian
|
|
|
|
======
|
2017-02-17 09:54:51 +01:00
|
|
|
|
2017-09-05 16:47:08 +02:00
|
|
|
Prepare a new package:
|
2017-02-17 09:54:51 +01:00
|
|
|
|
2017-09-05 16:47:08 +02:00
|
|
|
git checkout debian && \
|
|
|
|
gbp import-orig --upstream-vcs-tag="backupninja-$VERSION" \
|
|
|
|
../tarballs/backupninja-$VERSION.tar.gz && \
|
|
|
|
gbp dch --auto && \
|
|
|
|
dch -e && \
|
|
|
|
export DEBIAN_VERSION=$(dpkg-parsechangelog -SVersion) && \
|
|
|
|
git commit debian/changelog \
|
|
|
|
-m "Releasing backupninja ($DEBIAN_VERSION) to Debian unstable" && \
|
|
|
|
gbp buildpackage
|
2017-02-17 09:54:51 +01:00
|
|
|
|
2017-09-05 16:47:08 +02:00
|
|
|
Install the `.deb` and test.
|
2017-08-20 00:48:26 +02:00
|
|
|
|
2017-09-05 16:47:08 +02:00
|
|
|
Release
|
|
|
|
=======
|
2017-08-20 00:48:26 +02:00
|
|
|
|
2021-01-25 15:46:23 +01:00
|
|
|
* push the release to GitLab
|
2017-08-20 00:48:26 +02:00
|
|
|
|
2017-09-05 16:47:08 +02:00
|
|
|
git checkout debian && \
|
|
|
|
gbp buildpackage --git-tag-only --git-sign-tags && \
|
|
|
|
git push --follow-tags origin \
|
|
|
|
master:master \
|
|
|
|
debian:debian \
|
|
|
|
pristine-tar:pristine-tar \
|
|
|
|
upstream:upstream
|
2017-02-17 09:54:51 +01:00
|
|
|
|
2021-01-25 15:46:23 +01:00
|
|
|
* create a new GitLab release
|
|
|
|
|
2017-09-05 16:47:08 +02:00
|
|
|
* announce the release on the backupninja mailing-list,
|
|
|
|
pointing to the milestone web page
|
2021-01-25 15:46:23 +01:00
|
|
|
|
2017-09-05 16:47:08 +02:00
|
|
|
* upload to Debian or ask someone listed in the `Uploaders` control
|
|
|
|
field to review and upload
|
2017-02-17 09:54:51 +01:00
|
|
|
|
2017-09-05 16:47:08 +02:00
|
|
|
Open the next development cycle
|
|
|
|
===============================
|
2017-02-17 09:54:51 +01:00
|
|
|
|
2017-09-05 16:47:08 +02:00
|
|
|
* `git checkout master`
|
2021-01-25 15:46:23 +01:00
|
|
|
|
2021-01-14 16:46:08 +01:00
|
|
|
* Add an empty new section in `CHANGELOG.md`, commit and push.
|