Jump to: navigation, search

Difference between revisions of "Galileo/Final Daze"

(9:00am EDT)
(08:30 EDT)
 
(29 intermediate revisions by 6 users not shown)
Line 1: Line 1:
Most of this content was authored by David Williams for Callisto, and it still applies today for Galileo, so...
+
Our ramp-up to our annual [[Simultaneous Release]] is similar to previous years, but there are some important differences, so read closely. Also, there are more projects releasing this year than every before, so it is all the more important to follow the schedules, and keep everyone
 +
informed of any issues.  
  
 
The following is a "blow-by-blow" schedule of the final days leading up to the Galileo simultaneous release. This is one of the responsibilities of our heterogeneous projects working together towards having a simultaneous release.
 
The following is a "blow-by-blow" schedule of the final days leading up to the Galileo simultaneous release. This is one of the responsibilities of our heterogeneous projects working together towards having a simultaneous release.
Line 10: Line 11:
 
== New for Galileo ==
 
== New for Galileo ==
  
* We can no longer 'freeze' the downloads server, so we will rely on teams putting builds in place and simply keeping them 'hidden' from their public web pages for 24 hours
+
* We can no longer 'freeze' the downloads server, so we will rely on teams putting builds in place and simply keeping them 'hidden' from their public web pages for 24 hours. That's 'hidden' and unannounced. No one should announce in mailing lists, newsgroups, etc., that "the final release is ready at <url>" until after the general announcement is made for the whole Simultaneous Release.
  
 
==From Now to 6/17==
 
==From Now to 6/17==
Line 16: Line 17:
 
===Clean up "old" builds and releases===
 
===Clean up "old" builds and releases===
  
Delete or archive "old" builds or releases and even Galileo milestone builds that are mirrored. This is important to reduce space used on the mirror servers. Not only is this a "nice" thing to always do, it is essential for this Galileo release, as it can help avoid those mirror servers from filling up once they get the final release and they themselves having problems mirroring Galileo, once it is released. And, of course, if they have problems, we all have problems! Everyone should have space at, if not already using, archive.eclipse.org, and if you are not sure how to "archive" a release there, please ask (it is easy).  
+
Delete or archive "old" builds or releases and even milestone builds that are mirrored. This is important to reduce the disk space used, not just on eclipse.org servers, but more important, the space used on the mirror servers. Not only is this a "nice" thing to always do, it is essential for the yearly Simultaneous Release, as it can help avoid those mirror servers from filling up once they get the final release and they themselves having problems mirroring Galileo, once it is released. And, of course, if they have problems, we all have problems! Everyone should have space at, if not already using, archive.eclipse.org, and if you are not sure [http://wiki.eclipse.org/IT_Infrastructure_Doc#Move_files_to_archive.eclipse.org.3F how to archive files], please ask (it is easy).  
  
We ask this clean up to be done a week ahead of the release so a) all mirrors can be sure to easily get "synced up" with the new minimal amounts, and b) allows time for some inspections and audits and projects that appear to be non-compliant will be asked to explain their use of Eclipse.org resources.  
+
We ask this clean up to be finished at least one week ahead of the release so a) all mirrors can be sure to easily get "synced up" with the new minimal amounts, and b) allows time for some inspections and audits and projects that appear to be non-compliant will be asked to explain their use of Eclipse.org resources.
 +
 
 +
== Final Build 6/17 ==
 +
 
 +
