summaryrefslogtreecommitdiff
path: root/cloud/google
diff options
context:
space:
mode:
authordaniel-sc <daniel-schreiber@gmx.de>2015-10-11 17:18:38 +0200
committerdaniel-sc <daniel-schreiber@gmx.de>2015-10-11 17:18:38 +0200
commitdbb0bcd9e436b5228b7d45665a16f498bf6ca53a (patch)
tree04a10d2001f3bf15c3794f9af85790755cd52d6d /cloud/google
parent205115ea1fc85b99fd7e505b58e84db3a4377f5f (diff)
downloadansible-modules-extras-dbb0bcd9e436b5228b7d45665a16f498bf6ca53a.tar.gz
configurable timeout for creating gce image
Diffstat (limited to 'cloud/google')
-rw-r--r--cloud/google/gce_img.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/cloud/google/gce_img.py b/cloud/google/gce_img.py
index a4a55c16..8e03ee75 100644
--- a/cloud/google/gce_img.py
+++ b/cloud/google/gce_img.py
@@ -59,6 +59,12 @@ options:
required: false
default: "us-central1-a"
aliases: []
+ timeout:
+ description:
+ - timeout for the operation
+ required: false
+ default: 180
+ aliases: []
service_account_email:
description:
- service account email
@@ -130,6 +136,7 @@ def create_image(gce, name, module):
source = module.params.get('source')
zone = module.params.get('zone')
desc = module.params.get('description')
+ timeout = module.params.get('timeout')
if not source:
module.fail_json(msg='Must supply a source', changed=False)
@@ -149,13 +156,17 @@ def create_image(gce, name, module):
except GoogleBaseError, e:
module.fail_json(msg=str(e), changed=False)
+ old_timeout = gce.connection.timeout
try:
+ gce.connection.timeout = timeout
gce.ex_create_image(name, volume, desc, False)
return True
except ResourceExistsError:
return False
except GoogleBaseError, e:
module.fail_json(msg=str(e), changed=False)
+ finally:
+ gce.connection.timeout = old_timeout
def delete_image(gce, name, module):
@@ -180,6 +191,7 @@ def main():
service_account_email=dict(),
pem_file=dict(),
project_id=dict(),
+ timeout=dict(type='int', default=180)
)
)