From bc678e7d7b04b10e755042ff3df9a1d7920fdaea Mon Sep 17 00:00:00 2001 From: James Laska Date: Wed, 12 Mar 2014 14:37:15 -0400 Subject: [PATCH] Add credentials.template and support custom INVENTORY Testers may override the inventory and vars-file using the environment variables 'INVENTORY' and 'VARS_FILE'. --- test/integration/Makefile | 19 +++++++++++-------- test/integration/credentials.template | 7 +++++++ 2 files changed, 18 insertions(+), 8 deletions(-) create mode 100644 test/integration/credentials.template diff --git a/test/integration/Makefile b/test/integration/Makefile index 33ffc3a969..7a4072d44a 100644 --- a/test/integration/Makefile +++ b/test/integration/Makefile @@ -1,17 +1,20 @@ +INVENTORY ?= inventory +VARS_FILE ?= integration_config.yml + all: non_destructive destructive check_mode test_hash non_destructive: - ansible-playbook non_destructive.yml -i inventory -e @integration_config.yml -v $(TEST_FLAGS) + ansible-playbook non_destructive.yml -i $(INVENTORY) -e @$(VARS_FILE) -v $(TEST_FLAGS) destructive: - ansible-playbook destructive.yml -i inventory -e @integration_config.yml -v $(TEST_FLAGS) + ansible-playbook destructive.yml -i $(INVENTORY) -e @$(VARS_FILE) -v $(TEST_FLAGS) check_mode: - ansible-playbook check_mode.yml -i inventory -e @integration_config.yml -v --check $(TEST_FLAGS) + ansible-playbook check_mode.yml -i $(INVENTORY) -e @$(VARS_FILE) -v --check $(TEST_FLAGS) test_hash: - ANSIBLE_HASH_BEHAVIOUR=replace ansible-playbook test_hash.yml -i inventory -v -e '{"test_hash":{"extra_args":"this is an extra arg"}}' - ANSIBLE_HASH_BEHAVIOUR=merge ansible-playbook test_hash.yml -i inventory -v -e '{"test_hash":{"extra_args":"this is an extra arg"}}' + ANSIBLE_HASH_BEHAVIOUR=replace ansible-playbook test_hash.yml -i $(INVENTORY) -v -e '{"test_hash":{"extra_args":"this is an extra arg"}}' + ANSIBLE_HASH_BEHAVIOUR=merge ansible-playbook test_hash.yml -i $(INVENTORY) -v -e '{"test_hash":{"extra_args":"this is an extra arg"}}' cloud: amazon rackspace @@ -25,17 +28,17 @@ rackspace_cleanup: @#python cleanup_rax.py -y credentials.yml: - @echo "No credentials.yml file found. A file named 'credentials.yml' is needed to provide credentials needed to run cloud tests." + @echo "No credentials.yml file found. A file named 'credentials.yml' is needed to provide credentials needed to run cloud tests. See sample 'credentials.template' file." @exit 1 amazon: credentials.yml - ansible-playbook amazon.yml -i inventory -e @integration_config.yml -e @credentials.yml -v $(TEST_FLAGS) ; \ + ansible-playbook amazon.yml -i $(INVENTORY) -e @$(VARS_FILE) -e @credentials.yml -v $(TEST_FLAGS) ; \ RC=$$? ; \ make amazon_cleanup ; \ exit $$RC; rackspace: credentials.yml - ansible-playbook rackspace.yml -i inventory -e @integration_config.yml -e @credentials.yml -v $(TEST_FLAGS) ; \ + ansible-playbook rackspace.yml -i $(INVENTORY) -e @$(VARS_FILE) -e @credentials.yml -v $(TEST_FLAGS) ; \ RC=$$? ; \ make rackspace_cleanup ; \ exit $$RC; diff --git a/test/integration/credentials.template b/test/integration/credentials.template new file mode 100644 index 0000000000..0ca34aff7c --- /dev/null +++ b/test/integration/credentials.template @@ -0,0 +1,7 @@ +--- +# AWS Credentials +ec2_access_key: FIXME +ec2_secret_key: FIXME + +# GITHUB Credentials +github_ssh_private_key: "{{ lookup('env','HOME') }}/.ssh/id_rsa"