Skip to content

Release Checklist

Fred Klassen edited this page Jun 11, 2023 · 53 revisions
  • Assume Linux OS and you are on the release branch, e.g. 4.0.0
  • Test performance on minimum Linux and OS X
  • Compile and crosscompile on ARM
  • Update CHANGELOG
  • Update version number in configure.ac
  • Submit pull request, accept and checkout master
  • Pull latest code for netmap
  • git clean -dfx (don't forget to back up project files)
  • mkdir -p build && cd build
  • ../autogen.sh
  • ../configure --with-testnic=enp0s5 --with-netmap=/home/fklassen/git/netmap --enable-asan
  • make
  • Test with sudo make test
  • sudo make maintainer-clean
  • ../autogen.sh
  • ../configure --with-testnic=enp0s5 --with-netmap=/home/fklassen/git/netmap
  • git tag -u [email protected] v4.x.x -m "4.x.x"
  • make version
  • make clean
  • make
  • make dist-gzip
  • make dist-xz
  • Test tarballs on a netmap capable machine
  • gpg -ab -u [email protected] tcpreplay-4.x.x.tar.gz
  • gpg -ab -u [email protected] tcpreplay-4.x.x.tar.xz
  • Commit changes
  • git push
  • git push --tags
  • Create PR from release branch to master and Merge pull request
  • git checkout master
  • git pull origin master
  • If this is a beta release
    • Create a pre-release in GitHub and provide CHANGELOG comments
    • Upload tar balls and PGP signatures to the GitHub pre-release
  • else if this is a full release
    • upload to SourceForge
    • update FreeCode
    • make docs
    • copy/paste docs/web/*.html contents to man pages in appneta/appneta.github.io project man pages
  • Update wiki downloads
  • Update wiki news
  • Update GitHub release notes
  • Announce to mail list
  • Tweet
  • Close any related GitHub milestones
Clone this wiki locally