qontract-reconcile 0.10.1rc1065__py3-none-any.whl → 0.10.1rc1066__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: qontract-reconcile
3
- Version: 0.10.1rc1065
3
+ Version: 0.10.1rc1066
4
4
  Summary: Collection of tools to reconcile services with their desired state as defined in the app-interface DB.
5
5
  Home-page: https://github.com/app-sre/qontract-reconcile
6
6
  Author: Red Hat App-SRE Team
@@ -94,7 +94,7 @@ reconcile/quay_mirror.py,sha256=dWvYqZcFu6RFUwyOVxNByRWx2FLIYTO2OFr2N1YtjJc,1470
94
94
  reconcile/quay_mirror_org.py,sha256=utrJpJaKCs7U6WX6DODdfCeB0EmX-lUC8Y5fkmpgFSs,10764
95
95
  reconcile/quay_permissions.py,sha256=9KOutS1w4RFQqkvMSy54VtsKNx56-phzP6yI_rEW-B8,4244
96
96
  reconcile/quay_repos.py,sha256=cuEYG0HUe0ut5yvLdEwOF5-CmccpXQHRb_wDazvDrvQ,6895
97
- reconcile/queries.py,sha256=-mwZ0V89Tik0zB585ID0jEqC4VSuUVaAPlaSXaNAR-E,50180
97
+ reconcile/queries.py,sha256=HAhD9d9TYRfkJMA5PQpv_eXuO2_wLt2Mlu2PaaBU3Xc,50201
98
98
  reconcile/query_validator.py,sha256=MSh5pKLBksws4AqfuvT8nrIGucIbqX-IOzYyPYTLO7k,1491
99
99
  reconcile/requests_sender.py,sha256=914iluuF4UVgG3VyxxtnHOu4yf6YKS2fIy6PViSsFTQ,3875
100
100
  reconcile/resource_scraper.py,sha256=znXCHrU7YwPfKuxGBiUrV7T1tYtn4vlz9qmZlfy6Flg,2307
@@ -837,7 +837,7 @@ tools/app_interface_metrics_exporter.py,sha256=zkwkxdAUAxjdc-pzx2_oJXG25fo0Fnyd5
837
837
  tools/app_interface_reporter.py,sha256=oZPib4HPq0aZ2Zui1QGJGk6qQdfpeihujGDBnSdKyGE,17627
838
838
  tools/glitchtip_access_reporter.py,sha256=oPBnk_YoDuljU3v0FaChzOwwnk4vap1xEE67QEjzdqs,2948
839
839
  tools/glitchtip_access_revalidation.py,sha256=8kbBJk04mkq28kWoRDDkfCGIF3GRg3pJrFAh1sW0dbk,2821
840
- tools/qontract_cli.py,sha256=5RQemctfItbH3S4TPjX2AmqmS1vCoI5j9zqhxFRJB44,129495
840
+ tools/qontract_cli.py,sha256=k4KO3TgLrvODo55ExCoJc74IVwg6ccOuyTzLkesfI8Y,130446
841
841
  tools/sd_app_sre_alert_report.py,sha256=e9vAdyenUz2f5c8-z-5WY0wv-SJ9aePKDH2r4IwB6pc,5063
842
842
  tools/template_validation.py,sha256=qpKYaTgk0GOPGa2Ct5_5sKdwIHtCAKIBGzsMPuJU5fw,3371
843
843
  tools/cli_commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -868,8 +868,8 @@ tools/test/test_qontract_cli.py,sha256=_D61RFGAN5x44CY1tYbouhlGXXABwYfxKSWSQx3Jr
868
868
  tools/test/test_saas_promotion_state.py,sha256=dy4kkSSAQ7bC0Xp2CociETGN-2aABEfL6FU5D9Jl00Y,6056
869
869
  tools/test/test_sd_app_sre_alert_report.py,sha256=v363r9zM7__0kR5K6mvJoGFcM9BvE33fWAayrqkpojA,2116
870
870
  tools/test/test_sre_checkpoints.py,sha256=SKqPPTl9ua0RFdSSofnoQX-JZE6dFLO3LRhfQzqtfh8,2607
871
- qontract_reconcile-0.10.1rc1065.dist-info/METADATA,sha256=m4tokwe6Lqt4qrgjrUnsAPAuYikH3iysJX1DQQgfDaU,2213
872
- qontract_reconcile-0.10.1rc1065.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
873
- qontract_reconcile-0.10.1rc1065.dist-info/entry_points.txt,sha256=GKQqCl2j2X1BJQ69een6rHcR26PmnxnONLNOQB-nRjY,491
874
- qontract_reconcile-0.10.1rc1065.dist-info/top_level.txt,sha256=l5ISPoXzt0SdR4jVdkfa7RPSKNc8zAHYWAnR-Dw8Ey8,24
875
- qontract_reconcile-0.10.1rc1065.dist-info/RECORD,,
871
+ qontract_reconcile-0.10.1rc1066.dist-info/METADATA,sha256=2hmviOFhwYzcMOSmbPA5z3fZwzWq12ISwijO7lzrops,2213
872
+ qontract_reconcile-0.10.1rc1066.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
873
+ qontract_reconcile-0.10.1rc1066.dist-info/entry_points.txt,sha256=GKQqCl2j2X1BJQ69een6rHcR26PmnxnONLNOQB-nRjY,491
874
+ qontract_reconcile-0.10.1rc1066.dist-info/top_level.txt,sha256=l5ISPoXzt0SdR4jVdkfa7RPSKNc8zAHYWAnR-Dw8Ey8,24
875
+ qontract_reconcile-0.10.1rc1066.dist-info/RECORD,,
reconcile/queries.py CHANGED
@@ -880,6 +880,7 @@ CLUSTERS_QUERY = """
880
880
  }
881
881
  tags
882
882
  cidrBlock
883
+ cidrBlocks
883
884
  manageSecurityGroups
884
885
  assumeRole
885
886
  }
tools/qontract_cli.py CHANGED
@@ -1093,6 +1093,27 @@ def cidr_blocks(ctx, for_cluster: int, mask: int) -> None:
1093
1093
  for c in clusters
1094
1094
  ]
1095
1095
 
1096
+ tgw_cidrs = [
1097
+ {
1098
+ "type": "account-tgw",
1099
+ "name": connection["account"]["name"],
1100
+ "account": connection["account"]["name"],
1101
+ "cidr": cidr,
1102
+ "from": str(ipaddress.ip_network(cidr)[0]),
1103
+ "to": str(ipaddress.ip_network(cidr)[-1]),
1104
+ "hosts": str(ipaddress.ip_network(cidr).num_addresses),
1105
+ "description": f'CIDR {cidr} routed through account {connection["account"]["name"]} transit gateways',
1106
+ }
1107
+ for c in clusters
1108
+ for connection in (c["peering"] or {}).get("connections") or []
1109
+ if connection["provider"] == "account-tgw"
1110
+ for cidr in [connection["cidrBlock"]] + (connection["cidrBlocks"] or [])
1111
+ if cidr is not None
1112
+ ]
1113
+ # removing dupes using a set of tuple (since dicts are not hashable)
1114
+ unique_tgw_cidrs = [dict(t) for t in {tuple(d.items()) for d in tgw_cidrs}]
1115
+ cidrs.extend(unique_tgw_cidrs)
1116
+
1096
1117
  vpcs = get_aws_vpcs()
1097
1118
  cidrs.extend(
1098
1119
  {