| 1 | = Introduction = |
| 2 | |
| 3 | This is a release checklist for OpenVPN 2.x releases. Its primary purpose is to ensure that all release tasks are completed. |
| 4 | |
| 5 | = Pre-release checklist = |
| 6 | |
| 7 | Heads up to external entities |
| 8 | * '''Notify OpenVPN Inc. marketing for a press release''' |
| 9 | * Only in special cases (e.g. major security fixes or a major release) |
| 10 | * 7 days prior is optimal, 48 hours is minimum |
| 11 | * Access Server team |
| 12 | * [http://oss-security.openwall.org/wiki/mailing-lists/distros Distro package maintainers] |
| 13 | * Other external entities |
| 14 | |
| 15 | = Release checklist = |
| 16 | |
| 17 | Tasks marked with '''Bold''' have to be done by an OpenVPN Inc. employee as access to internal systems is required. |
| 18 | |
| 19 | == Update release dependencies == |
| 20 | |
| 21 | * [https://github.com/OpenVPN/openvpnserv2 openvpnserv2] |
| 22 | * Merge pull requests |
| 23 | * Rebase with upstream |
| 24 | * Build |
| 25 | * '''Put new version to build.openvpn.net''' |
| 26 | * '''Put signature to build.openvpn.net''' |
| 27 | * Tag the release |
| 28 | * Push changes and tags to Git |
| 29 | * [https://github.com/OpenVPN/easy-rsa-old easy-rsa] |
| 30 | * Merge pull requests |
| 31 | * Rebase with upstream |
| 32 | * '''Put updated tarball to build.openvpn.net''' |
| 33 | * '''Put signature to build.openvpn.net''' |
| 34 | * Tag the release |
| 35 | * Push changes and tags to Git |
| 36 | * [https://github.com/OpenVPN/openvpn-gui openvpn-gui] |
| 37 | * Merge pull requests |
| 38 | * Rebase with upstream |
| 39 | * '''Put updated tarball to build.openvpn.net''' |
| 40 | * '''Put signature to build.openvpn.net''' |
| 41 | * Push changes and tags to Git |
| 42 | * [https://github.com/OpenVPN/openvpn-build openvpn-build] |
| 43 | * Merge pull requests |
| 44 | * Rebase with upstream |
| 45 | * Update dependencies (e.g. openssl) |
| 46 | * Tag the release |
| 47 | * Push changes and tags to Git |
| 48 | * [https://github.com/OpenVPN/openvpn-windows-buildtest openvpn-windows-buildtest] |
| 49 | * '''Update openvpn version for buildtest on the buildtest VM''' |
| 50 | |
| 51 | == Prepare for packaging == |
| 52 | |
| 53 | * Build tarballs |
| 54 | * '''Publish tar.gz on build.openvpn.net''' |
| 55 | |
| 56 | == Package == |
| 57 | |
| 58 | * Build Windows installers (with [https://github.com/OpenVPN/openvpn-build openvpn-build]) |
| 59 | * Build Debian packages (with [https://github.com/OpenVPN/sbuild_wrapper sbuild_wrapper]) |
| 60 | |
| 61 | == Smoketest packages == |
| 62 | |
| 63 | * Windows installer (use [https://github.com/OpenVPN/openvpn-windows-test our testsuite]) |
| 64 | * Debian packages (manual process) |
| 65 | |
| 66 | == Update documentation == |
| 67 | |
| 68 | * Man-page on Trac |
| 69 | * Changelog on Trac |
| 70 | |
| 71 | == Publish packages == |
| 72 | |
| 73 | * GPG-sign tarballs and Windows installers |
| 74 | * '''Push Debian packages to apt repositories''' |
| 75 | * '''Update community downloads page''' |
| 76 | * '''Update links to latest release''' |
| 77 | |
| 78 | == Release announcements == |
| 79 | |
| 80 | * OpenVPN mailing lists (attach changelog) |
| 81 | * openvpn-users@lists.sourceforge.net |
| 82 | * openvpn-devel@lists.sourceforge.net |
| 83 | * openvpn-announce@lists.sourceforge.net (sender needs to be explicitly allowed) |
| 84 | * Forums |
| 85 | * '''Twitter (optional)''' |
| 86 | * Security announcement (as needed) |
| 87 | |
| 88 | == Final touches == |
| 89 | |
| 90 | * Commit and push changes to [https://github.com/OpenVPN/sbuild_wrapper sbuild_wrapper] |