Skip to content

The bookbinder repository for open source Cloud Foundry documentation

License

Notifications You must be signed in to change notification settings

heyjcollins/docs-book-cloudfoundry

 
 

Repository files navigation

Cloud Foundry Documentation

This project publishes the Cloud Foundry documentation as a web application.

In this topic:

What's in this Repo

This repo uses the Bookbinder gem to generate the documentation as a web application.

The config.yml file contains the list of topic repositories.

The master_middleman folder contains the layouts, styles, and subnav used to create the web pages.

This repository does not contain the documentation content. Documentation content is contained in the topic repositories listed in the config.yml.

Topic Repositories

The following list describes the topic repositories that make up the Cloud Foundry documentation set

Contributing Pull Requests

To submit a pull request to the documentation, follow this process:

  1. Make sure you have a signed CLA. Even if you aren't contributing running code, we still need a Contributor License Agreement.

  2. Fork the content repository you want to make a contribution to. See the following examples:

  1. Clone your fork of the content repository. Make sure to clone your fork of the topic repository to a directory that is a sibling to this book repository. So, for example, if you are contributing content to the Buildpack documentation, your folder structure would look like this:
    |
    +-- docs-book-cloudfoundry
    |
    +-- docs-buildpacks
    |
  
  1. Make your changes.

  2. Run bookbinder on your local changes:

    $ cd docs-book-cloudfoundry
    $ bundle install
    $ bundle exec bookbinder watch
  

Bookbinder attempts to assemble the doc set from your local copies. It skips any topic repositories that you do not have checked out. For more information on Bookbinder, see the Bookbinder README.

  1. Point your browser at localhost:4567 to preview your changes. On save, your browser will reload with any additional changes you make.

  2. Commit your changes, rebase from upstream, and push to your fork.

  3. Submit a pull request (PR) from your fork to the original repositories.

The CF Docs team will review and merge the PR. They may contact you with questions or edit the PR for formatting and style. Note: After your pull request is merged, your changes appear on docs.cloudfoundry.org the next time the cf-docs team pushes updates to the production docs. Updates go live at least once a week.

Determine Content Repos and Branches of a Book

The config.yml defines the content repos for each book. The config.yml file of each book contains the list of content repos and branches that appear in the doc set. In the config.yml file, each content repo is specified in the repository subsection. This subsection includes an optional ref key-value pair which defines the branch of the content repo the book uses.

Make sure that you are adding your content to the correct branches of the content repos.

To determine which branch of a content repo a book version uses:

  1. Confirm that you are on the correct book branch. For example, the currently published doc might be on the master branch or on the branch corresponding to its version number.

  2. Open the config.yml file.

  3. Search for the name of the content repo, for example, docs-cloudfoundry-concepts.

  4. Review the repository subsection for the content repo. If there is no ref: tag, then the repo uses the master branch. If there is a ref key-value pair, it specifies the branch name of the content repo. For example,

- repository:
  name: cloudfoundry/docs-cloudfoundry-concepts
  ref: '225'

ref: '225' refers to the 225 branch of the docs-cloudfoundry-concepts repo. Cloud Foundry 225 is associated with v255 of cf-release. 1.5, 2.2 and 4.5 map to cf-deployment releases.

About

The bookbinder repository for open source Cloud Foundry documentation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 61.6%
  • JavaScript 21.6%
  • Ruby 10.7%
  • CSS 6.0%
  • Shell 0.1%