The Milestones and Release Candidate dates are defined in [[Galileo#Milestones_and_Release_Candidates]]
 +
 
 +
The "final build" means that all content must be frozen; features, plugins, versions, etc. This content might still be on a "temporary" site (e.g. .../milestones) and later (such on 6/22) moved to a "permanent" site (e.g. .../updates) but during that move, there should be no change to plugins, features, versions, or repo meta data (artifacts.xml/jar files and content.xml/jar files).
 +
 
 +
== Finish Info Center 6/15 to 6/19 ==
 +
 
 +
Provide info center jars. See bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=271238 271238].
  
 
==From Now to 6/22==
 
==From Now to 6/22==
Line 32: Line 43:
 
where to get it from (other than a mirrored location).
 
where to get it from (other than a mirrored location).
  
All times below are in Eastern Daylight Time (which is UTC-4).
+
All times below are in Eastern Daylight Time (which is UTC-4 in June, during Daylight Saving Time).
 +
 
 +
'''Note: ''' since we do not have "sign off" pages any longer, if anyone is the least bit late (or even close to being late) to meeting deadlines, please keep everyone informed via cross-project mailing list.
 +
 
 +
== Galileo site and EPP preparation 6/18 to 6/22 ==
 +
 
 +
 
 +
*[http://download.eclipse.org/releases/staging staging update site] will be created to verify all are accurate, and ready to be copied to releases area
 +
**David to send email when all aggregate builds done, and that 'staging' is ready for EPP final builds.
 +
*EPP will start building packages as soon as the Galileo staging update site is ready (releases/staging and eclipse/updates/3.5milestones)
  
 
==Monday 6/22==
 
==Monday 6/22==
  
===by 17:00 EDT, at the <i>latest</i>===
+
===from 9:00 EDT to 17:00 EDT (at the <i>latest</i>)===
  
 
*projects have prepared zips downloads and all update site files
 
*projects have prepared zips downloads and all update site files
 
:* Teams are free to push final builds in their final location at any time, hiding them from public web pages
 
:* Teams are free to push final builds in their final location at any time, hiding them from public web pages
 +
::* [[Galileo/Final Daze/Modeling Project|Modeling Project]] component leads should coordinate their publishing times using [[Galileo/Final Daze/Modeling Project|this page]] and/or channel #eclipse-modeling on [[IRC|IRC]] to avoid p2 metadata corruption.
 
:* if anyone needs to update their web-pages ahead of time, with other projects final URLs, please ask on cross-project mailing list if you do not know what it will be.  
 
:* if anyone needs to update their web-pages ahead of time, with other projects final URLs, please ask on cross-project mailing list if you do not know what it will be.  
*projects ensure update jars are in their "temporary" locations, as listed in the *.build files
+
:* Projects must ensure update sites and *.build files stay coordinated, so sites could be re-created if required.
*[http://download.eclipse.org/releases/galileo/staging Galileo staging update site] will be created to verify all are accurate, and ready to be copied to releases area
+
 
**David to send email when all aggregate builds done, and that 'staging' is ready for EPP final builds.  
+
:* Final EPP Package builds, if required. (/releases/galileo and /eclipse/updates/ will be the input for the packages);  
*EPP will start building packages as soon as the Galileo staging update site is ready (releases/staging and eclipse/updates/3.5milestones will be the input for the packages); depending on the server load the build takes about 100 minutes
+
:: depending on the server load the build takes about 180 minutes
*EPP package maintainers and planning-council mailing list will receive a mail with a link to the final EPP packages
+
:: kmoir>I don't want the final Galileo build to refer to bundles in our milestones repo.  It should point to our releases repo. This means that our bundles will be available on the Monday 22 instead of Wednesday. 
 +
 
 +
*EPP package maintainers will receive a mail with a link to the final EPP packages
 
*EPP package maintainers need to test the final packages and must send their 'go' to the [mailto:epp-dev@eclipse.org epp-dev] mailing list
 
*EPP package maintainers need to test the final packages and must send their 'go' to the [mailto:epp-dev@eclipse.org epp-dev] mailing list
 
*last opportunity for anyone to declare "emergency, stop ship" (and it had <i>really</i> better be an emergency! A simple build machine crash does not qualify ... better have backups! ... and, maybe, a lab fire might qualify if it is wide spread :)
 
*last opportunity for anyone to declare "emergency, stop ship" (and it had <i>really</i> better be an emergency! A simple build machine crash does not qualify ... better have backups! ... and, maybe, a lab fire might qualify if it is wide spread :)
Line 53: Line 76:
  
 
===9:00am EDT===
 
===9:00am EDT===
* EPP package maintainers declared their 'go' on the [mailto:epp-dev@eclipse.org epp-dev] mailing list
+
* <del>(DONE) EPP package maintainers declared their 'go' on the [mailto:epp-dev@eclipse.org epp-dev] mailing list</del>
 
*Teams are free to push final builds in at any time, hiding them from public web pages
 
*Teams are free to push final builds in at any time, hiding them from public web pages
  
 
This Includes:
 
This Includes:
  
*upload/copy/rsync zip files.
+
* Projects to upload/copy/rsync zip files. ['''Tip:''' Do not use -t in your rsync commands, but let the file time take on the current time the copy was done ... the reason is that the mirroring system uses timestamps to infer what's been mirrored and what has not, and a file that appears "old" may end up being assumed mirrored, when it has not been mirrored yet ... which will result in users getting lots of 404s from mirror site URLs].  
*update to project's 'released' update sites.
+
* Projects to update to project's 'released' update sites.
*Galileo "staging" copied to "released"
+
 
** update (or verify) /releases/galileo has correct mirroring URL
+
* <del>(DONE) Galileo "staging" copied to "released"</del> Reminder: until this day, until this push, /releases/galileo will have "old" content, from the last RC build.
** update (or verify) that composite repository URL points to final /eclipse/updates URL
+
** <del>(DONE) update (or verify) /releases/galileo has correct mirroring URL</del>
 +
** <del>(DONE) update (or verify) that composite repository URL points to final /eclipse/updates URL (http://download.eclipse.org/eclipse/updates/3.5/)</del>
 +
 
 
*rename EPP packages and copy to "released" '''<== this is super important, as the new [http://www.eclipse.org/downloads/ Main Downloads Page] and the [http://www.eclipse.org/downloads/packages/ Packaging Site] makes the EPP packages the default!'''
 
*rename EPP packages and copy to "released" '''<== this is super important, as the new [http://www.eclipse.org/downloads/ Main Downloads Page] and the [http://www.eclipse.org/downloads/packages/ Packaging Site] makes the EPP packages the default!'''
 
:[Nathan] Disable the Cron job from updating the [http://www.eclipse.org/downloads/packages/ Packaging Site] Till 9AM Wednesday
 
:[Nathan] Disable the Cron job from updating the [http://www.eclipse.org/downloads/packages/ Packaging Site] Till 9AM Wednesday
  
 
=== By 10:00am EDT===
 
=== By 10:00am EDT===
*Denis prepares torrent files
+
* <del>DONE Denis prepares torrent files</del>
*Nathan publishes 'Galileo is here for Friends only' page for the main downloads page; links for Friends mirrors and Bit Torrents only
+
* <del>DONE Denis sends email to eclipse-mirrors asking for manual sync </del>
*Denis Emails Friends of Eclipse with details on how to get the downloads from the friends mirror.
+
* <del>DONE Nathan publishes 'Galileo is here for Friends only' page for the main downloads page; links for Friends mirrors and Bit Torrents only</del>
 
+
* <del>DONE Denis Emails Friends of Eclipse with details on how to get the downloads from the friends mirror.</del>
  
 
===16:00===
 
===16:00===
Line 78: Line 103:
  
 
==Wednesday 6/24==
 
==Wednesday 6/24==
 +
 +
===08:30 EDT===
 +
 +
<del>DONE Denis? to update alias (or redirect?) for http://help.eclipse.org to go to http://help.eclipse.org/galileo/index.jsp
 +
instead of http://help.eclipse.org/ganymede/index.jsp. </del>
 +
 +
<del>DONE Denis? to update the ip to geolocation table</del>
 +
 +
Kim and P2 team to check P2 mirroring specifically. This should be done once there are at least ?10? mirrors reported for /releases/galileo and /eclipse/updates (the two primary repos in the Galileo composite repository). ['''Tip: ''' From your shell account, you can execute the script at /shared/common/bin/checkMirrors.sh ]
 +
 +
[[Galileo/Final Daze/Modeling Project|Modeling Project]] component leads should get ready to unhide their builds at 9am. See [[Galileo/Final Daze/Modeling Project]].
  
 
===09:00 EDT===
 
===09:00 EDT===
  
*Denis to do a mirror-site sanity check.  How many?  Are they all done?  
+
* <del>DONE. EPP: 73 total, 6 bad and SDK: 78 total, 6 bad. Denis to do a mirror-site sanity check and consult with P2 team.  How many?  Are they all done? </del>
  
 +
<del>
 
I think it might take more than 3 minutes to do a mirror sanity check :-) We'd like to check that p2 updates is working as expected with the mirrors for Galileo.  Please send a note to the cross-project list when you see that there are enough mirrors so we can also do a sanity check.
 
I think it might take more than 3 minutes to do a mirror sanity check :-) We'd like to check that p2 updates is working as expected with the mirrors for Galileo.  Please send a note to the cross-project list when you see that there are enough mirrors so we can also do a sanity check.
  
 
--kmoir
 
--kmoir
 +
</del> -- moved up to 8:30 pending confirmation
  
 +
<del>
 
Could you also add a step to update the ip to geolocation table at some point before 9AM?
 
Could you also add a step to update the ip to geolocation table at some point before 9AM?
  
 
--pascal
 
--pascal
 +
</del> -- moved up to 8:30 pending confirmation
  
 
Assuming all is well,  
 
Assuming all is well,  
 +
 +
*Denis to announce on cross-project that Projects can now make their download pages visible.
  
 
*Nathan
 
*Nathan
Line 99: Line 141:
 
#Re-enable Packaging Site Cron Job and Promote Final Release to Front Page.
 
#Re-enable Packaging Site Cron Job and Promote Final Release to Front Page.
  
===09:03===
+
===09:01 EDT===
 +
 
 +
* [http://ianskerrett.wordpress.com/2009/06/19/give-a-tweet-about-the-galileo-release/ Twittering] begins in earnest. Win a prize, or just [http://twitterfall.com/ follow along]. [http://www.timeanddate.com/worldclock/fixedtime.html?month=6&day=24&year=2009&hour=9&min=0&sec=0&p1=188 Convert this time to your locale here].
 +
 
 +
===09:03 EDT===
  
#Earth Shattering Kaboom
+
* Earth Shattering Kaboom
  
  
  
 
[[Category:Galileo]] [[Category:Coordinated]]
 
[[Category:Galileo]] [[Category:Coordinated]]

Latest revision as of 13:46, 23 June 2010

Our ramp-up to our annual Simultaneous Release is similar to previous years, but there are some important differences, so read closely. Also, there are more projects releasing this year than every before, so it is all the more important to follow the schedules, and keep everyone informed of any issues.

The following is a "blow-by-blow" schedule of the final days leading up to the Galileo simultaneous release. This is one of the responsibilities of our heterogeneous projects working together towards having a simultaneous release.

Failure to follow these procedures and schedules can have dire consequences, which we all have seen before at one time or another -- if not done in the right way, in the right order, at the right time, mirrors get busy replicating one project, but other projects have difficulty accessing eclipse.org to produce their final builds much less upload them, so a "chain reaction" begins and everyone is much delayed simply due to network and infrastructure bottlenecks -- or, I should say, from someone not following these procedures and schedules! :)

Plus, this schedule and procedure should ensure the mirror system get's fully populated before demand for downloads gets in full swing -- meaning much fewer delays, 403's, and failed downloads for end-users -- which all Eclipse users will appreciate.

New for Galileo

  • We can no longer 'freeze' the downloads server, so we will rely on teams putting builds in place and simply keeping them 'hidden' from their public web pages for 24 hours. That's 'hidden' and unannounced. No one should announce in mailing lists, newsgroups, etc., that "the final release is ready at <url>" until after the general announcement is made for the whole Simultaneous Release.

From Now to 6/17

Clean up "old" builds and releases

Delete or archive "old" builds or releases and even milestone builds that are mirrored. This is important to reduce the disk space used, not just on eclipse.org servers, but more important, the space used on the mirror servers. Not only is this a "nice" thing to always do, it is essential for the yearly Simultaneous Release, as it can help avoid those mirror servers from filling up once they get the final release and they themselves having problems mirroring Galileo, once it is released. And, of course, if they have problems, we all have problems! Everyone should have space at, if not already using, archive.eclipse.org, and if you are not sure how to archive files, please ask (it is easy).

We ask this clean up to be finished at least one week ahead of the release so a) all mirrors can be sure to easily get "synced up" with the new minimal amounts, and b) allows time for some inspections and audits and projects that appear to be non-compliant will be asked to explain their use of Eclipse.org resources.

Final Build 6/17

The Milestones and Release Candidate dates are defined in Galileo#Milestones_and_Release_Candidates

The "final build" means that all content must be frozen; features, plugins, versions, etc. This content might still be on a "temporary" site (e.g. .../milestones) and later (such on 6/22) moved to a "permanent" site (e.g. .../updates) but during that move, there should be no change to plugins, features, versions, or repo meta data (artifacts.xml/jar files and content.xml/jar files).

Finish Info Center 6/15 to 6/19

Provide info center jars. See bug 271238.

From Now to 6/22

Prepare releases offline

That is, prepare your final releases zipped files, update jars, etc., but do not put zipped up builds, update jars, etc., in their final (mirrored) release areas of eclipse.org until instructed to do so. This may require some projects to "turn off" some final step of their build process, depending on how they do it, and how and when its copied to eclipse.org. If you have a special circumstance that does not fit in the following procedure and schedule, please send a note to discuss with our Eclipse Webmaster (Denis Roy) at webmaster@eclipse.org and work out a plan to accommodate your special situation.

Note: this may mean some projects need to "adjust" their final build procedures, so they do not rely on some other projects official, final, mirrored release, but this should not be required as any "pre-req'd" projects should just be making minor changes to doc, or highly local and internal bug fixes (nothing that would be changing constants or API's or even non API signatures!). If you do need some official, final release of a pre-req project, please work with them to find out where to get it from (other than a mirrored location).

All times below are in Eastern Daylight Time (which is UTC-4 in June, during Daylight Saving Time).

Note: since we do not have "sign off" pages any longer, if anyone is the least bit late (or even close to being late) to meeting deadlines, please keep everyone informed via cross-project mailing list.

Galileo site and EPP preparation 6/18 to 6/22

  • staging update site will be created to verify all are accurate, and ready to be copied to releases area
    • David to send email when all aggregate builds done, and that 'staging' is ready for EPP final builds.
  • EPP will start building packages as soon as the Galileo staging update site is ready (releases/staging and eclipse/updates/3.5milestones)

Monday 6/22

from 9:00 EDT to 17:00 EDT (at the latest)

  • projects have prepared zips downloads and all update site files
  • Teams are free to push final builds in their final location at any time, hiding them from public web pages
  • Modeling Project component leads should coordinate their publishing times using this page and/or channel #eclipse-modeling on IRC to avoid p2 metadata corruption.
  • if anyone needs to update their web-pages ahead of time, with other projects final URLs, please ask on cross-project mailing list if you do not know what it will be.
  • Projects must ensure update sites and *.build files stay coordinated, so sites could be re-created if required.
  • Final EPP Package builds, if required. (/releases/galileo and /eclipse/updates/ will be the input for the packages);
depending on the server load the build takes about 180 minutes
kmoir>I don't want the final Galileo build to refer to bundles in our milestones repo. It should point to our releases repo. This means that our bundles will be available on the Monday 22 instead of Wednesday.
  • EPP package maintainers will receive a mail with a link to the final EPP packages
  • EPP package maintainers need to test the final packages and must send their 'go' to the epp-dev mailing list
  • last opportunity for anyone to declare "emergency, stop ship" (and it had really better be an emergency! A simple build machine crash does not qualify ... better have backups! ... and, maybe, a lab fire might qualify if it is wide spread :)

Tuesday 6/23

Freezing ray.jpg

9:00am EDT

  • (DONE) EPP package maintainers declared their 'go' on the epp-dev mailing list
  • Teams are free to push final builds in at any time, hiding them from public web pages

This Includes:

  • Projects to upload/copy/rsync zip files. [Tip: Do not use -t in your rsync commands, but let the file time take on the current time the copy was done ... the reason is that the mirroring system uses timestamps to infer what's been mirrored and what has not, and a file that appears "old" may end up being assumed mirrored, when it has not been mirrored yet ... which will result in users getting lots of 404s from mirror site URLs].
  • Projects to update to project's 'released' update sites.
  • (DONE) Galileo "staging" copied to "released" Reminder: until this day, until this push, /releases/galileo will have "old" content, from the last RC build.
[Nathan] Disable the Cron job from updating the Packaging Site Till 9AM Wednesday

By 10:00am EDT

  • DONE Denis prepares torrent files
  • DONE Denis sends email to eclipse-mirrors asking for manual sync
  • DONE Nathan publishes 'Galileo is here for Friends only' page for the main downloads page; links for Friends mirrors and Bit Torrents only
  • DONE Denis Emails Friends of Eclipse with details on how to get the downloads from the friends mirror.

16:00

  • wait overnight, see if mirrors get the files
  • projects should prepare final web pages, announcements, press releases, etc.

Wednesday 6/24

08:30 EDT

DONE Denis? to update alias (or redirect?) for http://help.eclipse.org to go to http://help.eclipse.org/galileo/index.jsp instead of http://help.eclipse.org/ganymede/index.jsp.

DONE Denis? to update the ip to geolocation table

Kim and P2 team to check P2 mirroring specifically. This should be done once there are at least ?10? mirrors reported for /releases/galileo and /eclipse/updates (the two primary repos in the Galileo composite repository). [Tip: From your shell account, you can execute the script at /shared/common/bin/checkMirrors.sh ]

Modeling Project component leads should get ready to unhide their builds at 9am. See Galileo/Final Daze/Modeling Project.

09:00 EDT

  • DONE. EPP: 73 total, 6 bad and SDK: 78 total, 6 bad. Denis to do a mirror-site sanity check and consult with P2 team. How many? Are they all done?

I think it might take more than 3 minutes to do a mirror sanity check :-) We'd like to check that p2 updates is working as expected with the mirrors for Galileo. Please send a note to the cross-project list when you see that there are enough mirrors so we can also do a sanity check.

--kmoir -- moved up to 8:30 pending confirmation

Could you also add a step to update the ip to geolocation table at some point before 9AM?

--pascal -- moved up to 8:30 pending confirmation

Assuming all is well,

  • Denis to announce on cross-project that Projects can now make their download pages visible.
  • Nathan
  1. Put web pages live, make announcements.
  2. Update Homepage / Promotion / Friends of Eclipse Images to post release.
  3. Re-enable Packaging Site Cron Job and Promote Final Release to Front Page.

09:01 EDT

09:03 EDT

  • Earth Shattering Kaboom