remove an old note for file
[linux_from_scratch.git] / editor-manual / book-release-process
blob14a296224c2357a4de2995cd4b3661f28e7d9959
1 # Checklist for LFS Book releases.
3 # x.y refers to the version you are about to release
4 # a.b refers to the next *minor* version after the release
5 #  (ex: 6.2 is the minor next version after 6.1)
7 1.  Ensure that all needed commits have been made by all editors.
9 2.  Create a tag. All the following steps will be done on that tag (not on the
10     branch):
12     svn mkdir svn+ssh://svn.linuxfromscratch.org/LFS/tags/[tag-name] -m "Create [tagname] directory
13     svn cp svn+ssh://svn.linuxfromscratch.org/LFS/trunk/BOOK svn+ssh://svn.linuxfromscratch.org/LFS/tags/[tagname]/BOOK -m "Create [tagname] tag"
15 3.  Change "version" entity to x.y
17 4.  Change "releasedate" entity if necessary
19 5.  Change "milestone" entity to x.y (shouldn't be needed)
21 6.  Change "generic-version" entity to x.y
23 8.  Commit all changes
25 ## WARNING ##
27 # From here on it is assumed that all scripts are run from your home directory
28 # on quantum. This is required to ease the automation of the release process.
30 9.  Download release-script.sh from the editor-manual directory.
31     ENSURE THAT YOU CHECK THE "version" AND "stable" VARIABLES! Then run the
32     script. The script will pull the tagged repo and from that it will create
33     all the downloadable book types and will extract a copy of each into
34     ~/public_html/test. The next 4 items in this list are for testing those
35     extracted versions.
37 10. Visually inspect the NOCHUNKS and the HTML in your browser.
39 11. Visually inspect the PDF with a PDF viewer.
41 12. Look at the XML directory and make sure it is named correctly and that
42     index.xml and all the chapter directories exist in the *top-level*
43     directory (e.g. LFS-BOOK-$version-XML/index.xml).
45 13. Compare the TXT version with the original in ~/RELEASE-$version. Use both
46     diff and a visual inspection to ensure that "all" and "only" the references
47     at the bottom were removed.
49 14. Once all inspections have been made, run the copy-book.sh and
50     copy-lfs-patches.sh scripts to move the books and patches into their final
51     location. This time, visually inspect that the HTML was untarred properly in
52     /lfs/view and that www.lfs.org and archive.lfs.org both have all the
53     different book formats. Also ensure that "all" book files and directories
54     "must" be group writable and owned by the lfswww group.
56 # Website changes (you may wish to coordinate with a website maintainer)
58 15. Pull the www2 repository with the following command (minus the quotes):
59     "svn co svn+ssh://svn.linuxfromscratch.org/www2/html/trunk www2"
60     If not already present, create the www2/lfs/errata/$version directory and if
61     it is a final release (i.e. not a pre-release), recreate the "stable"
62     symlink to it. You will need to cp the files from the previous release's
63     errata directory and modify the index.html for the latest release version.
64     The only listed errata item should be "No known errata at this time." Once
65     everything is ready, svn add all needed files/dirs and commit the
66     changes.
68 16. Create the /srv/www/www.linuxfromscratch.org/lfs/build-logs/$version
69     directory and if it is a final release (i.e. not a pre-release), recreate
70     the "stable" symlink to it. The build logs will be added by whoever is
71     currently maintaining them. As of this writing it is Archaic. The maintainer
72     of the build logs may have already created this dir in preparation for the
73     release, but the "stable" symlink will not be made until release so ensure
74     that is exists and points to the latest release.
76 17. Add the release announcement to www2/lfs/news.html, mention the release in
77     www2/lfs/read.html and commit the changes.
79 18. Send an announcement email to the lfs-dev, lfs-support, lfs-announce,
80     lfs-security, blfs-dev, blfs-support and website mailing lists.
82 # Cleanup stage
84 19. If this is a final release (i.e. not a pre-release), remove the "testing"
85     branch description from www2/lfs/read.html and commit the changes.
87 20. If this is a final release (i.e. not a pre-release), remove the "testing"
88     branch repository and comment out its line in /usr/bin/render-lfs-book.sh.
90 21. If this is a final release (i.e. not a pre-release), remove any pre-release
91     material (books, tarballs, patches) from /home/httpd/www.linuxfromscratch.org
92     "NOTE": nothing in /patches/lfs, /lfs/view, or /lfs/downloads is handled by
93     the www2 repository and therefore must be done by hand. At this time, leave
94     the build logs until an official policy is adopted as to what to do with
95     them.
97 22. If this is a final release (i.e. not a pre-release), remove any pre-release
98     material (books, tarballs, patches, errata) from the www2 repository and
99     commit the changes.
101 23. Congratulations! Didn't know there was this much involved in a release, did
102     ya? :) The last step should be to verify all the links on the website to
103     ensure everything works properly. Of biggest concern is to check that links
104     work for both the specific $version and the stable symlinks to it (like the
105     read, download, build-logs, and errata links).