aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2016-05-25 03:59:26 +0000
committerGerrit Code Review <review@openstack.org>2016-05-25 03:59:26 +0000
commit8d7920fafeb784d983baf8b5a0858844b457aff1 (patch)
treebe65f5f466ec5a4ed9e81edde5cc56ffd39dbb15
parentcac8b397956329df59b8bd0d7cecdbc429781baa (diff)
parente1b5b149f26df2028f65652ac0d4a9509b23fe4c (diff)
downloadkolla-8d7920fafeb784d983baf8b5a0858844b457aff1.tar.gz
kolla-8d7920fafeb784d983baf8b5a0858844b457aff1.zip
Merge "Make passwords.yml file generation configurable"
-rwxr-xr-xkolla/cmd/genpwd.py14
-rwxr-xr-xtools/kolla-ansible27
2 files changed, 28 insertions, 13 deletions
diff --git a/kolla/cmd/genpwd.py b/kolla/cmd/genpwd.py
index 70dbc0357..ad77a77c0 100755
--- a/kolla/cmd/genpwd.py
+++ b/kolla/cmd/genpwd.py
@@ -12,6 +12,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
+import argparse
import os
import random
import string
@@ -29,6 +30,15 @@ def generate_RSA(bits=2048):
def main():
+ parser = argparse.ArgumentParser()
+ parser.add_argument(
+ '-p', '--passwords', type=str,
+ default=os.path.abspath('/etc/kolla/passwords.yml'),
+ help=('Path to the passwords yml file'))
+
+ args = parser.parse_args()
+ passwords_file = os.path.expanduser(args.passwords)
+
# These keys should be random uuids
uuid_keys = ['ceph_cluster_fsid', 'rbd_secret_uuid']
@@ -41,7 +51,7 @@ def main():
# length of password
length = 40
- with open('/etc/kolla/passwords.yml', 'r') as f:
+ with open(passwords_file, 'r') as f:
passwords = yaml.load(f.read())
for k, v in passwords.items():
@@ -67,7 +77,7 @@ def main():
for n in range(length)
])
- with open('/etc/kolla/passwords.yml', 'w') as f:
+ with open(passwords_file, 'w') as f:
f.write(yaml.dump(passwords, default_flow_style=False))
if __name__ == '__main__':
diff --git a/tools/kolla-ansible b/tools/kolla-ansible
index 66c74c108..3a8ffd2ab 100755
--- a/tools/kolla-ansible
+++ b/tools/kolla-ansible
@@ -28,14 +28,15 @@ function usage {
Usage: $0 COMMAND [options]
Options:
- --inventory, -i <inventory_path> Specify path to ansible inventory file
- --playbook, -p <playbook_path> Specify path to ansible playbook file
- --configdir <config_path> Specify path to directory with globals.yml
- --keyfile, -k <key_file> Specify path to ansible vault keyfile
- --help, -h Show this usage information
- --tags, -t <tags> Only run plays and tasks tagged with these values
- --extra, -e <ansible variables> Set additional variables as key=value or YAML/JSON passed to ansible-playbook
- --verbose, -v Increase verbosity of ansible-playbook
+ --inventory, -i <inventory_path> Specify path to ansible inventory file
+ --playbook, -p <playbook_path> Specify path to ansible playbook file
+ --configdir <config_path> Specify path to directory with globals.yml
+ --keyfile, -k <key_file> Specify path to ansible vault keyfile
+ --help, -h Show this usage information
+ --tags, -t <tags> Only run plays and tasks tagged with these values
+ --extra, -e <ansible variables> Set additional variables as key=value or YAML/JSON passed to ansible-playbook
+ --passwords <passwords_path> Specify path to the passwords file
+ --verbose, -v Increase verbosity of ansible-playbook
Commands:
prechecks Do pre-deployment checks for hosts
@@ -53,7 +54,7 @@ EOF
SHORT_OPTS="hi:p:t:k:e:v"
-LONG_OPTS="help,inventory:,playbook:,tags:,keyfile:,extra:,verbose,configdir:"
+LONG_OPTS="help,inventory:,playbook:,tags:,keyfile:,extra:,verbose,configdir:,passwords:,"
ARGS=$(getopt -o "${SHORT_OPTS}" -l "${LONG_OPTS}" --name "$0" -- "$@") || { usage >&2; exit 2; }
eval set -- "$ARGS"
@@ -65,6 +66,7 @@ PLAYBOOK="${BASEDIR}/ansible/site.yml"
VERBOSITY=
EXTRA_OPTS=
CONFIG_DIR="/etc/kolla"
+PASSWORDS_FILE="${CONFIG_DIR}/passwords.yml"
while [ "$#" -gt 0 ]; do
case "$1" in
@@ -104,7 +106,10 @@ while [ "$#" -gt 0 ]; do
EXTRA_OPTS="$EXTRA_OPTS -e $2"
shift 2
;;
-
+ (--passwords)
+ PASSWORDS_FILE="$2"
+ shift 2
+ ;;
(--help|-h)
usage
shift
@@ -171,6 +176,6 @@ case "$1" in
;;
esac
-CONFIG_OPTS="-e @${CONFIG_DIR}/globals.yml -e @${CONFIG_DIR}/passwords.yml -e CONFIG_DIR=${CONFIG_DIR}"
+CONFIG_OPTS="-e @${CONFIG_DIR}/globals.yml -e @${PASSWORDS_FILE} -e CONFIG_DIR=${CONFIG_DIR}"
CMD="ansible-playbook -i $INVENTORY $CONFIG_OPTS $EXTRA_OPTS $PLAYBOOK $VERBOSITY"
process_cmd