This page describes how to move a component from the commons sandbox to the commons proper. This page assumes you're already an Apache committer with karma for both commons and commons-sandbox. If you don't have karma, ask for it or get someone to help you.
- Start vote on dev mailing list, stating reason for promotion of the component.
- After vote passes, send announcement with time of move and remind everyone to have any files in the component checked in by that time.
- Actual CVS move:
- Log in to your Apache cvs account
- Checkout commons and commons-sandbox, and:
$cd commons-sandbox/foo $cvs import commons/foo commons_sandbox commons_promotion
[the latter two arguments are required by CVS but arbitrary – read help on cvs import for more details] Also, it will ask you for a commit message. I couldn't remember the vi commands to save (:w) or quit (:q): http://www.vmunix.com/~gabor/vi.html#Partb
$cd .. $cvs remove -fR foo $cd .. $cvs commit
That's it for the actual CVS move. Verify the move succeeded by doing a clean checkout of both commons and commons-sandbox. Verify that ViewVC has picked up the changes correctly.
If you decide to move the CVS directory itself by modifying CVSROOT, make sure you create a backup of the commons module before copying, in case something goes wrong.
- Make sure your component still builds OK by building it in its new home.
- Update the web site for your component. Start with maven clean if your site is mavenized. Your site should now be at commons.apache.org/foo rather than commons.apache.org/sandbox/foo The easiest way to update a mavenized site once you've built and tested it locally is to run
$maven -Dmaven.username=${apache.username} site:sshdeploy
- Update the commons web site to reflect your component's move. You will need to update the menus under commons/commons-build/menus (components-items.ent and sandbox-items.ent), as well as the more descriptive listings under commons/commons-build/parts (components-table.ent and sandbox-table.ent).
- Send an announcement to dev and user mailing lists announcing the move.
- Gather a list of committers for the component, ask pmc@commons.apache.org to give them commit access to component in commons-proper.
- Start planning a release
(Appendix)
- Check-out jakarta-site2 and edit jakarta-site2/xdocs/index.xml and news.xml. Put a news of "Commons-XX graduated from Sandbox to Commons-Proper"