All of the following works from the GitHub Web UI.
To configure a new branch for building, there is:
- no need to clone this repository locally (though you can if you want to)
- no need to run a script
- From this repository, open
config.xml
for editing.- To change document builds, modify/add/remove
<doc/>
tags.<doc/>
tags have the following attributes:cat="..."
, a category ID (usually for the product), categories are defined in the<cats/>
section of the documentdoc="..."
, the name of the DC file but with theDC-
suffix removedbranches="..."
, a space-separated list of branches for which the DC file in question will be published here Finally, a<doc/>
tag includes the human-readable name of the document as its element text.
- Preamble text changes need to happen within in the
<meta/>
element. - You can define short redirect URLs using
<redirect/>
elements.
- To change document builds, modify/add/remove
- Commit & push your changes.
After the changes have been pushed, the Travis CI job for this repository automatically updates the navigation page.
That means, it updates the index.html
file.
To initially enable draft builds of documentation with Travis CI within a documentation repository, see the instructions at https://github.com/openSUSE/doc-ci#travis-draft-builds.
The following bottlenecks exist:
-
Travis CI builds and validates our documentation in a virtual machine. Sometimes, it takes Travis CI significant time to create a VM. In most cases, Travis CI creates a VM within a minute. In more extreme cases, it can take 10 minutes for Travis CI to create a VM.
Travis CI can also take significant time to validate and build documents. This is largely dependent on the size of the documents in the documentation repository. However, it can also be influenced by general network and server load.
-
GitHub Pages serves the documents built by Travis. It employs a server cache and uses a CDN (content delivery network). It usually takes around 2-5 minutes after Travis is finished before you see the build results.
-
Your browser has a local cache. This may lead to you being shown outdated content.
Patience is a virtue. Both Travis and GitHub are free (as in money) Web services providing significant computing resources to a global audience. In exchange for that, they are not always as quick as you might expect from an internal-only, high-priority service.
It may take some time until the results are displayed. You can check the progress of a Travis build job directly from the documentation repository which hosts the documentation sources:
- In the GitHub Pull Request view: In the section that displays the Travis checks, click "Details". This option takes you directly to the related build job.
- In the GitHub Commit list: Click the little green/orange/red icon next to your commit's name and click "Details". This option takes you directly to the related build job.
- Log in to Travis CI at https://travis-ci.org/. From there, select the project and build job you are interested in.
Read the Travis CI logs carefully. Some smaller issues may be reported there even though the build as a whole succeeded. Within the Travis log, there may be a few items you could be especially interested in:
- The line "Check whether repo/branch are configured for builds".
To display more details, unfold the section.
If the branch is not configured for builds but should be, this may be because of either:
- the configuration is wrong: adjust
config.xml
, then restart the Travis CI build (see below) - the build you are looking at ran before the last configuration update: restart the Travis CI build (see below)
- the configuration is wrong: adjust
Travis allows restarting jobs manually. This is helpful in the following cases:
-
If https://susedoc.github.io/ displays a link for a newly configured document/branch but clicking it still displays a
404 error
. In this case, there often has not have been a new commit since you updatedconfig.xml
. Therefore, Travis did not start a new build with the updated configuration file. -
If a Travis CI build failed because of a timeout or other technical issue.
To manually trigger a rebuild:
- Go to a job log page as described in Checking the Status of Travis CI above.
- Make sure you are logged in to Travis CI. If not, log in with your GitHub credentials using the Sign In with GitHub button at the top of the page
- Click Restart Build.
There is no way to directly check the deployment status of GitHub Pages.
Your browser has a local cache. This may lead to you being shown outdated content. To exclude issues related to browser caching from interfering with what you are seeing:
- Open a new Private mode or Incognito mode window of your browser.
- Check the Web site in this window.
- Sometimes, GitHub itself runs into glitches. To see whether GitHub has any outages currently, check https://status.github.com/.
config.xml
- Configuration file that defines
- Which documents Travis CI will build from which source repo and branch
- Links to all output documents on
https://susedoc.github.io/index.html
- HTML-based preamble text for the index page
- Configuration file that defines
index.html
- Output HTML navigation page as displayed athttps://susedoc.github.io/index.html
-- do not edit manuallyREADME.md
- This README file
.travis.yml
- Main Travis CI configuration filefavicon.ico
- An image for the tab strip in your browsergoogle26b19e50039fbeba.html
- Google verification filerobots.txt
- disallows crawling by search engines to avoid our beta documentation from creeping into people's search resultsstylesheet.css
- Formatting for the navigation page_stuff/ssh_key.enc
- Encrypted SSH key that allows Travis CI to push back to this repository_stuff/travis.sh
- Script that will be run by Travis CI in our Docker container_stuff/update-index.sh
- Script that actually updates theindex.html
page, can also be run manually on a local machine if need be_stuff/update-index.xsl
- XSL stylesheet that transforms the configuration file into an HTML page_stuff/config.dtd
- DTD for config.xml