EGI IGTF Release Process

From EGIWiki
Revision as of 14:22, 2 June 2010 by Davidg (talk | contribs) (Procedure)
Jump to: navigation, search

This page is in draft

About this distribution

This page describe the procedure for the announcement and propagation of a new release of the EGI Trust Anchor distribution. The EGI Policy on Approved Certification Authorities describes the set of trust anchors accepted by EGI and put forward for consideration by the NGIs to install as the 'agreed set' of Identity Management trust anchors. For the time being, only PKI trust achors ('Certification Authorities') are included in this release.

The announcement and distribution of trust anchors within EGI and the NGIs should be done in a well defined order to ensure consistent deployment and to ensure that the monitoring of the NGIs and sites matches the currently recommended version of the trust anchors.

For historical reasons, the name of the meta-package that enshrines the EGI policy on approved CAs is called 'lcg-CA'. This will change in a subsequent release, but meanwhile no meaning should be inferred from the meta-package name.

Teams involved

  • IGTF/EUGridPMA Liaison: David Groep
  • Central monitoring config centre: CERN/James Casey
  • Distribution Repository: GRNET/?
  • Configuration, integration and staged roll-out coordination: LIP/Mario David
  • Regional follow-up: NGI contacts
  • Security oversight and determination of grace period: EGI CSIRT/Mingchao Ma and Sven Gabriel

Procedure

  1. New CA release is announced by David Groep via the EUGridPMA-Announce list to
    • the EGI CSIRT via csirt@mailman.egi.eu
    • the EGI MW unit via david@lip.pt, jorge@lip.pt
    • the monitoring teams via James.Casey@cern.ch, project-egee-roc-managers@cern.ch
    • Mail paste list: csirt@mailman.egi.eu, david@lip.pt, jorge@lip.pt, James.Casey@cern.ch, project-egee-roc-managers@cern.ch, mingchao.ma@stfc.ac.uk
    Either the EGI CSIRT, the EGI Operational Security Coordinators, or the MW unit can declare this update as urgent.
  2. David Groep (under EGI contract O-E-15/SA1) will also build the entire trust anchor package, currently called 'lcg-CA', and make that available on a special site only intended for INTERNAL use by the deployment process. This "special" distribution would contain:
    • the IGTF "classic", "mics", and "slcs" CAs (following the Policy on Accepted CAs)
    • the "lcg-CA" meta package
    • any other EGI specific CAs or exception as decided by EGI
    This distribution will be unit tested before being released. These RPMs would be made available on a pretty obscure web site (not on production sites at that step). The MW Unit should download their local copy from this location. To download, you may need to instruct wget to ignore the robots.txt file:
     wget -e robots=off -r http://obscure-site.example.org/cadist/lcgpreview-X.YY-R/RPMS.lcg/
    or even
     wget -nd -r -np -i index.html -F --base=http://www.cern.ch/groep/cadist/lcgpreview-X.YY-R/RPMS.lcg/ http://www.cern.ch/groep/cadist/lcgpreview-X.YY-R/RPMS.lcg/
  3. David will create a GGUS ticket, with with a standard subject: "CA update, version X.Y.Z-R" And with a comment inside saying: "please, assign this ticket to the EGI-MW team". The integration team will also be involved in the ticket to start preparing the repository ("Involve others:" in GGUS), as both changes are independent. The ticket will contain
    To ensure a smooth, parallel update of the repository and the monitoring/Nagios tests, the non-urgent updates should be be started prior to Wednesdays at mid-day. The GGUS ticket that triggers the updates (which can be sent anytime), should systematically include a reminder not to start after mid-week, and preferably on a Monday.
  4. The EGI MW unit will put the release in staged roll-out for testing. This procedure should not take more than one day.
    • The sites that participate in the staged roll-out are: LIP
  5. If staged roll-out is successful:
    • the GGUS ticket is assigned to the Monitoring team, with a CC to the Repository, since the next two steps should be done in rapid succession. The monitoring team should act first (due to the structure of the CAdist-probe logic:
  6. The Monitoring team copies the old-style YUM headers/header.info file from the secret location to
  7. The Repository team copies the RPMs form the secret place to the repository and either
    • copies all of the secret directory to the release location. This structure supports new-style Yum3 and old-style Yum2 downloads; or
    • copies the RPMs into the repository and re-creates the headers locally
    • updates the CA related web page at
       http://grid-deployment.web.cern.ch/grid-deployment/lcg2CAlist.html
    • sends an announcement with changelog (from the GGUS ticket) to the NGI contacts that the repository contains new content through the Operations Portal (select "To ROC Managers", "To Production Site Admin"), with a CC to the gLite EMT. Template emails including email subjects can be found here. The change log to be included in the mail is part of the GGUS ticket, and can also be found at http://www.cern.ch/groep/cadist/lcgpreview-X.Y-Z/ in the file lcg-ca-X.Y-Z.txt.
    • assigns the GGUS ticket to the EGI-CSIRT
  8. The ticket opened by David Groep at step 3 is closed by EGI-CSIRT Contact, only after verifying that the following three links of the CA related web page
    of step 7 are updated containing reference to the new CA version:
    and that the relevant broadcast of step 8 is achieved by looking at https://cic.gridops.org/index.php?section=vo&page=broadcastretrieval (select "Classic CIC Broadcast", limit the dates to the last few days, and fill "Criterion 3" with "CA"). GGUS ticket subject should be "CA update, version X.Y.Z-R".

Notes on the CAdist probe

  • the list of required packages is based on parsing the old-style Yum header.info file. Once yum-arch has been completely replaced, this file should be created by hand and contain at least this one line:
     0:ca_policy_igtf-classic-([\d.]+)-.*
    where [\d.]+ contains a version number like "1.35"
  • the release date of the EGI distribution is taked from the Last-Modified header sent by the web server hosting the header.info file
  • The latest IGTF version and release date are taken from the CHANGES file at http://dist.eugridpma.info/distribution/igtf/current/CHANGES, which the utility expects to be in a specific format (see sources)
  • the grace period is always 7 days -- there is no means to enforce critical updates from the 'outside' of a site