RETIRED, CLI supporting kolla-ansible deployment project
Go to file
jacky06 a7ea023c38 Generate PDF documentation
This patch adds a new tox job/command for building the pdf
version of documentation.

tox -epdf-docs

In addition to adjusting the infra requirement for PDF build
support, the following changes are made to build a PDF doc

- Download link of config_options, sample config and policy
  files are disabled for PDF doc as relative links do not
  make sense.
- Pre-create the doc/build/pdf/_static directory as a
  workaround because sphinx_feature_classification.support_matrix extension
  is operating under the assumption that the _static directory already exist
  and trying to copy support-matrix.css into it. We need to remove
  this workaround once the problem in the support_matrix extension is fixed.
- Use the toctree_only=True workaround to avoid TOC duplicate links.

Change-Id: I8190e0a4f169e1a3268f5e724c30a1c809739dd6
2019-09-10 23:35:24 +08:00
doc Generate PDF documentation 2019-09-10 23:35:24 +08:00
kolla-cli/locale Updating the cli to work against kolla-ansible 2018-04-17 09:45:35 -07:00
kolla_cli Merge "Add unit test with host and service for reconfigure action" 2019-09-06 10:12:00 +00:00
releasenotes Add reno for release notes management 2019-08-06 15:44:49 +08:00
tools Merge "Check passwords.yml exist before init action" 2018-06-20 18:45:23 +00:00
.gitignore Add cover into zuul check 2019-07-12 09:45:09 +08:00
.gitreview OpenDev Migration Patch 2019-04-19 19:32:44 +00:00
.stestr.conf Align tests with how functional tests are handled 2018-05-16 16:13:54 -04:00
.zuul.yaml Use openstackdocstheme and add docs check into zuul 2019-08-03 12:45:59 +08:00
LICENSE Adding the Apache LICENSE file, required to be included in the RPM 2015-08-27 13:39:31 -07:00
README.rst Replace git.openstack.org URLs with opendev.org URLs 2019-07-04 20:31:46 +08:00
babel.cfg Initial commit 2015-07-15 13:34:36 -07:00
cli_setup.py Do not always copy files 2019-08-13 14:24:15 +08:00
lower-constraints.txt Bump docker_version_min to 1.10.0 2019-07-21 17:43:38 +08:00
requirements.txt Bump docker_version_min to 1.10.0 2019-07-21 17:43:38 +08:00
setup.cfg Add group list command 2019-08-13 22:07:16 +08:00
setup.py fixed the property code to work with mainstream kolla changes. ordered property output. 2015-08-20 13:05:04 -07:00
test-requirements.txt Move doc related modules to doc/requirements.txt 2019-08-06 00:29:45 +08:00
tox.ini Generate PDF documentation 2019-09-10 23:35:24 +08:00

README.rst

Kolla-CLI

The Kolla-CLI project provides the ability to more easily manage Kolla-Ansible deployments. It provides both a CLI and a python API that you can use to configure and deploy OpenStack using Kolla-Ansible.

Kolla-Ansible requires that hosts, groups, and services are specified in an inventory file. With Kolla-CLI, you can add/remove hosts, change group associations, etc from the CLI or API. Kolla-Ansible also maintains passwords and various configuration variables in a variety of global, group and host files. With Kolla-CLI, you can now view and change these from the CLI/API.

Finally, Kolla-CLI provides commands to setup the SSH keys on hosts, run deployments and perform upgrades.

Installing

The installation process below assumes that the kolla-ansible repository exists at the same level as the kolla-cli repository. This is made clear in the cli_setup.py script which makes a relative '../' reference to the kolla-ansible repository. If your kolla-ansible directory is somewhere else then that location can be passed as an argument to the cli_setup.py script. The location on the system where the kolla-cli expects the kolla-ansible files to be and installs them to can be tweaked by setting the KOLLA_HOME and KOLLA_ETC environment variables before running the cli_setup.py script, and while running the kolla-cli command itself. The default value for KOLLA_HOME is /usr/share/kolla-ansible and the default value for KOLLA_ETC is /etc/kolla.

The following steps can be used to build / run the kolla-cli

  • install ansible and docker
  • virtualenv .venv
  • . .venv/bin/activate
  • pip install -r requirements.txt
  • python setup.py install
  • python ./cli_setup.py
  • kolla-cli

At that point you will be dropped into the kollacli shell where you can run commands like help or ? to see what commands are available and any of the sub commands can be executed directly.

Alternately you can not use the shell and just execute commands directly via kollacli host add, etc.

If you make changes to the i18n strings (denoted by methods like _("message")) make sure to re-generate the i18n files with the python setup.py extract_messages command and check in the files generated in openstack-kollacli.

API

To use the API, import the ClientAPI into your module:

from kolla_cli.api.client import ClientApi

Then define a global:

CLIENT = ClientApi()

And then you can use that global to execute API commands, for example, to add a host to the inventory:

CLIENT.host_add(['host_name'])

Getting Involved

Need a feature? Find a bug? Let us know! Contributions are much appreciated and should follow the standard Gerrit workflow.

  • We communicate using the #openstack-kolla irc channel.
  • File bugs, blueprints, track releases, etc on Launchpad.
  • Attend weekly meetings.
  • Contribute code.

Contributors

Check out who is contributing code and contributing reviews.

Troubleshooting

If you get an error about missing python.h install the python-dev package via apt-get or yum or whatever mechanism is appropriate for your platform.