Skip to main content

Command Line Interface for Kolla-Ansible

Project description

This project is deprecated since the Ussuri release and will not be maintained in the future.

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’])

Generating Documentation

We use Sphinx to maintain the documentation. You can install Sphinx using pip.

$ pip install -U Sphinx

In addition to Sphinx you will also need the following requirements (covered by doc/requirements.txt):

$ pip install openstackdocstheme reno 'reno[sphinx]'

The source code of the documentation are under doc, you can generate the html files using the following command. If the generation succeeds,a build/html dir will be created under doc.

$ cd doc
$ make html

Now you can serve the documentation at http://localhost:8080 as a simple website.

$ cd build/html
$ python -m SimpleHTTPServer 8080

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kolla-cli-10.0.0.tar.gz (96.4 kB view details)

Uploaded Source

Built Distribution

kolla_cli-10.0.0-py3-none-any.whl (117.6 kB view details)

Uploaded Python 3

File details

Details for the file kolla-cli-10.0.0.tar.gz.

File metadata

  • Download URL: kolla-cli-10.0.0.tar.gz
  • Upload date:
  • Size: 96.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.5.2

File hashes

Hashes for kolla-cli-10.0.0.tar.gz
Algorithm Hash digest
SHA256 e103bd1e05a9acd2a554208606cf4d2b08d387e5c8fa979c38e43e32abbccf2f
MD5 cd7669648a4d47f1cd6c91f80ac04d15
BLAKE2b-256 8deabdad30afba9608c450e52a46bfdf63dbc1ff2fb7b4ee8758feded6cb68d9

See more details on using hashes here.

File details

Details for the file kolla_cli-10.0.0-py3-none-any.whl.

File metadata

  • Download URL: kolla_cli-10.0.0-py3-none-any.whl
  • Upload date:
  • Size: 117.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.5.2

File hashes

Hashes for kolla_cli-10.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3de54d04d6f978b4f51f1bba884b507b42d73075bb62f1a0d0e29cec36b2110e
MD5 5874667da6b7da897cf5bbe5d5ee2d0e
BLAKE2b-256 b8700b27b736e1a535a4fd19af3c87e668375682021a3317589a01cb9c580fb2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page