From 9c35c705a0531d1aaebe1611ba820d2d08eec9f4 Mon Sep 17 00:00:00 2001 From: Graham Percival Date: Sat, 16 Jan 2010 14:24:22 +0000 Subject: [PATCH] Doc: CG: clarify mentors, website, and release. --- Documentation/contributor/introduction.itexi | 4 +- Documentation/contributor/release-work.itexi | 33 +++----- Documentation/contributor/website-work.itexi | 87 +++++++++++++++++--- 3 files changed, 90 insertions(+), 34 deletions(-) diff --git a/Documentation/contributor/introduction.itexi b/Documentation/contributor/introduction.itexi index dfcd37a6de..df5b5bcded 100644 --- a/Documentation/contributor/introduction.itexi +++ b/Documentation/contributor/introduction.itexi @@ -126,7 +126,9 @@ somebody else. @item Inform your mentor if you're willing to do more work -- we always -have way more work than we have helpers available. +have way more work than we have helpers available. We try to +avoid overwhelming new contributors, so you'll be given less work +than we think you can handle. @end enumerate diff --git a/Documentation/contributor/release-work.itexi b/Documentation/contributor/release-work.itexi index 84e2b8ab98..144b863d5d 100644 --- a/Documentation/contributor/release-work.itexi +++ b/Documentation/contributor/release-work.itexi @@ -277,20 +277,6 @@ Regenerating regtests (if the lilypond-book naming has changed): - make lilypond -New contributor / mentor idea: - -- tell them to spend 10 minutes on a problem, then give up and ask - for help from their mentor - -- the mentor should tell them if a "make clean; make" (or the same - for docs) is required - - -Latest website: - -- generated hourly on lilypond.org. Only split-HTML; big-html and - pdf are not generated hourly (wait for the next devel release) - VERSION-SPECIFIC MACROS @@ -345,26 +331,31 @@ after 2.13.11; I need a chance to test these instructions) 2. make a release announcement by editing: Documentation/web/news-front.itexi -(and maybe moving the oldest news item to news-old.itexi) + Documentation/web/news.itexi +(moving the oldest news item to news-old.itexi) 3. upload: git push release/unstable 4. make GUB as "normal" - make LILYPOND_BRANCH=release/unstable -f lilypond.make doc + make LILYPOND_BRANCH=release/unstable lilypond (if this works, make it the default for GUB) 5. upload git, etc. -6. update VERSION, commit, push. +6. switch back to master and get the updated news: + git checkout master + git cherry-pick release/unstable + +NOTE: this only works on the last change to release/unstable; if +you had to hack more things to get the release working, then +you'll need to put the hash directly in there + +7. update VERSION, commit, push. VERSION = what you just did +0.0.1 DEVEL_VERSION = what you just did (i.e. is now online) STABLE_VERSION = what's online -7. switch back to master and merge the changes - git merge release/unstable -(FIXME: only if the release announcement+version are the only -changes; if you hacked more stuff, then try cherry-picking) 8. (for now) manually upload Documentation/pictures/out-www/ diff --git a/Documentation/contributor/website-work.itexi b/Documentation/contributor/website-work.itexi index 4ed46a5297..b78eedb2cf 100644 --- a/Documentation/contributor/website-work.itexi +++ b/Documentation/contributor/website-work.itexi @@ -51,29 +51,92 @@ existing texinfo files. @node Uploading and security @section Uploading and security -FIXME: currently these are plans, not yet completely implemented. -Hey, I'm doing the reponsible "write documentation first, then -code" thing! I rock! -gp - The website is generated hourly by user @code{graham} the host @code{lilypond.org}. For security reasons, we do not use the makefiles and scripts directly from git; copies of the relevant -scripts (below) are examined and copied to -@file{~graham/trusted-scripts} on the host. +scripts are examined and copied to +@code{~graham/lilypond/trusted-scripts/} + +Get latest source code: + +@verbatim +### update-git.sh +#!/bin/sh +cd $HOME/src/lilypond +git fetch origin +git merge origin/master +@end verbatim + +Check for any updates to trusted scripts: + +@verbatim +### check-git.sh +#!/bin/sh +GIT=$HOME/src/lilypond +DEST=$HOME/lilypond/trusted-scripts +diff -u $GIT/website.make $DEST/website.make +diff -u $GIT/Documentation/lilypond-texi2html.init $DEST/lilypond-texi2html.init +diff -u $GIT/scripts/build/extract_texi_filenames.py $DEST/extract_texi_filenames.py +diff -u $GIT/scripts/build/create-version-itexi.py $DEST/create-version-itexi.py +@end verbatim + +If the changes look ok, make them trusted: + +@verbatim +### copy-from-git.sh +#!/bin/sh +GIT=$HOME/src/lilypond +DEST=$HOME/lilypond/trusted-scripts +cp $GIT/website.make $DEST/website.make +cp $GIT/Documentation/lilypond-texi2html.init $DEST/lilypond-texi2html.init +cp $GIT/scripts/build/extract_texi_filenames.py $DEST/extract_texi_filenames.py +cp $GIT/scripts/build/create-version-itexi.py $DEST/create-version-itexi.py +@end verbatim + +Build the website: + +@verbatim +### make-website.sh +#!/bin/sh +DEST=$HOME/public_html/ +cd $HOME/src/build-website +cp $HOME/lilypond/trusted-scripts/website.make . + +make -f website.make WEBSITE_ONLY_BUILD=1 website +rsync -ra $HOME/src/build-website/out-website/website/ $DEST/website/ +cp $HOME/src/build-website/out-website/pictures $DEST +@end verbatim + +Cronjob to automate the trusted portions: + +@verbatim +# website-rebuild.cron +11 * * * * $HOME/lilypond/trusted-scripts/update-git.sh >/dev/null 2>&1 +22 * * * * $HOME/lilypond/trusted-scripts/make-website.sh >/dev/null 2>&1 +@end verbatim -@example -website.make -scripts/build/extract_texi_filenames.py -@end example To reduce the CPU burden on the shared host (as well as some security concerns), the @file{Documentation/pictures/} and @file{Documentation/web/ly-examples/} directories are @strong{not} compiled. If you modify any files in those directories, a user in the @code{lilypond} group must upload them to @file{~graham/media} -on the host. This is done by running (locally) @code{make doc}, -followed by @code{scripts/build/upload-web-media.sh}. +on the host. + +Upload latest pictures/ and ly-examples/ (local script): + +@verbatim +### upload-lily-web-media.sh +#!/bin/sh +BUILD_DIR=$HOME/src/build-lilypond + +PICS=$BUILD_DIR/Documentation/pictures/out-www/ +EXAMPLES=$BUILD_DIR/Documentation/web/ly-examples/out-www/ +cd $BUILD_DIR +rsync -a $PICS graham@lilypond.org:media/pictures +rsync -a $EXAMPLES graham@lilypond.org:ly-examples +@end verbatim @node Translating the website -- 2.39.5