The Apache Software Foundation
The Apache Software Foundation Incubator

Overview of the Incubator site

The Incubator website is generated by the Apache CMS, but it is still using the Anakia-based page generation mechanism that was used before, triggered by a CMS external build script.

You can edit the content in either of two ways:

  1. directly in svn (and use ant to build and check the results), or
  2. edit via the CMS browser interface, and preview the result in your browser.

In either case, you go through distinct phases of Edit or Add, Commit, Build, Preview, and Publish. Until the "Publish" phase, all changes remain in your private workspace; then when you Publish, it becomes part of the public web site.

Help Wanted!

People with commit access to the "incubator" SVN can edit the source documents in the "content" directory. That is any ASF Member and any committer on a current podling in incubation. So you can all help to keep your project's Status page up-to-date, and if you find problems with the "guidelines" docs then can immediately fix them. If unsure, then discuss changes on the general mailing list. Note that the "policy" documents need special treatment.

Anyone else can send patches to those documents to the INCUBATOR issue tracker.

Edit the content in CMS

The CMS has a useful browser-based editor, that avoids the need to move between editor and SVN. All steps in the process (Edit or Create, Commit, Build, Preview, Publish) can be done in the browser.

After entering your workspace you MUST update it, as specified below. The CMS may show you a workspace that is months out of date. If your podling already exists, you may not be able to see it. You also may not see edits done by others in the meantime. After it updates, you should see content corresponding to the current public web site.
The following are brief but complate instructions for editing pages under Incubator in CMS. For full instructions about CMS, please see CMS Reference.
  1. Before you start, make sure you have this javascript link bookmarked in your browser: ASF CMS. It will help move you to the correct location in the Content Management System for a given page.
  2. Navigate to the existing publicly viewable page you wish to edit. While viewing it, click or select the ASF CMS bookmark. The CMS will create a private workspace for you, and place you in that workspace at the necessary location to work on a copy of the target page.
    • If you are editing an Incubator Status page for your podling project, you will see the HTML raw text for that page, in an editing window. Such pages are typically located in the SVN path .../trunk/content/projects/PROJECTNAME.xml , which you can see in the upper right corner of the browser.
    • If you are attempting to edit the top-level Incubator Welcome page at http://incubator.apache.org/ you will enter a directory data structure that is more confusing, because the Incubator pages are table-generated rather than being simple HTML text. This directory is .../trunk/content/ in SVN, and has both subdirectories and content files. To add or edit the info about your podling, click on the "podlings.xml" link, which contains the XML specs for all the podlings referenced from the Incubator pages.
  3. Alternatively, if you need to add a new page, go to the top-level Incubator Welcome page at http://incubator.apache.org/ and click or select the ASF CMS bookmark. You will enter the CMS directory structure at SVN path .../trunk/content/ as described above. Now navigate to where you need to add the new page. For instance to add a new podling's Incubator Status page, click on "projects/" to enter path .../trunk/content/projects/ , where each podling has a PROJECTNAME.xml file.
  4. Now, before you try to add or edit anything, UPDATE THE WORKSPACE YOU ARE LOOKING AT by clicking the "[Update]" link in the top left corner of the CMS page. You must do this first, or you may be very surprised at the apparent content of your workspace, and you might also cause regressions in the content.
  5. Now you are ready to edit.
    • If you are looking at the file you wish to edit, you can go ahead and make changes.
    • If you are looking at a directory, and want to edit a file, navigate to that file.
    • If you need to add a file, but you're looking at a different file, move up to the directory structure by using the path links in the top right corner of the CMS page.
    • If you are looking at a directory and need to add a file, navigate to the correct location in the directory tree then
      1. In the top left corner, either "Edit this Directory" or "Add New File or Directory:" should be present.
      2. If "Edit this Directory" is present, click it, and "Add New File or Directory:" should appear.
      3. Place your cursor in the "Add New File or Directory:" field, type the relative path of the file you want to add, and press the Return key. If you are just creating a subdirectory rather than a file, put a slash ("/") at the end of the subdirectory name.
  6. You have to commit and build your changes before you can preview them in a Staging area. (Don't worry, Staging is still before Publish.) At the bottom of the screen, enter text in the Log Message field, click the checkbox for "Quick Commit", and then click "Submit". (If you don't choose "Quick Commit" it will let you do a diff and more edits before committing.)
  7. Once you commit, it sends you to a monitoring page. You can monitor the build if you wish in the "[Follow Staging Build] page. When it completes, go back to the monitoring page. If the build passed, click "[Staged]" to preview your work. Then go back again to the monitoring page.
  8. If you need to make more changes, press "[Edit]" to continue editing your workspace. Do Submit, Build, and Stage again.
  9. When the Staged work is complete and satisfactory, press "[Publish Site]" to make it public. On the "Publish Incubator Site" page, provide a log message and press "Submit". In a few seconds you can view it by clicking "[Production]" or simply browsing to the public URL and refreshing your browser cache.

Edit the content in SVN

The source to the Incubator website lives at:

Checkout the Incubator SVN site

svn co https://svn.apache.org/repos/asf/incubator/public/trunk incubator
cd incubator

Edit the source documents

The source content is in Anakia xdoc format at the "content" directory.

Add a new document

Add new documents in the content directories, then do 'svn add'.

Generating the top-level website

Please generate the website yourself and check in the changes. If you have any problems, ask for help on the Incubator's general list.

In the top-level "incubator" SVN directory, do 'ant' to render the HTML files into the

target/site
directory. You should review those changes before committing. (If you don't have ant installed, you can run build.sh or build.bat instead.) If the site built without errors, then do the usual SVN stuff: 'svn status' 'svn add' 'svn diff' 'svn commit'.

Review your changes via the "commits" mailing list. This list will also have buildbot output from running staging builds of the website. If you want to view your changes, you can go to incubator.staging.apache.org.

To update the website, visit Publish site and fill out the form. Don't forget to give the CMS build system time to build your changes! The CMS provides a page for following the build process.

Other notes

Make sure that your subversion client is properly configured.

See other notes for maintenance of apache.org project websites.

If you are still having trouble committing, then perhaps the Subversion authorization is not yet properly configured to enable your group's access.