(no commit message)
[ikiwiki.git] / docs / developer / Release / index.mdwn
CommitLineData
86b77dc1 1#The art of releasing
2
3This is a template on how to do a release.
4
ad252dc8 5##Branching
6
7On crater branch the repo:
8
9 cd /repository/git/dragonfly.git
10 git branch DragonFly_RELEASE_x_y (e.g. 2_8)
11
12Check out two copies of /usr/src, one with master checked out, one with the new release branch checked out. Checkouts should be under your user id, NOT as root, or the later tagging operation will be unhappy.
13
14On the new branch:
15
16 vi sys/sys/param.h
17
18Edit \__DragonFly\_version and related comments. Be sure to add a comment for the new master too (but the version is set to the new release).
19
20 vi sys/conf/newvers.sh
21
22Edit BRANCH, use 'RELEASE', update version. e.g. RELEASE_2_8
23
24On master
25
26 vi sys/sys/param.h
27
28Edit \__DragonFly\_version and related comments.
29
30 vi sys/conf/newvers.sh
31
32Edit BRANCH, use 'DEVELOPMENT', update version.
33
34##Tagging
35
36Make sure all changes on the master branch and on the new branch have been committed and pushed before tagging anything.
37
38man git-tag for info, the committer needs GPG set up so git tag -s works. Then you can use your own checkout. Be sure the checkouts are under your user id and you do the tagging as yourself instead of as root.
39
40###In master
41
42 git tag -s -m "DragonFly 2.x.x" v2.x.x
43 git push --tags
44
45###In the new branch
46
47 git tag -s -m "DragonFly 2.x.x" v2.x.x
48 git push --tags
49
50Do the x.x.0 immediately. Just before doing the final nrelease build roll a x.x.1 tag for the release branch. Release as x.x.1.
51
52##Pkgsrc
53
54Adjust bulk builds to the release's pkgsrc branch, and make sure they upload to the right directories on avalon.dragonflybsd.org.
55
56Adjust the default pkgsrc checkout in /usr/src/etc/Makefile.usr for both master and the new branch if necessary.
86b77dc1 57
86b77dc1 58
59###build isos and imgs
60
61###build pkgsrc packages
62
63###testing
64
65i386 iso, img, gui-img
66x86_64 iso, img, gui-img
67
68
69booting install media
70
71installing, encrypted, unencrypted, ufs, hammer
72
73configuring in the installer
74
75booting installed system
76
77testing on real hardware, qemu, vmware
78
79###write release notes
80
81###copy to mirror master
82
83###announce
84users@, web page