RETIRED, A Python library for code common to TripleO CLI and TripleO UI.
Go to file
Alex Schultz 346461d51d Open log in utf-8 to prevent UnicodeEncodeError
In python2 opens files as ascii by default, we were getting errors when
trying to write out unicode to log files. This change pulls in the
codecs module for python2 to support writing unicode out to files. In
python3, all strings are unicode so there is no issues when writing them
out to a file.

Change-Id: Id740253a0e6143cfcdd4f7fe2b5460d9f64fa01e
Closes-Bug: #1665114
(cherry picked from commit 9d2a6dae35)
2017-02-18 15:22:22 +00:00
contrib Update container images to point to newton 2016-11-18 17:43:18 +01:00
doc/source Removes unnecessary utf-8 coding 2016-12-26 14:37:11 +08:00
heat_docker_agent Merge "Add python-heat-agent-json-file to the heat docker agent" 2017-01-31 10:15:41 +00:00
image-yaml Force DIB_PYTHON_VERSION to be 2 2017-02-10 21:33:00 +00:00
releasenotes Merge "Use Mistral to create Swift temporary URLs" 2017-02-01 17:48:25 +00:00
scripts Adds basic logging to the upgrade-non-controller.sh utility 2017-01-31 18:12:18 +02:00
tools Add ReNo support 2017-01-12 12:06:02 +00:00
tripleo_common Open log in utf-8 to prevent UnicodeEncodeError 2017-02-18 15:22:22 +00:00
undercloud_heat_plugins Merge "Ignore changes to images in nova servers" 2016-09-27 00:13:43 +00:00
workbooks Merge "Fix race in undercloud cell_v2 host discovery" 2017-02-01 21:10:59 +00:00
.coveragerc Make coverage tests work 2015-11-30 23:01:07 +00:00
.gitignore Add ReNo support 2017-01-12 12:06:02 +00:00
.gitreview Update .gitreview for stable/ocata 2017-02-16 12:59:12 +00:00
.mailmap Initial Cookiecutter Commit. 2015-04-29 13:34:49 +02:00
.testr.conf Initial Cookiecutter Commit. 2015-04-29 13:34:49 +02:00
CONTRIBUTING.rst Initial Cookiecutter Commit. 2015-04-29 13:34:49 +02:00
HACKING.rst Fix formatting in doc files 2016-07-22 16:46:04 +02:00
LICENSE Initial Cookiecutter Commit. 2015-04-29 13:34:49 +02:00
MANIFEST.in Initial Cookiecutter Commit. 2015-04-29 13:34:49 +02:00
README.rst Pin docutils version 2016-12-12 07:29:45 +01:00
babel.cfg Initial Cookiecutter Commit. 2015-04-29 13:34:49 +02:00
requirements.txt Updated from global requirements 2017-02-14 06:02:02 +00:00
setup.cfg Merge "Fix race in undercloud cell_v2 host discovery" 2017-02-01 21:10:59 +00:00
setup.py Updated from global requirements 2015-10-23 16:05:01 +00:00
sudoers Fix race in undercloud cell_v2 host discovery 2017-02-01 13:56:58 +00:00
test-requirements.txt Updated from global requirements 2017-02-14 06:02:02 +00:00
tox.ini Add ReNo support 2017-01-12 12:06:02 +00:00

README.rst

Team and repository tags

image

tripleo-common

A common library for TripleO workflows.

Action Development

When developing new actions, you will checkout a copy of tripleo-common to an undercloud machine and add actions as needed. To test the actions they need to be installed and selected services need to be restarted. Use the following code to accomplish these tasks. :

sudo rm -Rf /usr/lib/python2.7/site-packages/tripleo_common*
sudo python setup.py install
sudo cp /usr/share/tripleo-common/sudoers /etc/sudoers.d/tripleo-common
sudo systemctl restart openstack-mistral-executor
sudo systemctl restart openstack-mistral-engine
# this loads the actions via entrypoints
sudo mistral-db-manage populate
# make sure the new actions got loaded
mistral action-list | grep tripleo

Validations

Prerequisites

If you haven't installed the undercloud with the enable_validations set to true, you will have to prepare your undercloud to run the validations:

$ sudo pip install git+https://git.openstack.org/openstack/tripleo-validations
$ sudo yum install ansible
$ sudo useradd validations

Finally you need to generate an SSH keypair for the validation user and copy it to the overcloud's authorized_keys files:

$ mistral execution-create tripleo.validations.v1.copy_ssh_key

Running validations using the mistral workflow

Create a context.json file containing the arguments passed to the workflow:

{
  "validation_names": ["512e", "rabbitmq-limits"]
}

Run the tripleo.validations.v1.run_validations workflow with mistral client:

mistral execution-create tripleo.validations.v1.run_validations context.json

Running groups of validations

Create a context.json file containing the arguments passed to the workflow:

{
  "group_names": ["network", "post-deployment"]
}

Run the tripleo.validations.v1.run_groups workflow with mistral client:

mistral execution-create tripleo.validations.v1.run_groups context.json