From abd168f8a068c726dc3c126069126caafe5fbda2 Mon Sep 17 00:00:00 2001 From: Rem Baumann Date: Wed, 11 Dec 2024 13:55:13 -0500 Subject: [PATCH] Update to have all nested under single virtual tag --- .../virtual_tag_by_account.py | 42 +++++++++---------- 1 file changed, 20 insertions(+), 22 deletions(-) diff --git a/python/aws-account-based-virtual-tag/virtual_tag_by_account.py b/python/aws-account-based-virtual-tag/virtual_tag_by_account.py index 65ecb20..fcfd6e2 100644 --- a/python/aws-account-based-virtual-tag/virtual_tag_by_account.py +++ b/python/aws-account-based-virtual-tag/virtual_tag_by_account.py @@ -4,7 +4,7 @@ url = "https://api.vantage.sh/v2/virtual_tag_configs" -VANTAGE_API_TOKEN = os.environ.get("VANTAGE_ACCESS_TOKEN") +VANTAGE_ACCESS_TOKEN = os.environ.get("VANTAGE_ACCESS_TOKEN") session = boto3.session.Session() client = session.client('sts') @@ -15,28 +15,26 @@ page_iterator = paginator.paginate() accounts = [] - -for page in page_iterator: +for page in page_iterator: for acct in page['Accounts']: - payload = { - "overridable": False, - "key": acct['Name'], - "values": [ - { - "filter": f"costs.provider = 'aws' AND costs.account_id = '{acct['Id']}'", - "name": "Account ID" - } - ] - } - headers = { - "accept": "application/json", - "content-type": "application/json", - "authorization": f"Bearer {VANTAGE_API_TOKEN}" - } - print(payload) - - response = requests.post(url, json=payload, headers=headers) - print(response.text) + accounts.append({ + "filter": f"costs.provider = 'aws' AND costs.account_id = '{acct['Id']}'", + "name": acct['Name'].replace("'?!", "") + }) + +payload = { + "overridable": False, + "key": "AWS Account Names", + "values": accounts +} +headers = { + "accept": "application/json", + "content-type": "application/json", + "authorization": f"Bearer {VANTAGE_ACCESS_TOKEN}" +} + +response = requests.post(url, json=payload, headers=headers) +print(response.text)