Commit c56ed3ff by Feanil Patel

Be able to override the default secure vars file.

Also always pass in the common.yml vars to plays.
parent c6f118e6
...@@ -22,6 +22,7 @@ AMI_TIMEOUT = 600 # time to wait for AMIs to complete ...@@ -22,6 +22,7 @@ AMI_TIMEOUT = 600 # time to wait for AMIs to complete
EC2_RUN_TIMEOUT = 180 # time to wait for ec2 state transition EC2_RUN_TIMEOUT = 180 # time to wait for ec2 state transition
EC2_STATUS_TIMEOUT = 300 # time to wait for ec2 system status checks EC2_STATUS_TIMEOUT = 300 # time to wait for ec2 system status checks
NUM_TASKS = 5 # number of tasks for time summary report NUM_TASKS = 5 # number of tasks for time summary report
NUM_PLAYBOOKS = 3
class MongoConnection: class MongoConnection:
...@@ -109,11 +110,11 @@ def parse_args(): ...@@ -109,11 +110,11 @@ def parse_args():
default=False) default=False)
parser.add_argument('--secure-vars', required=False, parser.add_argument('--secure-vars', required=False,
metavar="SECURE_VAR_FILE", metavar="SECURE_VAR_FILE",
help="path to secure-vars, defaults to " help="path to secure-vars from the root of "
"../../../configuration-secure/ansible/" "configuration-secure, defaults to ansible/"
"vars/DEPLOYMENT/ENVIRONMENT.yml") "vars/DEPLOYMENT/ENVIRONMENT-DEPLOYMENT.yml")
parser.add_argument('--stack-name', parser.add_argument('--stack-name',
help="defaults to DEPLOYMENT-ENVIRONMENT", help="defaults to ENVIRONMENT-DEPLOYMENT",
metavar="STACK_NAME", metavar="STACK_NAME",
required=False) required=False)
parser.add_argument('-p', '--play', parser.add_argument('-p', '--play',
...@@ -133,10 +134,10 @@ def parse_args(): ...@@ -133,10 +134,10 @@ def parse_args():
help="Application for subnet, defaults to admin", help="Application for subnet, defaults to admin",
default="admin") default="admin")
parser.add_argument('--configuration-version', required=False, parser.add_argument('--configuration-version', required=False,
help="configuration repo version", help="configuration repo branch(no hashes)",
default="master") default="master")
parser.add_argument('--configuration-secure-version', required=False, parser.add_argument('--configuration-secure-version', required=False,
help="configuration-secure repo version", help="configuration-secure repo branch(no hashes)",
default="master") default="master")
parser.add_argument('-j', '--jenkins-build', required=False, parser.add_argument('-j', '--jenkins-build', required=False,
help="jenkins build number to update") help="jenkins build number to update")
...@@ -242,8 +243,8 @@ environment="{environment}" ...@@ -242,8 +243,8 @@ environment="{environment}"
deployment="{deployment}" deployment="{deployment}"
play="{play}" play="{play}"
config_secure={config_secure} config_secure={config_secure}
secure_vars_file="$base_dir/configuration-secure\\ secure_vars_file="$base_dir/configuration-secure/{secure_vars}"
/ansible/vars/$environment/$environment-$deployment.yml" common_vars_file="$base_dir/configuration-secure/ansible/vars/common/common.yml"
instance_id=\\ instance_id=\\
$(curl http://169.254.169.254/latest/meta-data/instance-id 2>/dev/null) $(curl http://169.254.169.254/latest/meta-data/instance-id 2>/dev/null)
instance_ip=\\ instance_ip=\\
...@@ -314,9 +315,9 @@ sudo pip install -r requirements.txt ...@@ -314,9 +315,9 @@ sudo pip install -r requirements.txt
cd $playbook_dir cd $playbook_dir
ansible-playbook -vvvv -c local -i "localhost," $play.yml -e@$extra_vars ansible-playbook -vvvv -c local -i "localhost," $play.yml -e@$extra_vars -e@$common_vars_file
ansible-playbook -vvvv -c local -i "localhost," datadog.yml -e@$extra_vars ansible-playbook -vvvv -c local -i "localhost," datadog.yml -e@$extra_vars -e@$common_vars_file
ansible-playbook -vvvv -c local -i "localhost," splunkforwarder.yml -e@$extra_vars ansible-playbook -vvvv -c local -i "localhost," splunkforwarder.yml -e@$extra_vars -e@$common_vars_file
rm -rf $base_dir rm -rf $base_dir
...@@ -329,7 +330,8 @@ rm -rf $base_dir ...@@ -329,7 +330,8 @@ rm -rf $base_dir
config_secure=config_secure, config_secure=config_secure,
identity_file=identity_file, identity_file=identity_file,
queue_name=run_id, queue_name=run_id,
extra_vars_yml=extra_vars_yml) extra_vars_yml=extra_vars_yml,
secure_vars=secure_vars)
ec2_args = { ec2_args = {
'security_group_ids': [security_group_id], 'security_group_ids': [security_group_id],
...@@ -362,6 +364,7 @@ def poll_sqs_ansible(): ...@@ -362,6 +364,7 @@ def poll_sqs_ansible():
buf = [] buf = []
task_report = [] # list of tasks for reporting task_report = [] # list of tasks for reporting
last_task = None last_task = None
completed = 0
while True: while True:
messages = [] messages = []
while True: while True:
...@@ -438,6 +441,9 @@ def poll_sqs_ansible(): ...@@ -438,6 +441,9 @@ def poll_sqs_ansible():
to_disp['msg']['TS'] / 60, to_disp['msg']['TS'] / 60,
to_disp['msg']['TS'] % 60, to_disp['msg']['TS'] % 60,
to_disp['msg']['PREFIX']) to_disp['msg']['PREFIX'])
completed += 1
if completed >= 3:
return (to_disp['msg']['TS'], task_report) return (to_disp['msg']['TS'], task_report)
if not messages: if not messages:
...@@ -581,9 +587,8 @@ if __name__ == '__main__': ...@@ -581,9 +587,8 @@ if __name__ == '__main__':
if args.secure_vars: if args.secure_vars:
secure_vars = args.secure_vars secure_vars = args.secure_vars
else: else:
secure_vars = "../../../configuration-secure/" \ secure_vars = "ansible/vars/{}/{}-{}.yml".format(
"ansible/vars/{}/{}.yml".format( args.environment, args.environment, args.deployment)
args.deployment, args.environment)
if args.stack_name: if args.stack_name:
stack_name = args.stack_name stack_name = args.stack_name
else: else:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment