The site is distributed across two systems. The first is a Subversion based system that is used for the "top level" site. The second are wiki pages that are linked from that top level site.
Top Level Site
The site is kept under Subversion control. Committing the files causes the website to be updated.
1. Checkout site files
The first time you work with the site you will need to check it out from Subversion. The
knox-site directory can be any directory you prefer. You can skip the "Update local site files" step the first time you checkout the files.
svn checkout https://svn.apache.org/repos/asf/knox knox-site cd knox-site
2. Update site files
If you are reusing an existing site source directory you will need to update the files to ensure that you have the latest from the remote Subversion repository.
cd knox-site svn update
3. Modify site files
This could include several different types of files. Make sure you use the appropriate Subversion commands when adding or removing files.
- The directory
trunk/src/site/markdowncontains Markdown files for the site.
- The directory
trunk/src/site/resourcescontains the static resources (e.g. images, etc) for the site.
- The directory
trunk/bookscontains the source for various books.
4. Optionally generate static site files
Once you have finished making changes the files must be committed in order to publish them to the Apache site. These resulting static files will be generated into
site. You can open the file site/index.html in your browser to review your changes before publishing.
The static site files only need to be regenerated if you want the published site to be updated. If you are updating the content of a book for an upcoming release you might not want to do that. In this case you can just skip to "Commit site files" to commit those changes without publishing them.
If you are only modifying the books or the top level website you can use on of these commands respectivly.
ant -f trunk/build.xml books ant -f trunk/build.xml site
5. Review generated static site and book
If you generated the static site and book files above you can review them in the default browser using the two convenience ant targets shows below.
6. Create a patch
If you do not have commit privileges so the site repository you will need to create a patch an upload that to a Jira. From the root of the site repository the patch can be created with the following command. This is the directory that contains the sub-directories: branches, site, tags, trunk. First revert any changes to the site directory as these will be regenerated by the committer. Including these in the patch will make the patch review much more difficult.
svn revert --recursive site svn diff > KNOX-nnn.patch
7. Review patch
If you are committing a change on a contributors behalf you will need to download the patch from the Jira and apply it using the following command. This is the directory that contains the sub-directories: branches, site, tags, trunk.
patch -p0 -i KNOX-nnn.patch
8. Commit site changes
The committing of the files causes the site to be published. In particular the generated static files in
site are published to the Apache website. The following command should be run in the root of the site directory structure. This is the directory that contains the sub-directories: branches, site, tags, trunk.
svn commit -m "Update of site."
9. Validate site
The site typically takes less than 5 minutes to update. You should confirm however that your changes have properly been published to the public site.
Wiki pages for the site should be created in this wiki space.
IMPORTANT: These wiki pages must not be linked to directly. This can cause performance problems and is strongly discouraged in the Apache documentation. Links should instead be made to static HTML copies that are automatically created each time a wiki is updated. This page for example is linked from the top level site using this URL https://cwiki.apache.org/KNOX/site-maintenance.html.
Apache Knox Gateway, Apache, the Apache feather logo and the Apache Knox Gateway project logos are trademarks of The Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.
Apache Knox uses the standard Apache license.