Fedora Documentation Publishing Platform
- Student: JonathanSteffan
- Mentor: PatrickBarnes
Currently Fedora has got a small mix of elements that we are working into a comprehensive, end-to-end documentation solution. Some elements exist, some need to be developed. All use popular open standards for XML document publishing -- a combination of Wiki, Plone, Python, Turbo
Book XML, and good old Makefiles are just a few elements in the mix.
1. As a first step, the new publishing platform could include adding a Publish as Draft functionality to the Wiki.
1. Publishing platform should be able to use the Wiki's built in tools for converting Wiki content to Doc
Book XML, take the output and put it into CVS, wrapped in a full book-building template.
1. Publishing platform needs to take (X)HTML that is output from the existing Doc
Book XML toolchain, and publish that to docs.fedoraproject.org
1. Currently this publication is a set of static HTML pages that are built with PHP includes. As an initial step, this system may be rebuilt using Python or bash, which are languages acceptable for Fedora Infrastructure.
1. One target location for publishing is a Plone content management system (CMS). If this Plone system is going to be in place in time for the development of this new publishing platform, then a new Plone module needs to be built. It should:
- Take a trigger from an earlier publication script to take incoming content, such as from email or Wiki's Publish as Draft function, to then ...
- Checkout and build HTML (and PDF) from documentation source in CVS, then ...
- Publish that content into the beginning of a Plone workflow as a
Draft, and ...
- Be able to make a CVS commit back into the source document with the comments of an editor (as commit log and within the body of the content), so that an editor can send a document back to CVS for a re-write with one step, and ...
- When the writer has made changes to the content and wants to resubmit, there is a way to trigger the submission script to put this document back into the same Plone workflow record.
- ... plus other elements that come from the workflow.
1. Full Text search engine for all content Fedora, including man pages and other documentation.
This would include all of the following concepts, and more:
I think my project proposal should be based on what infrastructure and docs teams need. I would basically do anything those teams wany with regards to developing a documentation system that is a hybrid moinmoin wiki and plone CMS.