Skip to content
Gratien D'haese edited this page Apr 18, 2024 · 54 revisions

In order to have a well-documented release process, please add any necessary steps to the list:

Pre-Requisites

Testing

Preparation

This all becomes part of a make release target ! (Wishful thinking ?)

  • Finalize commits/versions

    • Update the ChangeLog file (when we have one), or the release notes on the rear web pages

    • To compile the information for the release notes use the following commands:

git log --format="* %s : %b %n" --topo-order
git log --format="%ae %ad%n%s :%n%b%n" --graph | fmt -78 -t | less

to find all modifications since last release.

  • Convert the release notes from the ReaR web pages into a simple text file:

export LC_ALL=POSIX
export LANG=POSIX
w3m -dump -cols 78 http://relax-and-recover.org/documentation/release-notes-2-xx | iconv -f UTF-8 -t ASCII//TRANSLIT | sed -e 's/^      ? /      - /' > doc/rear-release-notes.txt
  • Add the list of contributors which did something for this new release via (in this example the previous release was 2.6):

git log --format="%aN" $(git merge-base master 2.6)..master | sort -u | sed -e 's/,/, /g'
  • review doc/rear-release-notes.txt for broken lines (visual check)

  • edit/update rear.8.adoc man page with new version nr and go over it to modify what is needed

  • usr/sbin/rear '(modify VERSION = )'

  • packaging/rpm/rear.spec '(modify Version:)'

  • packaging/debian/changelog '(add changelog entries)'

    • Tag version in master branch:

git tag -s -a rear-2.xx -m "Rear release 2.xx"
git tag -s -a 2.xx -m "Rear release 2.xx"
  • Test packaging configuration (RPM, DEB, …​)

make rpm OFFICIAL=1
make deb OFFICIAL=1

rpmlint -vi dist/rear-2.x-1.*.rpm
rpmlint -vi dist/rear-2.x-1.*.src.rpm

make dist OFFICIAL=1  (for the tar-ball to be used to upload to SourceForge and Fedora)
  • bodhi builds (fedora-update); or use the fedora release procedures with git

    • Commit above changes to version branch (if any)

    • Create OBS build

  • make obs OFFICIAL=1

    • If everything looks OK

  • git push --tags

    • If you need afterwards some fixes to be applied you can remove the tags as follow:

git tag -d 2.xx
git tag -d rear-2.xx
git push origin :refs/tags/2.xx
git push origin :refs/tags/rear-2.xx
  • Mark in master branch where the release happened:

git commit -S --allow-empty -m 'ReaR 2.x release'
  • Create a new 'stable' branch in Git - use the 'Code' → 'Switch branch' field

Distribution

  • Update Rear project at the OpenSUSE Build Service (Archiving:Backup:Rear)

    • Review the supported Linux distributions

Announcement channels