From 881df11844eba55882da1d0a6a96e65ddb12b9be Mon Sep 17 00:00:00 2001 From: Tyler Allen <tyler.allen@alvaria.com> Date: Wed, 24 Nov 2021 10:57:37 -0600 Subject: [PATCH] add ability to detect and update network tags. --- plugins/modules/gcp_compute_instance.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/plugins/modules/gcp_compute_instance.py b/plugins/modules/gcp_compute_instance.py index b62286d..6966f83 100644 --- a/plugins/modules/gcp_compute_instance.py +++ b/plugins/modules/gcp_compute_instance.py @@ -1229,8 +1229,17 @@ def update_fields(module, request, response): machine_type_update(module, request, response) if response.get('shieldedInstanceConfig') != request.get('shieldedInstanceConfig'): shielded_instance_config_update(module, request, response) + if response.get("tags") != request.get("tags"): + tag_fingerprint_update(module,request,response) +def tag_fingerprint_update(module, request, response): + auth = GcpSession(module, 'compute') + auth.post( + ''.join(["https://compute.googleapis.com/compute/v1/", "projects/{project}/zones/{zone}/instances/{name}/setTags"]).format(**module.params), + {u'fingerprint': response.get('tags',{}).get('fingerprint'), u'items': module.params.get('tags', {}).get('items')}, + ) + def label_fingerprint_update(module, request, response): auth = GcpSession(module, 'compute') auth.post(