2 # Copyright (C) 2000-2015 Kern Sibbald
3 # License: BSD 2-Clause; see file LICENSE-FOSS
6 These are the steps to complete for making a new release.
8 1. Ensure that the previous release had a tag pushed. If
9 not create one at the prior release point and push it
11 git push <remote> tag <tag-name>
13 2. Update the ChangeLog using release/git2changelog.pl Release-5.2.x..HEAD >1
15 3. Edit 1 into ChangeLog ensuring to mark the previous release
16 Version number prior to adding the new ChangeLog output.
18 4. Edit the ReleaseNotes. Be sure not to change anything in the
19 prior version (typos are OK). This sometimes means duplicating
20 text, but it is far better to have a complete history.
21 Terminate the previous release with a line of all =====,
22 and ensure that the previous release version is properly
23 defined. Then add the new release section. Point out
24 the need to review prior releases if changing major versions.
26 5. Update the version and date.
28 6. Update the po files (cd po; make update-po). Correct any
29 problems and re-run until correct.
31 7. Update the docs. Make sure they have the correct date, and
32 that the new docs are uploaded to bacula.org
34 8. Make sure everything is pushed including the docs.
36 9. Diff the prior version against the current one:
37 git diff Release-5.2.1..HEAD >diff (where 5.2.1 is the prior)
38 and check for debug messages that have level zero, new text
39 in non-debug messages that is not setup for translation.
41 10. Run a full regression test (./nightly-all) on as many
42 platforms as possible.
44 11. Check the CDash Bacula output pages to make sure there are
45 no overlooked problems.
47 12. Cut the release (i.e. make the .tar.gz files) by copying
48 the release directory out of the build tree, ensuring that
49 your config file is properly set, and that your signing
50 key is properly setup, and running the ./makeall script.
52 13. Ensure that the Windows builds were done properly.
54 14. detar the main bacula source release
56 15. Run a regression on the detared file (ensures that all files
57 are actually in the tar and that it is not corrupt).
59 16. push the tags (once pushed they can be corrected but it is more
60 complicated than simply re-running the ./makeall script)
61 ./pushtags which does in all repos
63 git push <remote> tag <tag-name>
65 17. Upload the release files to Source Forge.
67 18. Update the release version and date on the main bacula.org page
69 19. Update the news item to announce the release.
71 20. Send the release announcement to the users, devel, and announce
74 21. Update the link to the release version in the "Current Release"
75 in the menu (inc/header.php).