At some point a project will vote to join the Attic. The following defines a process to move that project into the Attic and gently close it down.

  1. A Project PMC decides to move to the Attic.
    • Conduct a discussion on whether to dissolve the PMC and move the project to the Attic on the public dev list. Do not conduct it on the private PMC list.
    • Consider an appeal to the user list for interested users to provide their interest in helping out more.
    • Conduct a PMC vote on the public dev list.
    • If the PMC votes to dissolve the PMC and move the project to the Attic, inform the board of the successful vote (linking or forwarding the 'successful' vote) and add a resolution to dissolve the PMC to the next board meeting agenda.
    • If the PMC can't get enough people to vote to dissolve the PMC (and there are not three -1 votes), then that is grounds for moving the project to the Attic. They should inform the board as above, noting that the vote failed to get enough votes.
  2. If the board approve the resolution, open a JIRA item - 'Move ${project} to the Attic'.
    Copy/paste the following items to the details (see "How to") below for a description of each step):
    1. Confirm Board Resolution (if TLP)
    2. Delete from committee-info.txt (if TLP)
    3. Remove VP entry on http://www.apache.org/foundation/ (if TLP)
    4. Inform users of the move to the Attic
    5. Create project page on Attic site: http://attic.apache.org/projects/${project}.html
    6. Obtain source control karma and point source control mails to general at attic
      • i. Update the project DOAP file (if any): https://projects.apache.org/project.html?${project}
      • ii. Make source control read-only
    7. Move committee's PMC data file to retired (if TLP)
    8. Remove from http://www.apache.org/#projects-list navigation (if TLP)
    9. Announce on announce at apache.org
    see http://attic.apache.org/process.html#howto for detailed instructions
  3. Open an Infrastructure JIRA issue identifying the resources that need turning off/making read only. Typically:
    • Remove files from www.apache.org/dist
    • Closing down of dev@, commits@ and private@ mailing lists
    • Close down the user mailing list (unless still active - in which case propose a moderator to Infra)
    • Make JIRA|Bugzilla read-only
    • Make the wiki (Confluence|Moinmoin) read-only
    • Delete unix/ldap group
    • Turn off automated builds

How to: General pointers

How to: 1. Confirm Board Resolution (if TLP)

Check previous Board minutes (in SVN or to committers@) to confirm project was retired.

How to: 2. Delete from committee-info.txt (if TLP)

How to: 3. Remove VP entry on http://www.apache.org/foundation/

Access the CMS here and update the text.

Check if the outgoing PMC chair is not chair of any other PMCs, then ask infra to adjust the 'pmc-chairs' LDAP group accordingly.

How to: 4. Inform users of the move to the Attic

Let the users know that the project is moving into the Attic. Use the following template:

A heads up for the ${project} user community that the ${project} project has 
been 'moved to the Attic'. This means that the ${project} developers (more 
formally its Project Management Committee) have voted to retire ${project} 
and move the responsibility for its oversight over to the Attic project.

Loosely speaking this means that the projects resources will be moved to a 
read-only state.

You can read more about the Apache Attic and the process of moving to the 
Attic at http://attic.apache.org.

You can follow this process in JIRA: 
 
  https://issues.apache.org/jira/browse/ATTIC-${#}

Thanks,

${Name} on behalf of ${project} + the Attic.
  

Remember to subscribe to the user list https://whimsy.apache.org/committers/subscribe to avoid moderation. Also bear in mind that the user mailing list may already know and you can skip this stage. Make sure you read that thread if it does exist.

How to: 5. Create project page on Attic site: http://attic.apache.org/projects/${project}.html

The Attic website is built using Anakia. Anakia is an old site technology built on top of Apache Velocity. You can get the source for the site from Subversion:

svn co https://svn.apache.org/repos/asf/attic/site

Signal that retired banners must be added to ${project}.a.o. :

  • mkdir xdocs/flagged/${project}.apache.org ;
  • touch xdocs/flagged/${project}.apache.org/${project}.apache.org

To create a project page do:

  • in xdocs/projects/ copy one of the files to the new project name (eg. devicemap.xml)
  • TBA: how to determine the file name
  • Add the new file as a link in the xdocs/stylesheets/project.xml navigation
  • Run 'ant' from the root (ie: the attic/site/ directory you checked out)
  • Review the generated files in docs/** in your browser
  • SVN commit *all* changes. Remember to add both the new xdocs/ project file and the new generated docs/ project file
  • The new pages should go live quickly

To make minor edits to existing pages:

  • edit the page(s)
  • Commit the updated pages
  • The buildbot will build the site and commit the result which will be published soon after
  • This is most suitable for minor changes when there is no need to review the output before committing. Otherwise use the process described previously.

How to: 6. Obtain source control karma and point source control mails to general at attic

follow the workflow https://cwiki.apache.org/confluence/display/INFRA/Git+workflow+for+infrastructure-puppet+repo,
sometimes it helps chatting with infra https://www.hipchat.com/gIjVtYcNy,

  • Subversion: all work for svn is done in {infra-repo}/modules/subversion_server/files/authorization/
    • Change "asf-authorization-template" so that the attic-pmc has karma instead of the defunct project.
    • Change "asf-mailer.conf" so that the attic-pmc has karma instead of the defunct project. Add project to attic regex, and if there are a project entry remove it
  • Git: check also if there are any Git repositories to update (TODO: define what to do with Git repositories)

How to: 6.ii Update the project DOAP file (if any): https://projects.apache.org/project.html?${project}

The files referenced are in https://svn.apache.org/repos/asf/comdev

Identify whether the project has a DOAP file (see the <comdev repo>/projects.apache.org/data/projects.xml file if update the rdf file with PMC to the Attic and add a category of retired:

pmc change:    <asfext:pmc rdf:resource="http://attic.apache.org" />
new category:  <category rdf:resource="http://projects.apache.org/category/retired" />

How to: 7. Move committee's PMC data file to retired (if TLP)

If committee appears in committees list, moving data to retired will remove it from the list. Notice that this task is being automated, then not necessary to track any more in the future...

Comment PMC data files index entry (see the committees.xml file and old pmc_list.xml file) and move PMC data file from committees/ directory to committees-retired/.

How to: 8. Remove from http://www.apache.org/#projects-list navigation (if TLP)

As a retired project, a link on the front page of Apache site is no longer necessary. Remove the link and regenerate the main Apache site. This is done via the trunk/templates/blocks/projects.mdtext of the www.apache.org CMS.

It's also worth checking that the VP link from http://www.apache.org/foundation/ has been removed.

How to: 9. Announce on announce@apache.org

Announce that the project is now retired. Consider the following template.

Announcing that the Apache ${project} committers have voted to retire
the project due to inactivity. ${project} was {boilerplate}.

Retiring a project is not as simple as turning everything off, as
existing users need to both know that the project is retiring and
retain access to the necessary information for their own development
efforts.

You can read more about ${project}'s retirement at:

   http://attic.apache.org/projects/${project}.html

The user mailing list remains open, while the rest of the project's
resources will continue to be available in a read-only state -
website, wikis, svn, downloads and bug tracker with no change in url.

Providing process and solutions to make it clear when an Apache
project has reached its end of life is the role of the Apache Attic,
and you can read more about that at:

   http://attic.apache.org/

Thanks,

${NAME}
on behalf of the Apache Attic and the now retired Apache ${project} project
  

It's important to include the boilerplate from the project's site so people know what we're talking about.