As of the Newton release, a new method of publishing deployment guides has been implemented. This allows each deployment projects to create their own deployment guide, based on a standard template, in their own repository. These guides are then centrally published to Deployment Guides.
This set up is designed for deployment projects to make their installation information public. This does not include further content for end users. For example, configuration content, troubleshooting, or administration procedures.
If you would like to refer users to more content, use cross reference links to your developer documentation within the guide.
# pip install cookiecutter
Run the Install Guide cookiecutter to create a skeleton for your project:
The Install Guide cookiecutter is also used for the deployment guides. However, the rest of these instructions are specific to the deployment guide creation.
$ cookiecutter https://opendev.org/openstack/installguide-cookiecutter.git --checkout HEAD^1
You will be prompted to answer questions to complete the installation. Content is then added to the
deploy-guidedirectory in the top-level of the project repository.
tox.inienvironment for the
deploy-guidein your project repository, using this content:
[testenv:deploy-guide] whitelist_externals = rm commands = rm -rf deploy-guide/build sphinx-build -a -E -W -d deploy-guide/build/doctrees -b html deploy-guide/source deploy-guide/build/html
Add your deployment guide content, and test the build locally with
$ tox -e deploy-guide
The local build is in
Add the Python package
test-requirements.txtfile. Copy the exact requirement line from the global file:
openstackdocstheme>=1.5.0 # Apache-2.0
Commit the changes to your project repository for review.
After these changes merge, you can set up the jobs for building in the
Clone the project-config repo:
$ git clone https://opendev.org/openstack/project-config
deploy-guide-jobswithin the entry for your project:
- project: name: <project-name> jobs: ... - deploy-guide-jobs: service: <service-name>
service-nameare the project name, and the specific service name. One example is orchestration for heat.
This defines the jobs using the JJB
zuul/layout.yaml, locate the entry for your project and add the
- name: openstack/<project-name> template: - name: deploy-guide-jobs
This schedules the Deploy Guide jobs.
Commit the changes to the infra repository for review.
To update the main index pages with a link to your deployment guide, see Template generator details.