It would be helpful to have the ability to populate the
kolla-cli inventory file from any inventory file, not just the
all-in-one file from kolla.
To do this, The config reset command has been updated to take
an optional --inventory path argument that will cause the new
inventory to be generated from that anible inventory file.
While doing this found a few things to fix:
- renamed allineone.py & AllInOne to AnsibleInventory to better reflect
what they are now doing.
- In kolla_actions, preserve the empty globals.yml file (otherwise
the soft linkage is broken) and fix the kolla-cli directory name.
Change-Id: Ib250c5de8e00818b41c1a4539aba8c165a4ad2e2
The config reset command wipes all properties,
inventory data, default tls certificates and passwords.
The password set command now only allows modification
of existing passwords, and clear only removes the value
for existing password keys. The ability to completely
add new and remove passwords no longer exists as it
was really only useful in very edge cases and did not
play nicely with the concept of doing a config reset.
Change-Id: I9d1868da1161ebaf64793ab6d0e42de74389feab
Pass one at updating the kolla-cli to work against the official
kolla-ansible bits rather than the internal Oracle ones. There
are some corresponding changes in the kolla-ansible vagrant
scripts related to bringing up the development environment.
Change-Id: Ia680bb65f904c4dbaf3f05d0334145980c860000
Implements: blueprint functional-single-node
With the move to a CI/CD environment the tests needed
to be tweaked to not try to make remote calls. Going
forward any compoud / functional tests that need to
run against remote systems should be broken out into
separate tests that won't be run during our normal
CI/CD flow.
Also fixed flaw in log_collector.py introduced
during recent inventory logic refactoring.
Jira-Issue: OPENSTACK-1710
Change-Id: Id11cc1abcac6ac5b94176a1f17a8f5f82b6f00d5
Passwords in mitaka kolla are now empty. You have to run a kolla-genpwd
command to init the values. But you have to run that as either root or
kolla, which is not desirable.
This adds a new password command to the cli/api to run that script
for the user so they do not have to change to root or kolla.
Bug 24704089
Jira-Issue: None
Change-Id: I16f60635c94f1f44d0489d20362384ee02caf8b5
- add new password setkey cli command
- add new api password_set_sshkey
- add ability to param checker to not display bad param
- add new change_password util for kolla_actions to call
- update kolla_actions to handle ssh keys
- add utest for setting/clearing ssh keys
Change-Id: I1fedb85d21cd04c222f7250bdda66ad42a9ddca3
Jira-Issue: OPENSTACK-1071
- kolla user must be killer, need to do this from a
sudoer-allowed script
- rename password-editor script to kolla_actions
- update rpm builder to handle rename
- add job kill function to kolla_actions
- add job kill to api
- add utest for kill
Jira-Issue: OSTACKDEV-32
- add new support_get_logs() api
- change dump api to require directory for dump to
match new get_logs api
- remove no longer needed pexpect
- update utests
- change log collector tool to use the new api
Jira-Issue: OSTACKDEV-18
- create apis for deploy, upgrade, host_destroy, host_precheck
- change CLI to use new APIs
- create new async api class for job-based apis
- add skeletal upgrade utest
- add some -v and -vv's to utests
- fix newly introduced bug in log_collector
- fix some pep8 warnings
Jira-Issue: OSTACKDEV-20
- make playbook run return an AnsibleJob object
- rename AnsibleCommand object to AnsibleJob
- provide methods on job to wait,get_status,get_error
- change action to use new async playbook
- fix newly introduced bug in safe_decode
- fix bug in shell where errors were outputted twice
- provide new inventory method to remove temp inventory dir/file
- fix removal of inventory dir/file in log collector
- change debug logging default to False in the callback module
Jira-Issue: OSTACKDEV-20
- fix imports in log collector tool
- add new unit test for it
- move dump test to new support test module
- can no longer import pxssh after upgrade to pexpect 4.0.1, change to
import from pexpect module
- fix a couple of pep8 issues
Jira-Issue: OPENSTACK-297
- add new commands directory under kollacli for cli commands
- split misc commands into support and deploy
- clean up imports
- move sshutils and utils under common directory
- dump was still using the obsolete json_generator. replace that with the
dynamically generated json inventory file
- a few other fixes in dump
- file checking added to dump unittest
- capture error output in log collector when no output is received
- add new read and write file methods to synchronous accesss to files to avoid simultaneous reads and writes.
- fix issue with pexpect prompt change in last check-in. caused deploy to fail in some cases.
synchronize access to files to avoid corruption
- better errors on ansible playbook errors
- json generator will be generated on the fly for deploy
- new inventory method create_json_gen_file to create dynamic
json generator file
- updated and new unit tests to test dynamic inventory filtering
- TODO: delete json generator file. Needed for now to pass unit tests
- add set/clear/list password commands
- update passwd_editor script to perform a password list
- add new password unittest
Still todo:
- package script properly into rpm with appropriate restrictive permissions
- add new script that will edit the passwords.yml file. The script will be called from the cli
so that the passwords file can be set up to be only edited by this script. Users will not
be able to have access to the passwords file directly.
- moved change_property from ansible/property to utils so it can be used by the script.
Still to do:
- hook script into a cli command
- package script properly into rpm with appropriate restrictive permissions
- add password key list