Doc as Code with Asciidoctor, Jekyll, and TravisCI

Goals: (Subject to change)

  • Setup TravisCI to publish doc branches from a product repo to a default build location for continuous version/building
  • Lower the barrier for documentation contributors by migrating to Asciidoc as a source format (In place of Docbook XML)
  • Use Jekyll for generating the static content + Bootstrap / Foundation or similar
  • Begin work on a clear and consistent UX theme

Examples


Markdown Demo

Based on a home hackproject, this will be replaced by Asciidoc and a custom SUSE theme.

  1. From the demo homepage, select Available Versions
  2. Select SUSE Manager Server 3.1 Stable
  3. Select WebUI Reference > Systems > All Systems
  4. Notice the Edit me button at the top of the Systems page. Click the Edit me button
  5. You will be redirected to the markdown document in the product github repository
  6. Login make your changes, and then submit a PR "this is the doc as code process"
  7. A writer reviews PR and accepts, rejects or requests changes or more info
  8. If accepted Jekyll rebuilds the site live within 2 minutes

Asciidoc Demo

A very simple starter template.

Under Development Procedure Unavailable:

  1. Select Available Versions
  2. Select SUSE Manager Server 3.1 Stable
  3. WebUI Reference > Systems > All Systems
  4. Notice the Edit me button at the top of the page. Click the Edit me button
  5. You will be redirected to the Asciidoc document in the product github repository
  6. Login, make your changes, and then submit a PR "this is the doc as code process"
  7. A writer reviews PR and accepts, rejects or requests changes or more info
  8. If accepted TravisCI rebuilds the site live within a few minutes from the Asciidoc sources

A Few Important Concepts

  • Per SUSE product gh-page branches
  • Linked to suse.com/documentation as develop/stable dependent upon decision
  • Asciidoc converts directly to Docbook xml 4.5 possibly 5
  • Writers work only in Asciidoc and convert source of truth documents to docbook for publishing various outputs on suse.com in epub, pdf, and single page html.
  • If writers work in Asciidoc alone, then we never need to convert from the opposite direction docbook -> Asciidoc.
  • This requires a one time migration for latest docs. (A rather large undertaking, perhaps we can automate some of this with conversion tools)

Looking for hackers with the skills:

jekyll bootstrap docbook javascript ruby travis

This project is part of:

Hack Week 16

Activity

  • over 4 years ago: j_renner liked this project.
  • over 4 years ago: thomas-schraitle liked this project.
  • over 4 years ago: fsundermeyer joined this project.
  • over 4 years ago: sven15 joined this project.
  • over 4 years ago: JCayouette added keyword "travis" to this project.
  • over 4 years ago: JCayouette liked this project.
  • over 4 years ago: kwk liked this project.
  • over 4 years ago: JCayouette started this project.
  • over 4 years ago: JCayouette added keyword "ruby" to this project.
  • over 4 years ago: JCayouette added keyword "jekyll" to this project.
  • over 4 years ago: JCayouette added keyword "bootstrap" to this project.
  • over 4 years ago: JCayouette added keyword "docbook" to this project.
  • over 4 years ago: JCayouette added keyword "javascript" to this project.
  • over 4 years ago: JCayouette originated this project.

  • Comments

    Be the first to comment!

    Similar Projects

    Port the Minion job queue to TypeScript by kraih

    Project Description

    As part of the [mojo....


    Dochazka by smithfarm

    Dochazka is a long-term project to replace the ...


    Adopt Typescript in D-Installer by IGonzalezSosa

    Project Description

    In January, we announ...


    Weekly balanced family menu planner (learn JS, Node.JS, React, MongoDB) by pherranz

    Project Description

    We're always struggling...


    YaST log grouping, better visualization of the log by lslezak

    Description

    TL;DR: I'd like to have som...


    Validate the embargo date OBS attribute by enavarro_suse

    Project Description

    The issue is describe...


    Improve SLE Release Management Container by suntorytimed

    Project Description

    In this project I would...


    YaST log grouping, better visualization of the log by lslezak

    Description

    TL;DR: I'd like to have som...