test_gce_mig integration test playbook (#17249)

Includes:
* Tests to create, delete, resize, recreate and configure an Autoscaler
* Tests for parameters only.  Use TEST_FLAGS="--tags 'param-check'" to execute only these tests.

Requires:
* An instance template to be configured in your project.
This commit is contained in:
Tom Melendez
2016-09-21 14:48:09 -07:00
committed by Ryan Brown
parent bfad319619
commit 0e85f88f8e
4 changed files with 256 additions and 14 deletions

View File

@@ -14,27 +14,28 @@ except ImportError:
def add_credentials_options(parser):
default_service_account_email=None
default_pem_file=None
default_project_id=None
default_service_account_email = None
default_pem_file = None
default_project_id = None
# Load details from credentials.yml
if os.path.isfile('credentials.yml'):
credentials = yaml.load(open('credentials.yml', 'r'))
default_service_account_email = credentials['gce_service_account_email']
default_pem_file = credentials['gce_pem_file']
default_service_account_email = credentials[
'gce_service_account_email']
default_pem_file = credentials['gce_credentials_file']
default_project_id = credentials['gce_project_id']
parser.add_option("--service_account_email",
action="store", dest="service_account_email",
default=default_service_account_email,
parser.add_option(
"--service_account_email", action="store",
dest="service_account_email", default=default_service_account_email,
help="GCE service account email. Default is loaded from credentials.yml.")
parser.add_option("--pem_file",
action="store", dest="pem_file",
parser.add_option(
"--pem_file", action="store", dest="pem_file",
default=default_pem_file,
help="GCE client key. Default is loaded from credentials.yml.")
parser.add_option("--project_id",
action="store", dest="project_id",
parser.add_option(
"--project_id", action="store", dest="project_id",
default=default_project_id,
help="Google Cloud project ID. Default is loaded from credentials.yml.")
@@ -48,5 +49,5 @@ def check_required(opts, parser):
def get_gce_driver(opts):
# Connect to GCE
gce_cls = get_driver(Provider.GCE)
return gce_cls(
opts.service_account_email, opts.pem_file, project=opts.project_id)
return gce_cls(opts.service_account_email, opts.pem_file,
project=opts.project_id)