The Apache Software Foundation
Apache Incubator

Facilities for Incubator management

Contents

Overview

Describes the various facilities that assist with Incubator management, explains how are they generated, and emphasises the need to keep the project summary metadata up-to-date.

This assists with management of the Incubator project as a whole, and is also useful for each project to manage their own progress through incubation.

Metadata

First the metadata. Each project needs to maintain their entry in the content/podlings.xml file in SVN (see notes). The following facilities rely on that being up-to-date. Please be a self-sufficient project from the very beginning. Do not wait for your Mentors - it is up to you.

Add the entry for your project as soon as possible after the Acceptance phase is complete. Keep it up-to-date throughout your incubation (e.g. mentor changes) and during the graduation phases.

Remember to publish the generated results

When changes are committed to the podlings.xml summary file, then the CMS is triggered and generates the following facilities. Please follow through to publish the changes. See notes.

Overview list of current podlings

The "Currently in incubation" table. Shows Description, Champion, Mentors, and Start date.

Note that each project can be directly referenced, e.g. http://incubator.apache.org/projects/#allura

Generated by CMS from podlings.xml using content/stylesheets/project-index.xsl file. See notes in that stylesheet and at build.xml file.

Also the concise table on the Incubator home page.

Monthly Reporting Schedule

http://incubator.apache.org/report-groups.txt

Generated by CMS from podlings.xml using report-groups.xsl file. See notes in that stylesheet and at build.xml file.

Reporting next month

http://incubator.apache.org/report-next-month.html

Generated by CMS from podlings.xml using report-next-month.xsl file. See notes in that stylesheet and at build.xml file.

Monthly Report preparation

The input to the IPMC report to the Board. See Overview and table of reports.

The Wiki report templates are generated manually around the changeover to each new month.

Generated manually from clutch.pkl (hence dependent on podlings.xml) using clutch2report.py file. See notes.

Shepherds

Each month a set of shepherds are assigned to cast fresh eyes over the state of each podling.

Anyone can be a shepherd. Please add and maintain your entry in the content/shepherds.json file in SVN.

The script assign_shepherds.py uses that data around the beginning of each month to generate the relevant sections of the monthly report wiki page.

Status of the Clutch

The Clutch table shows the status of various aspects of incubation for each current project. It also explains each step and links to some relevant documentation.

Note that each project row can be directly referenced, e.g. http://incubator.apache.org/clutch.html/#allura

Clutch uses podlings.xml and each project status page and other resources. Run this manually from the top of SVN. See operational notes and other notes in clutch.py

These are some of the resources that are consulted:

  • The podling summary metadata.
  • Each podling status page.
  • The listing of all ASF committers-by-project. (FIXME: Note that some recent projects are completely missing from that page, e.g. Allura, Helix, etc.)
  • The listing of all project mail lists archives. If your podling is missing, then it might be because the first posts are not yet moderated through.
  • The listing of all Incubator SVN.
  • The listing of all Incubator release distribution areas at a.o/dist/incubator/
  • List of Incubator projects that have made a release. Generated by cron on people.a.o as ~crossley twice per day.
  • List of Incubator projects that have made a release, but missing the required "incubator" in the filename. Generated by cron on people.a.o as ~crossley twice per day.
  • List of Incubator projects that have a PGP KEYS file. Generated by cron on people.a.o as ~crossley twice per day.

Reporting reminder emails

At the beginning of each month, reminder emails are automatically sent to the dev mail list for each project that is due to report. Note that these are just reminders, as each project already knows when they are reporting.

Ensure that your podling summary metadata is up-to-date. If you have finished the initial "every month for three months" phase then edit the "reporting" element to go on quarterly rotation, otherwise you will keep getting reminders.

There are three groups:
group-1=Jan,Apr,Jul,Oct group-2=Feb,May,Aug,Nov group-3=Mar,Jun,Sep,Dec

The reminder robot uses the lists of report_due_*.txt files, being the dev mail list addresses of the set of projects that are due to report. Gathered, validated, and output by Clutch. See data files and notes.

See the "board_reminders" code in infrastructure SVN.

Note: Eventually it would be good to extract the handling of these lists away from Clutch.

Voting Status

Voting Status

Scans the general@ mail list to show current open [VOTE] threads. Please finalise a thread, then pre-pend [RESULT] to the "Subject" header.

If the table does not then change your entry to a Resolved state on its next run, then you might have also changed the Subject header. That can be remedied by a new [RESULT] reply on the original voting thread, simply providing the Message-ID of the other result message or a link to it.

Uses the voter/*.py scripts in Incubator SVN. Triggered by cron on people.a.o

Incubator podlings by age

Incubator podlings by age

Uses podlings.xml file. See whimsy code in infrastructure SVN.

Incubator history

http://incubator.apache.org/history/

Generated by CMS from podlings.xml using current.xsl file and entry.xsl file. See notes in that stylesheet and at build.xml file. This generates two files in the "history" directory (current.txt and entry.txt) which are then utilised by the timeplot.

Others yet to be documented

* List of Mentors:
The Overview list shows the Mentors for each podling. See #current-podlings above.
Also there is a list of the Mentors and their podlings:
http://incubator.apache.org/clutch.html#mentors
gathered from podlings.xml

* Ant target "ppmc-aliases".

* The "tools" directory in SVN.