Use paunch as a library to not duplicate code around.
We'll need to add the logger once we have paunch 4.0.1
and rpm promoted with the recent logging fixes.
Closes-Bug: #1799573
Change-Id: I4386b155a4bdba430dc350914db7a6b6fdf92ac0
Signed-off-by: Bogdan Dobrelya <bdobreli@redhat.com>
Walk through services' templates role_data to identify
missing hiera interplolation of networks.
Use additionally provided interfaces for validations:
* search in dicts by keys or values matching some regex,
entering into lists as an option;
* safe get values by the discovered paths casted as lists,
like get_param/get_attr works for heat templates.
Add PyYAML missing to the requirements.txt.
Closes-bug: #1764315
Change-Id: Idef66ee96cbd67d23760a1cce9537ecc157c3429
Signed-off-by: Bogdan Dobrelya <bdobreli@redhat.com>
With the merging of Iad3e9b215c6f21ba761c8360bb7ed531e34520e6 the
roles_data.yaml should be generated with tripleoclient rather than
edited. This change adds in a pep8 task to verify that the appropriate
role files in roles/ have been modified to match how our default
roles_data.yaml is constructed. Additionally this change adds a new tox
target called 'genrolesdata' that will all you to automatically generate
roles_data.yaml and roles_data_undercloud.yaml
Change-Id: I5eb15443a131a122d1a4abf6fc15a3ac3e15941b
Related-Blueprint: example-custom-role-environments
This patch adds a local version of our template processing
routine so that developers can more quickly view the templates
that are actually getting generated. I've noticed multiple developers
now do a full deployment with 'overcloud deploy' only to download
the swift container with the generated templates. This simple task
avoids that step by allowing developers to generate it locally.
It also aims to preserve the ability to use t-h-t templates directly
with Heat (instead of going through Mistral) should users wish to do that.
The new undercloud heat installer requires the ability to generate
templates without requiring Mistral and Swift to do so.
Ideally the Mistral API workflow would use this same code
so perhaps in the future we might modify that routine to:
-download swift tarball containing the templates
-run this local routine that lives in t-h-t
-re-upload the tarball of templates to the swift container
Change-Id: Ie664c9c5f455b7320a58a26f35bc403355408d9b