Workflow for the Publicity/Press announcement
This page describe the current workflow and best practices for the creation and release of announcements.
For stable/point releases, there is a new workflow: go to Teams/Publicity/ReleasePointAnnouncements and follow the instructions there. We keep here the old procedure for announcements not related to stable or point releases.
1b. For announcements that need to be embargoed for some reason. For example, they contain information that need to be acked for a third party external to Debian: obituaries, sensitive topics, etc. A DD-only accessible repository hosted in master is used. DDs can clone it with git clone master.debian.org:/home/debian/git/embargoed.git
2. add your draft to the repository (all DDs have rw access to it) in en/$year/ with this namescheme: YYYYMMDD-$title.wml (where YYYY-MM-DD is the expected release date, if you've not decided it yet, just add the file under en/drafts/ with a simple title as name).
3. at least 2 days before the expected release date, send a mail to email@example.com (adding in CC firstname.lastname@example.org and email@example.com) asking for reviews and translations
4. Press and/or webmasters only! on $expected-release-date publish the announcement in the website: you just need to add it to the webwml git repository at webwml/english/News/$year with the namescheme YYYYMMDD.wml). Take care also of all the available translations (usually are just french, spanish and german) commiting also them on the appropriate dirs. Here is a hacky shell loop for moving the files. You will need to adjust the announcement name and also the path to webwml on your system.
#FIXME: read parameters #FIXME: create missing Makefiles ann=2015/20150606.wml ; year=2015 ; date=20150606 ; webwml=/home/user/path/to/webwml ; for code in $(ls */$ann | cut -d/ -f 2) ; do lang=$(grep -l LANG=$code $webwml/*/.wmlrc | sed 's/.*webwml.//;s_/.*__') ; mkdir -p $webwml/$lang/News/$year/ ; mv $code/$ann $webwml/$lang/News/$year/$date.wml ; done ; echo These announcements remain: $(ls */$ann)
You need to commit the English version of the announcement, then update the translation-check headers of translations and commit them, and then update the /english/homepagenews.data file to add the YYYYMMDD of the announcement on top, and remove an old news, and commit it. Please refer to https://wiki.debian.org/Teams/Publicity/VersionRelease and https://wiki.debian.org/Teams/Publicity/ReleasePointAnnouncements for detailed instructions.
5. Publish the announcement. Run a partial rebuild of the website. We'll do it in two steps:
Rebuild the News folder:
ssh -tt www-master.debian.org sudo -u debwww /srv/www.debian.org/update-part News
Now update the homepage (and RSS), and push to mirrors again:
ssh -tt www-master.debian.org sudo -u debwww NOSUBDIRS=1 /srv/www.debian.org/update-part index
6. Now you're ready for creating the mail: the script to create it is the publicity dpn repo under scripts/DPNhtml2mail.pl Please note that the script is not perfect: a check and a couple of adjustments by hand are usually required (and a patch to improve it, as well!)
./scripts/DPNhtml2mail.pl -t news -i $year/$date
7. yay! you can finally send the mail to firstname.lastname@example.org or email@example.com plus other relevant recipients/lists, if needed (e.g. debian-lts-announce or debconf list). For some lists (e.g. debian-announce@ only the publicity delegates have permission). As a reminder, -news should be the default place to send things. -announce is reserved for special announcements, such as new point releases etc.
8. Follow the instructions in https://micronews.debian.org/pages/contribute.html to send a microblogging that will be mirrored in identi.ca/debian and other social networks.
9. Remove the announcement from the publicity announcements git repository once it has been published.
10. Finally, you might want to update the debian-timeline if this event is noteworthy.