Changes in doc/releasing-barnowl.txt [1ea0249:5f08dbe]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/releasing-barnowl.txt
r1ea0249 r5f08dbe 1 DOING A BARNOWL RELEASE 1 -*- mode: org *- 2 * DOING A BARNOWL RELEASE 3 - [ ] Send mail to barnowl-dev indicating that a release is 4 happening soon, and soliciting any improvements that 5 developers want included in the release. 6 - [ ] Wait a while (a week or so, or more if necessary) for any 7 pending patches to get in. 8 - [ ] Prepare the -rc commit 9 - [ ] Run ./scripts/add-changelog NEW-VERSION PREV-TAG..HEAD 10 - [ ] Edit ChangeLog to combine and filter entries 11 - [ ] Edit configure.ac to bump the version to 1.Nrc1 12 - [ ] Commit with message 'BarnOwl 1.Nrc1'; don't push until after 13 builds all succeed 14 - [ ] Run scripts/do-release with -f (so it won't complain about 15 missing changelog), makes a tarball 16 - [ ] Do a locker build (See DOING A LOCKER BUILD) 17 - [ ] Update configure.ac on master to bump the version to 1.(N+1)dev 18 - [ ] Push git git: 19 - [ ] The RC commit 20 - [ ] The configure.ac change on master 21 - [ ] A release-1.N branch pointing at the RC commit 22 - [ ] Copy tarball into /mit/barnowl/web_scripts/dist 23 - [ ] Send mail announcing the RC to barnowl-dev@mit.edu 24 - [ ] Wait 1-2 weeks, collect any bug reports 25 - [ ] Fix any reported bugs on master 26 - [ ] Cherry-pick/backport appropriate fixes from master onto 27 release-1.N 28 - [ ] If there have been many or large bugfixes, repeat the process 29 for barnowl 1.Nrc2 2 30 3 [ ] Send mail to barnowl-dev indicating that a release is happening 4 soon, and soliciting any improvements that developers want 5 included in the release. 31 * DOING THE ACTUAL RELEASE 32 - [ ] Update the changelog and configure.ac for barnowl 1.N 33 - [ ] run ./scripts/do-release 34 - [ ] Do the locker build 35 - [ ] Push the release tag 36 - [ ] Write up release notes 37 (I usually use the previous release's email as a template) 38 - [ ] Update the website 39 - [ ] Add the line that `do-release` printed to the changelog on the home page 40 - [ ] Add your release notes as /release-notes/1.N 41 - [ ] Send the release notes to barnowl-users@mit.edu 6 42 7 [ ] Wait a while (a week or so, or more if necessary) for any pending 8 patches to get in. 43 * DOING A LOCKER BUILD 44 - [ ] Copy the tarball to build@nelhage.com 45 - [ ] ssh to build@nelhage.com and kinit 46 - [ ] On build@nelhage.com, run barnowl-build-all TARBALL. 47 This script does builds for all Debathena platforms using chroots 48 on nelhage.com, and ssh's to Athena 9 machines to do the two 49 Athena 9 builds. 50 - [ ] Sanity-check the builds 51 - [ ] Do cursory testing on debathena platforms and both athena9s. 52 - [ ] chroots on nelhage.com also useful 53 - [ ] Update symlinks with locker-update script; 54 - locker-update [-b] [-n] VERSION 55 - e.g. locker-update -b -n barnowl-1.6rc1 56 - [ ] Use -b to update the barnowl-beta name 57 - [ ] Use -n first for dry-run 9 58 10 [ ] Prepare the -rc commit 11 12 [ ] Run ./scripts/add-changelog NEW-VERSION PREV-TAG..HEAD 13 14 [ ] Edit ChangeLog to combine and filter entries 15 16 [ ] Edit configure.ac to bump the version to 1.Nrc1 17 18 [ ] Commit with message 'BarnOwl 1.Nrc1'; don't push until after 19 builds all succeed 20 21 [ ] Run scripts/do-release with -f (so it won't complain about missing 22 changelog), makes a tarball 23 24 [ ] Make all the builds 25 26 [ ] On build@nelhage.com, run barnowl-build-all TARBALL to build for 27 everything with chroots, doesn't do athena 9 builds. Builds into 28 locker parellel to all other versions. 29 30 [ ] Do two athena9 builds: solaris and linux, usually use multics (or 31 sun.dialup) for the solaris build, oliver for linux athena9 32 33 [ ] Remember to add gnu; add barnowl 34 35 [ ] eval `barnowl-perl-config` to include the perl modules in the 36 barnowl locker 37 38 [ ] Run scripts/locker-build TARBALL (barnowl-build-all loops over 39 all of them in schroots). It overrides existing one. 40 41 [ ] Sanity-check the builds 42 43 [ ] Do cursory testing on debathena platforms and both athena9s. 44 45 [ ] chroots on nelhage.com also useful 46 47 [ ] Update symlinks with locker-update script; 48 49 locker-update [-b] [-n] VERSION 50 51 e.g. locker-update -b -n barnowl-1.6rc1 52 53 [ ] -b for the beta 54 55 [ ] -n first for dry-run 56 57 [ ] Push the RC commit 58 59 [ ] Copy tarball into /mit/barnowl/web_scripts/dist 60 61 [ ] Send mail (rcs to barnowl-dev@, release to barnowl-users@) 62 63 [ ] Make an actual release about a week after the RC 64 65 66 LOCKER LAYOUT 67 68 * builds/barnowl-VERSION contains the arch-independent files by 69 version 70 71 * arch/SYSNAME/bin/barnowl-VERSION is the actual binary 72 73 * arch/SYSNAME/bin/barnowl is a symlink to ../../common/bin/barnowl 74 (wrapper script runs barnowl.real). .../barnowl.real is a symlink to 75 the latest version. 76 77 * zcrypt is also installed with a versioned name, but currently 78 barnowl-N will not run zcrypt-N, so we can't change that interface 79 at all. 59 * LOCKER LAYOUT 60 - builds/barnowl-VERSION contains the arch-independent files by 61 version 62 - arch/SYSNAME/bin/barnowl-VERSION is the actual binary 63 - arch/SYSNAME/bin/barnowl is a symlink to ../../common/bin/barnowl 64 (wrapper script runs barnowl.real). .../barnowl.real is a symlink 65 to the latest version. 66 - zcrypt is also installed with a versioned name, but currently 67 barnowl-N will not run zcrypt-N, so we can't change that interface 68 at all.
Note: See TracChangeset
for help on using the changeset viewer.