README.md

AsciiBinder-Based Fedora Docs Publishing Repo

This is the build repository for the Fedora Documentation Website

Please report Issues and submit Pull Requests for Publishing Fixes here. Content issues be reported against the source repositories:

Testing your changes locally

To test your changes, first install asciibinder

$ gem install ascii_binder

To build your changes, from the root directory:

$ asciibinder package
$ ./builder.sh
$ firefox _package/main/index.html

How to Publish

Publishing uses two repos:

Pre-requisities

  1. You need git and asciibinder.

    $ gem install ascii_binder $ sudo dnf install git

  2. You need both repositories

    $ git clone ssh://git@pagure.io/fedora-docs/docs-fp-o.git $ git clone ssh://git@pagure.io/fedora-docs/fedora-docs-web.git

Publishing

  1. Go to the docs-fp-o repository and ensure you are on master and that it is up-to-date

    $ cd <path to docs-fp-o> $ git checkout master $ git pull

  2. Prepare the repo to be built by loading in all documentation sources.

    $ ./builder.sh

    This will generate a whole lot of output.

  3. Build the site

    $ asciibinder package

    This will also generate a lot of output.

  4. Stage the site

    $ cp -r _package/main/* <path to fedora-docs-web> $ cd <path to fedora-docs-web> $ git checkout stg $ git add . $ git commit -m "Updating site" $ git push

  5. Review the staged site at docs.stg.fedoraproject.org and see if it looks good. The site is updated approximately every 5 minutes, so give it time.

  6. If you're happy, push the changes to production.

    $ git checkout prod $ git merge stg $ git push

  7. Verify your changes have gone live at docs.fedoraproject.org and see if they look good. The production site is refreshed once per hour so this may take some time.

Project Plan

Add new features

  • remove builder.sh as new functionality arrives in asciibinder
  • Translations
  • Search
  • CI/CD for automatic publishing and rebuild
  • CI/CD for branch and topic publishing and rebuild
  • ???