qontract-reconcile 0.10.2.dev430__py3-none-any.whl → 0.10.2.dev474__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.
- {qontract_reconcile-0.10.2.dev430.dist-info → qontract_reconcile-0.10.2.dev474.dist-info}/METADATA +2 -2
- {qontract_reconcile-0.10.2.dev430.dist-info → qontract_reconcile-0.10.2.dev474.dist-info}/RECORD +47 -46
- {qontract_reconcile-0.10.2.dev430.dist-info → qontract_reconcile-0.10.2.dev474.dist-info}/WHEEL +1 -1
- reconcile/aus/aus_sts_gate_handler.py +59 -0
- reconcile/aus/base.py +9 -8
- reconcile/aus/version_gate_approver.py +1 -16
- reconcile/aus/version_gates/sts_version_gate_handler.py +5 -125
- reconcile/aws_account_manager/integration.py +13 -1
- reconcile/aws_account_manager/utils.py +1 -1
- reconcile/aws_ecr_image_pull_secrets.py +1 -1
- reconcile/change_owners/README.md +1 -1
- reconcile/change_owners/change_owners.py +108 -42
- reconcile/change_owners/decision.py +1 -1
- reconcile/cli.py +1 -1
- reconcile/external_resources/secrets_sync.py +2 -3
- reconcile/gql_definitions/aws_account_manager/aws_accounts.py +9 -0
- reconcile/gql_definitions/common/aws_vpc_requests.py +3 -0
- reconcile/gql_definitions/common/clusters.py +2 -0
- reconcile/gql_definitions/external_resources/external_resources_namespaces.py +6 -2
- reconcile/gql_definitions/fragments/aws_vpc_request.py +5 -0
- reconcile/gql_definitions/introspection.json +51 -7
- reconcile/gql_definitions/terraform_resources/terraform_resources_namespaces.py +8 -2
- reconcile/gql_definitions/vpc_peerings_validator/vpc_peerings_validator.py +3 -0
- reconcile/gql_definitions/vpc_peerings_validator/vpc_peerings_validator_peered_cluster_fragment.py +1 -0
- reconcile/openshift_namespaces.py +3 -4
- reconcile/quay_base.py +25 -6
- reconcile/quay_membership.py +55 -29
- reconcile/quay_mirror_org.py +6 -4
- reconcile/quay_permissions.py +81 -75
- reconcile/quay_repos.py +35 -37
- reconcile/queries.py +1 -1
- reconcile/templates/rosa-classic-cluster-creation.sh.j2 +1 -1
- reconcile/templates/rosa-hcp-cluster-creation.sh.j2 +1 -1
- reconcile/templating/validator.py +4 -4
- reconcile/terraform_vpc_resources/integration.py +10 -7
- reconcile/terraform_vpc_resources/merge_request.py +12 -2
- reconcile/terraform_vpc_resources/merge_request_manager.py +43 -19
- reconcile/typed_queries/saas_files.py +9 -4
- reconcile/utils/environ.py +5 -0
- reconcile/utils/external_resource_spec.py +2 -0
- reconcile/utils/gitlab_api.py +12 -0
- reconcile/utils/jjb_client.py +19 -3
- reconcile/utils/oc.py +8 -2
- reconcile/utils/quay_api.py +74 -87
- reconcile/utils/terrascript_aws_client.py +140 -50
- reconcile/vpc_peerings_validator.py +13 -0
- {qontract_reconcile-0.10.2.dev430.dist-info → qontract_reconcile-0.10.2.dev474.dist-info}/entry_points.txt +0 -0
{qontract_reconcile-0.10.2.dev430.dist-info → qontract_reconcile-0.10.2.dev474.dist-info}/METADATA
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: qontract-reconcile
|
|
3
|
-
Version: 0.10.2.
|
|
3
|
+
Version: 0.10.2.dev474
|
|
4
4
|
Summary: Collection of tools to reconcile services with their desired state as defined in the app-interface DB.
|
|
5
5
|
Project-URL: homepage, https://github.com/app-sre/qontract-reconcile
|
|
6
6
|
Project-URL: repository, https://github.com/app-sre/qontract-reconcile
|
|
@@ -18,7 +18,7 @@ Requires-Dist: botocore==1.34.94
|
|
|
18
18
|
Requires-Dist: click<9.0,>=7.0
|
|
19
19
|
Requires-Dist: croniter<1.1.0,>=1.0.15
|
|
20
20
|
Requires-Dist: dateparser~=1.1.7
|
|
21
|
-
Requires-Dist: deepdiff==6.
|
|
21
|
+
Requires-Dist: deepdiff==8.6.1
|
|
22
22
|
Requires-Dist: dnspython~=2.1
|
|
23
23
|
Requires-Dist: dt==1.1.73
|
|
24
24
|
Requires-Dist: filetype~=1.2.0
|
{qontract_reconcile-0.10.2.dev430.dist-info → qontract_reconcile-0.10.2.dev474.dist-info}/RECORD
RENAMED
|
@@ -2,13 +2,13 @@ reconcile/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
|
2
2
|
reconcile/acs_policies.py,sha256=1LKnRRPa6h3QewsDhv0epINi9RJtQmT88mPgcU2LhDM,8667
|
|
3
3
|
reconcile/acs_rbac.py,sha256=HSX6wCKh7tW8iXuJa2OXLdOfiLjJb2R5AkaR6x6vDJg,22670
|
|
4
4
|
reconcile/aws_ami_share.py,sha256=JqevGzjLKlktRDeL01ukBko5ope5Xhl_0NvdjfGdENA,3503
|
|
5
|
-
reconcile/aws_ecr_image_pull_secrets.py,sha256=
|
|
5
|
+
reconcile/aws_ecr_image_pull_secrets.py,sha256=2WTCPaZFcERsE9sGMJINAlNoWuukcYj2TYCpgM5T0U4,2646
|
|
6
6
|
reconcile/aws_iam_keys.py,sha256=YHp-K8K8Dqm7vVKzry0RyhM6Egmpp7eCWMNdKk0vbME,4118
|
|
7
7
|
reconcile/aws_iam_password_reset.py,sha256=5oajSspJVAvpGd445hKsxtEGYb75dM4l1_PJTzrfHk0,3253
|
|
8
8
|
reconcile/aws_support_cases_sos.py,sha256=G9g0oM6ohvuJ5N592ePjiPeaDug4_vapAy58RyG-S3Y,3478
|
|
9
9
|
reconcile/blackbox_exporter_endpoint_monitoring.py,sha256=O1wFp52EyF538c6txaWBs8eMtUIy19gyHZ6VzJ6QXS8,3512
|
|
10
10
|
reconcile/checkpoint.py,sha256=Q5Ru36ZEwWw95ZkUXBf4VfvCmqDS9TcAF7QVroOf9Vk,5375
|
|
11
|
-
reconcile/cli.py,sha256=
|
|
11
|
+
reconcile/cli.py,sha256=EqwFVBlDDABGD0j35I4nnw2NSis1d3NqKrOi262B7v4,115258
|
|
12
12
|
reconcile/closedbox_endpoint_monitoring_base.py,sha256=_OKz7K7HHw0-gzxeEma8PcUCtd70pRBy7JMoaAm8IVU,4940
|
|
13
13
|
reconcile/cluster_deployment_mapper.py,sha256=aKroYLY6-nNxWi2jxDu7VRMuNZ3YgSI0J6ek7Fet2AQ,2241
|
|
14
14
|
reconcile/dashdotdb_base.py,sha256=83ZWIf5JJk3P_D69y2TmXRcQr6ELJGlv10OM0h7fJVs,4767
|
|
@@ -60,7 +60,7 @@ reconcile/openshift_clusterrolebindings.py,sha256=jwSaYQvUUY7noQGc148Dkqm6woYxvO
|
|
|
60
60
|
reconcile/openshift_groups.py,sha256=XpIyhgnWY1XUQio1wi6sHoDtoMYdk-lpHp0-1d1RC7o,9471
|
|
61
61
|
reconcile/openshift_limitranges.py,sha256=-MVmUWMMLUbX50GuZ-XClm4RIH8uIKNqAAMYD1IIs0I,4017
|
|
62
62
|
reconcile/openshift_namespace_labels.py,sha256=zjQNini7qgb-x_0QRBfD1zVBeX_5Pgk8ixDkBA4v488,16241
|
|
63
|
-
reconcile/openshift_namespaces.py,sha256=
|
|
63
|
+
reconcile/openshift_namespaces.py,sha256=xzFP5o4ZokqocRswAY_fpmTuu3K1HNOO5ENSqr5VfzU,5372
|
|
64
64
|
reconcile/openshift_network_policies.py,sha256=e6yo7F0zpeGySycqeK0ugzSmC_kn_5h4WX-trG5r8Bg,4718
|
|
65
65
|
reconcile/openshift_prometheus_rules.py,sha256=FVVx1D7KCUnNZh7NwVNbD6t4lXKRSO7ph5bvAXruPno,1417
|
|
66
66
|
reconcile/openshift_resourcequotas.py,sha256=0CSuCre3T2ON42Ku1UDhTRugfmUNBx8PILpxIQaAzJU,2882
|
|
@@ -82,13 +82,13 @@ reconcile/openshift_tekton_resources.py,sha256=5mUWEQqU9RpMLQZxHOb6IkbbZzx4iJnaV
|
|
|
82
82
|
reconcile/openshift_upgrade_watcher.py,sha256=93l8X1-RHNtL89GzPg1XWivWart49l_hpAVFChvT6Wg,6643
|
|
83
83
|
reconcile/openshift_users.py,sha256=lxHYrOhKntLnRy5mVZfh_8XWvwZaUgzrDNqkoon905U,5508
|
|
84
84
|
reconcile/openshift_vault_secrets.py,sha256=Ax-_EBWWU1VRHYyKaUkGJkIjHGwWM3bZgjXL5CkPW8k,1883
|
|
85
|
-
reconcile/quay_base.py,sha256=
|
|
86
|
-
reconcile/quay_membership.py,sha256=
|
|
85
|
+
reconcile/quay_base.py,sha256=4gNca076ICJ2fDoTwCgcA3L-DqmVmBgHWLCubTk78uc,2832
|
|
86
|
+
reconcile/quay_membership.py,sha256=tSS1j34RzoMXZJHmeuW3yVyM2E9onSha9SMJO3RcUMo,7694
|
|
87
87
|
reconcile/quay_mirror.py,sha256=vhPL44TMEsritkiJhNQLf2Ir45RLApdO_mh3aZV0OuI,14334
|
|
88
|
-
reconcile/quay_mirror_org.py,sha256=
|
|
89
|
-
reconcile/quay_permissions.py,sha256=
|
|
90
|
-
reconcile/quay_repos.py,sha256=
|
|
91
|
-
reconcile/queries.py,sha256=
|
|
88
|
+
reconcile/quay_mirror_org.py,sha256=9YeOpRsuTOWxnql1oj-rbUAkb_aGSlzmHVbMyLhSalM,11092
|
|
89
|
+
reconcile/quay_permissions.py,sha256=wsQZ5wi2jrlTlV3Aq3dn_mJpjMlcjnjVvFNflBFBdGk,4706
|
|
90
|
+
reconcile/quay_repos.py,sha256=JpR9vyvDIdKfP4EwLw1c2X53LOjLZY35pJ8AvNxZIGo,7674
|
|
91
|
+
reconcile/queries.py,sha256=nEko5_luE4Xoj-nBI1XEX3YRcxfAObtvqZbN7LSlJVY,56597
|
|
92
92
|
reconcile/query_validator.py,sha256=csOSkKxcf6ZlpchJu4ck2jLYKUN6y1l-UmSQUFHgssY,1618
|
|
93
93
|
reconcile/requests_sender.py,sha256=g-tlrudvIqhneQPDMrfYF0Xsq7BSW2QcBPirl7hFM6I,4058
|
|
94
94
|
reconcile/resource_scraper.py,sha256=TcMhXga7konX9x97NhpoijnDGWA-ZjdpiiXjm5qCmPk,2249
|
|
@@ -113,11 +113,12 @@ reconcile/terraform_tgw_attachments.py,sha256=zWDvTkjUp7iHgQpyolmJeg9YMaRuDlqgL1
|
|
|
113
113
|
reconcile/terraform_users.py,sha256=6ONjHoe1Pq4Xw1KPcFnCObxRQ3cjDIj0iDQAclVucSg,10882
|
|
114
114
|
reconcile/terraform_vpc_peerings.py,sha256=KNdlt4DvmobSd-9YP8TFUdkyTPPoUHcUaB5JRJvFsrU,28128
|
|
115
115
|
reconcile/vault_replication.py,sha256=vNPVO9J0EjH4nV7lvhLxet7V1L0m5KtejfoOYjGB1tw,19762
|
|
116
|
-
reconcile/vpc_peerings_validator.py,sha256=
|
|
116
|
+
reconcile/vpc_peerings_validator.py,sha256=f-u4YMAeWgKZpgzgqje4MqoHZI8SO-v1oR81Gbxc0-M,7658
|
|
117
117
|
reconcile/aus/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
118
118
|
reconcile/aus/advanced_upgrade_service.py,sha256=byOl5wtDRG_VJiN50IM3dwA9vQz39ibSEh9uY5HI9jE,24201
|
|
119
119
|
reconcile/aus/aus_label_source.py,sha256=o0S2f0qwcII_8nzhHZhRQ83gEZ1DrSXyO4xzSwLebuU,4382
|
|
120
|
-
reconcile/aus/
|
|
120
|
+
reconcile/aus/aus_sts_gate_handler.py,sha256=7MDHtd4G_t3_ItcnpfpqN7sI6QbFNJEFGJOibfALI-o,2075
|
|
121
|
+
reconcile/aus/base.py,sha256=NXknPntO9EwLTuQMyFxPVtw8r7d9IbwUg-GadDNOU5w,54078
|
|
121
122
|
reconcile/aus/cluster_version_data.py,sha256=rrMYtS-gSWwV4vibf3HKP06Hh3FHO4cBzhZzEInMRlo,7506
|
|
122
123
|
reconcile/aus/healthchecks.py,sha256=jR9c-syh9impnkV0fd6XW3Bnk7iRN5zv8oCRYM-yIRY,2700
|
|
123
124
|
reconcile/aus/metrics.py,sha256=BhIvZVTn25fIzijz3xFynJngS2sXDBTxxprUUVWJcFo,4246
|
|
@@ -127,22 +128,22 @@ reconcile/aus/ocm_addons_upgrade_scheduler_org.py,sha256=3Ezt-FGDKlK_bqaAVntMTr9
|
|
|
127
128
|
reconcile/aus/ocm_upgrade_scheduler.py,sha256=8gN_B_Jw6-ridTsIiMdVoD_mJupVyEIKGlIZWSC0GbQ,3945
|
|
128
129
|
reconcile/aus/ocm_upgrade_scheduler_org.py,sha256=RU_WRpCy7tCSm2JhNtb3eQBilvU9po42nkpYwcv1QT4,4482
|
|
129
130
|
reconcile/aus/upgrades.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
130
|
-
reconcile/aus/version_gate_approver.py,sha256=
|
|
131
|
+
reconcile/aus/version_gate_approver.py,sha256=_PxXDctxIvmMaXuyDCoaahtBar9GtgDubzl2IWfhtJ4,6711
|
|
131
132
|
reconcile/aus/version_gates/__init__.py,sha256=AlfmPhMbuuRnJloODTKTgPhM-iFSW3XKsJhbiewBT1s,454
|
|
132
133
|
reconcile/aus/version_gates/handler.py,sha256=S_isQPYHbG4DERiUEvQBZ6ngiFX3uMmATA-Q_eNKmFk,839
|
|
133
134
|
reconcile/aus/version_gates/ingress_gate_handler.py,sha256=ZCtyggBzzcb0prtdbMpJsVkj5leYN-vS7srM9vbq9xo,1096
|
|
134
135
|
reconcile/aus/version_gates/ocp_gate_handler.py,sha256=RW1ppDaCZXVegV9AzzqYXxDUu_Z_7d43Z5h2Pk_piKc,716
|
|
135
|
-
reconcile/aus/version_gates/sts_version_gate_handler.py,sha256=
|
|
136
|
+
reconcile/aus/version_gates/sts_version_gate_handler.py,sha256=RIEiISyRIO2SHiY7yLLtUWHlIfma-wCqrSQVcXzo06c,1111
|
|
136
137
|
reconcile/automated_actions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
137
138
|
reconcile/automated_actions/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
138
139
|
reconcile/automated_actions/config/integration.py,sha256=uvaZbLp4FQz3DHfr9dA77FyHaRJHTvJDgdqGp7wdCNg,15303
|
|
139
140
|
reconcile/aws_account_manager/README.md,sha256=_XFM3GZNHUzv--e_navqJuaUWpjC6QrHfulreHynFf0,262
|
|
140
141
|
reconcile/aws_account_manager/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
141
|
-
reconcile/aws_account_manager/integration.py,sha256=
|
|
142
|
+
reconcile/aws_account_manager/integration.py,sha256=qpqefqnq4sPtXW13LBL0D2a5wXdq44mZzi3JxJtM7P0,16042
|
|
142
143
|
reconcile/aws_account_manager/merge_request_manager.py,sha256=ePdn3c5MHZEW9iawgQWg7L5ydPLh0YZzfmRYV-rBCD8,3987
|
|
143
144
|
reconcile/aws_account_manager/metrics.py,sha256=YB10ea4kIGwJfs5N14RF-RoXPb-QQWaDBz1jLZ3YWE0,917
|
|
144
145
|
reconcile/aws_account_manager/reconciler.py,sha256=xbCih3aOFk_98Nxly7-W8QMrT67loTH2-HVyQudjH00,17162
|
|
145
|
-
reconcile/aws_account_manager/utils.py,sha256=
|
|
146
|
+
reconcile/aws_account_manager/utils.py,sha256=m40ntjpxREpVPuzJv4pCG3LWtojAeqEoPOfbeIbmQUU,1443
|
|
146
147
|
reconcile/aws_ami_cleanup/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
147
148
|
reconcile/aws_ami_cleanup/integration.py,sha256=NJhGzl9lMOG4VgYf8IsoZFJeYTRS1e5ORpHfIUEl3tA,9264
|
|
148
149
|
reconcile/aws_cloudwatch_log_retention/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -157,15 +158,15 @@ reconcile/aws_version_sync/utils.py,sha256=x-45QT7zAwdNvCg7w_qJNwLaksFcfz1_6KQoD
|
|
|
157
158
|
reconcile/aws_version_sync/merge_request_manager/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
158
159
|
reconcile/aws_version_sync/merge_request_manager/merge_request.py,sha256=2FbqLLdqxycWNvX1eNbwMjWSVBb7q0p-8t5Db0m7b4Q,4842
|
|
159
160
|
reconcile/aws_version_sync/merge_request_manager/merge_request_manager.py,sha256=7EwpSMsAYk41yEqb3uB_EjU73qqWeF28c7UTuQaNjUQ,5522
|
|
160
|
-
reconcile/change_owners/README.md,sha256=
|
|
161
|
+
reconcile/change_owners/README.md,sha256=ETmGkj1hRklv0EFoHTZ89NsM3yjta0ikoIPvjn96BZo,3944
|
|
161
162
|
reconcile/change_owners/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
162
163
|
reconcile/change_owners/approver.py,sha256=Z3_11vnK2WNOxjEEXVDh0224-_-qbt9d6mBeVE-7fsc,2259
|
|
163
164
|
reconcile/change_owners/bundle.py,sha256=6a51hi8yn2QwxQLQ4xc9zwlL5IT2sCbHriFuVJVeqzQ,5376
|
|
164
165
|
reconcile/change_owners/change_log_tracking.py,sha256=njIBC6pRb6U2GmeXxAAc_CruIfnDpEUhOp05DrPFsuk,9531
|
|
165
|
-
reconcile/change_owners/change_owners.py,sha256=
|
|
166
|
+
reconcile/change_owners/change_owners.py,sha256=Ay3KdLJBKH59xMdNYbiNTr2ow71bKPm0URiv4DjcB2M,18400
|
|
166
167
|
reconcile/change_owners/change_types.py,sha256=5eSvS2_npUriq9RN4LdAWdYUiNzF91K1pDUEVYDIQ4k,32023
|
|
167
168
|
reconcile/change_owners/changes.py,sha256=YTqwUYutQ6JVSSYmC2Ph5ROCiVix42Vnzy47-i57z4Q,18119
|
|
168
|
-
reconcile/change_owners/decision.py,sha256=
|
|
169
|
+
reconcile/change_owners/decision.py,sha256=WaT7ehJFYofsgSbbpabj3a5jniomxy8R4wQpb3xsdsw,7487
|
|
169
170
|
reconcile/change_owners/diff.py,sha256=xuyvnHcdRuQ8Twl0QST3rbbPo-hiH1uTycTet_AoT8k,8944
|
|
170
171
|
reconcile/change_owners/implicit_ownership.py,sha256=6BehZvx4IjrphmOt_LLLk9_02Fl5BY5jd00Wuz_PBZk,4234
|
|
171
172
|
reconcile/change_owners/self_service_roles.py,sha256=xSe5AKZxXAIo0vWOMM5hImQ_rd-dQ38y_5dG5L6X0so,9655
|
|
@@ -193,7 +194,7 @@ reconcile/external_resources/meta.py,sha256=RM8qGE6UoJR58nLqABReIJrrdmx4Tqt_Ocdl
|
|
|
193
194
|
reconcile/external_resources/metrics.py,sha256=ahvlgrc48B214NwBq-G6ncwQE3Qrtif61jtOrklfylQ,3903
|
|
194
195
|
reconcile/external_resources/model.py,sha256=Kfwxm9TLa6j7Vs-rxXQTIQoNmJPHilSJbjLdlQmNZc4,15172
|
|
195
196
|
reconcile/external_resources/reconciler.py,sha256=hb32ERLhxkNR-RRYWaE0ngjKjHBM8uarBy8bDVPGGmE,9732
|
|
196
|
-
reconcile/external_resources/secrets_sync.py,sha256=
|
|
197
|
+
reconcile/external_resources/secrets_sync.py,sha256=vdcy2Ydz67pKkSHT2U0-Ucu9cxMr99r15RovLTxmoZU,16162
|
|
197
198
|
reconcile/external_resources/state.py,sha256=zWla2_j6BI1FBrSPqRRfuo55bXK0QWAxtEeafb8ffTg,13811
|
|
198
199
|
reconcile/fleet_labeler/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
199
200
|
reconcile/fleet_labeler/dependencies.py,sha256=kS0E_Cm_RrOgCtyPBVO2KoFlUsE-U7uml4I8zA0bUoY,3238
|
|
@@ -213,7 +214,7 @@ reconcile/glitchtip_project_alerts/integration.py,sha256=prje61EOuLEIZLLxlJS_YN0
|
|
|
213
214
|
reconcile/glitchtip_project_dsn/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
214
215
|
reconcile/glitchtip_project_dsn/integration.py,sha256=3GgcqUM6hWhLpo9Yx5Xr9vrdexF-WNevVCNL9bJ0Upc,8162
|
|
215
216
|
reconcile/gql_definitions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
216
|
-
reconcile/gql_definitions/introspection.json,sha256=
|
|
217
|
+
reconcile/gql_definitions/introspection.json,sha256=liDjRAOJ0_ZN7bagOacrd1yGlybaxK8V9rQTflnecxo,2429961
|
|
217
218
|
reconcile/gql_definitions/acs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
218
219
|
reconcile/gql_definitions/acs/acs_instances.py,sha256=VySMcnWddg-jXj-bj_ddLIwLX3u1GSFUm02H8rJDBYU,2167
|
|
219
220
|
reconcile/gql_definitions/acs/acs_policies.py,sha256=jEV1U8j4VYL9ih17JSK1tiz2s_1CegVECmXU-NVEQvA,4333
|
|
@@ -229,7 +230,7 @@ reconcile/gql_definitions/app_sre_tekton_access_revalidation/users.py,sha256=9x3
|
|
|
229
230
|
reconcile/gql_definitions/automated_actions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
230
231
|
reconcile/gql_definitions/automated_actions/instance.py,sha256=w-68URz5Q5DVR_dAn13r5mP5YgtutdVHOv3LGQmfxxM,15810
|
|
231
232
|
reconcile/gql_definitions/aws_account_manager/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
232
|
-
reconcile/gql_definitions/aws_account_manager/aws_accounts.py,sha256=
|
|
233
|
+
reconcile/gql_definitions/aws_account_manager/aws_accounts.py,sha256=dc3zbFPHW3eUcG3PPSKK498p_Q3a3DuJmyfVOPkfWIk,5401
|
|
233
234
|
reconcile/gql_definitions/aws_ami_cleanup/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
234
235
|
reconcile/gql_definitions/aws_ami_cleanup/aws_accounts.py,sha256=XmJ-8_77QnATbeDmXzFiaLkWsxdlkbMWHlTlP9nTqfY,4226
|
|
235
236
|
reconcile/gql_definitions/aws_cloudwatch_log_retention/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -259,9 +260,9 @@ reconcile/gql_definitions/common/app_interface_state_settings.py,sha256=cIEPai2W
|
|
|
259
260
|
reconcile/gql_definitions/common/app_interface_vault_settings.py,sha256=7-waLtwgJ4kEzbGqeAX2KNNm_tG6FHyTTeUulii9q8k,1766
|
|
260
261
|
reconcile/gql_definitions/common/app_quay_repos_escalation_policies.py,sha256=iZilp3EExUuJvXRzHSlSyCnryVY0U60IDAXBn9XB70U,3231
|
|
261
262
|
reconcile/gql_definitions/common/apps.py,sha256=DrKG0TVW2a7OYPP8ZpTaeSRCpzcCF9Ea8zsR7CQVP9c,1863
|
|
262
|
-
reconcile/gql_definitions/common/aws_vpc_requests.py,sha256=
|
|
263
|
+
reconcile/gql_definitions/common/aws_vpc_requests.py,sha256=wDJf8Lb56pvNhixLF7SpQhUoLmJfIa9DXZTsWFurkac,2607
|
|
263
264
|
reconcile/gql_definitions/common/aws_vpcs.py,sha256=mbnK6yghV-q9Q7WbsCEatDQa3hySFFb8_3RBBrpQ7uM,1877
|
|
264
|
-
reconcile/gql_definitions/common/clusters.py,sha256=
|
|
265
|
+
reconcile/gql_definitions/common/clusters.py,sha256=WeJqFVTQG2UYsJlKNOCzDi4IaZacbRWQI0JLJ8ylLJY,22162
|
|
265
266
|
reconcile/gql_definitions/common/clusters_minimal.py,sha256=zJxvtO32n0fpYYru7xyUrh-r0zqYim0aItKEGSaEGA4,4616
|
|
266
267
|
reconcile/gql_definitions/common/clusters_with_dms.py,sha256=SJsNxpUppYR_4tEXB7_d0YXZmX8nlxm2JlpizmeROAM,2238
|
|
267
268
|
reconcile/gql_definitions/common/clusters_with_peering.py,sha256=yW0wJ7CHpNXZzRDFtmPNah7DhdQxDrwMLgmcpxbdIEU,11883
|
|
@@ -306,7 +307,7 @@ reconcile/gql_definitions/endpoints_discovery/apps.py,sha256=p3hvzvrtkCCQfQoJ3mi
|
|
|
306
307
|
reconcile/gql_definitions/external_resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
307
308
|
reconcile/gql_definitions/external_resources/aws_accounts.py,sha256=bRzfuPDLJvVJRx7IzqAJKnqpd7SBWdj3trI1rNPeYnU,2033
|
|
308
309
|
reconcile/gql_definitions/external_resources/external_resources_modules.py,sha256=w07PFh526GaYnZRe-SH92MaxA-aeD2TDT2kG_3Da_HE,3241
|
|
309
|
-
reconcile/gql_definitions/external_resources/external_resources_namespaces.py,sha256=
|
|
310
|
+
reconcile/gql_definitions/external_resources/external_resources_namespaces.py,sha256=DGKKoJK7rOng2FBan8vxunLdlysX9Hb9_GTPsm2wyf8,46616
|
|
310
311
|
reconcile/gql_definitions/external_resources/external_resources_settings.py,sha256=RvAMgipgH3MoLfWaqCPaYUy8GS3v0Dr4Cod17OsaNx0,3567
|
|
311
312
|
reconcile/gql_definitions/external_resources/fragments/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
312
313
|
reconcile/gql_definitions/external_resources/fragments/external_resources_module_overrides.py,sha256=jjABgAhVx7LO3NJd9l90JH8s-_TJFvduBZRbdVquLfY,1313
|
|
@@ -320,7 +321,7 @@ reconcile/gql_definitions/fragments/aws_account_sso.py,sha256=cUDUmS91J0sHXf7VcV
|
|
|
320
321
|
reconcile/gql_definitions/fragments/aws_infra_management_account.py,sha256=RnF4xXyND72Pf9DzRSJFpPf-QA5o9kHLc-6uqJDfe7Q,1249
|
|
321
322
|
reconcile/gql_definitions/fragments/aws_organization.py,sha256=cUgkSoluksDiUH8B6SB-EM7jPTTcV63TtbVu8mPVvSc,878
|
|
322
323
|
reconcile/gql_definitions/fragments/aws_vpc.py,sha256=od8N59ekpALXbu1AQZ41Vfl4FSw7lDc6jYSJ8Xhj-NM,1429
|
|
323
|
-
reconcile/gql_definitions/fragments/aws_vpc_request.py,sha256=
|
|
324
|
+
reconcile/gql_definitions/fragments/aws_vpc_request.py,sha256=o0-EXt-KU6x_nVrgi-SzVzxNJE-9OTUTtODkN5k6Qb0,3049
|
|
324
325
|
reconcile/gql_definitions/fragments/container_image_mirror.py,sha256=3JRKT4RyKytxLB-XJbZbaYq1fOK3BPzVmEt9bdcD_p4,963
|
|
325
326
|
reconcile/gql_definitions/fragments/deploy_resources.py,sha256=ef1XZLLxm0ejV_FD4LSn_fFF-iZJaxiXOr3we2WDRLo,1084
|
|
326
327
|
reconcile/gql_definitions/fragments/disable.py,sha256=6Kn2S5wIx8vlOVfLLW5pAbPgjAFHuNCsX4Q5Khq5upM,710
|
|
@@ -426,7 +427,7 @@ reconcile/gql_definitions/terraform_repo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5
|
|
|
426
427
|
reconcile/gql_definitions/terraform_repo/terraform_repo.py,sha256=vocF7fpLk4Rdz1maZ2Hi_d5l4bt3kuL2HyDGvFIUu8M,3868
|
|
427
428
|
reconcile/gql_definitions/terraform_resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
428
429
|
reconcile/gql_definitions/terraform_resources/database_access_manager.py,sha256=17CC1Wk65HtBn45Bo6iGsFNaLOnKD03MV3QQtixFtPw,4808
|
|
429
|
-
reconcile/gql_definitions/terraform_resources/terraform_resources_namespaces.py,sha256=
|
|
430
|
+
reconcile/gql_definitions/terraform_resources/terraform_resources_namespaces.py,sha256=oaLnYx6FtG33zDtE2TN8_iPXFfP8mRvPivYtoPo_8M8,44764
|
|
430
431
|
reconcile/gql_definitions/terraform_tgw_attachments/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
431
432
|
reconcile/gql_definitions/terraform_tgw_attachments/aws_accounts.py,sha256=VVWXcTGrHlZ8xqAf7p9Ygocwkm7dWZRaO_B6d_SamCc,2719
|
|
432
433
|
reconcile/gql_definitions/unleash_feature_toggles/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -436,8 +437,8 @@ reconcile/gql_definitions/vault_instances/vault_instances.py,sha256=ADl8D76G42t6
|
|
|
436
437
|
reconcile/gql_definitions/vault_policies/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
437
438
|
reconcile/gql_definitions/vault_policies/vault_policies.py,sha256=lz3KG_T9BchfQrMpQitIu5-E1oUTkH8faHlO2zerNcg,1885
|
|
438
439
|
reconcile/gql_definitions/vpc_peerings_validator/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
439
|
-
reconcile/gql_definitions/vpc_peerings_validator/vpc_peerings_validator.py,sha256=
|
|
440
|
-
reconcile/gql_definitions/vpc_peerings_validator/vpc_peerings_validator_peered_cluster_fragment.py,sha256=
|
|
440
|
+
reconcile/gql_definitions/vpc_peerings_validator/vpc_peerings_validator.py,sha256=u_fmb8tO1sz4o4FZEaVnbOEc8INhI9BXx4DywjUmfXc,4658
|
|
441
|
+
reconcile/gql_definitions/vpc_peerings_validator/vpc_peerings_validator_peered_cluster_fragment.py,sha256=rJxKDhu8A30PWuuEFmqu6LumHowAkIsJCMfqRiFkU1Y,1189
|
|
441
442
|
reconcile/ldap_groups/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
442
443
|
reconcile/ldap_groups/integration.py,sha256=kDKGtgxECR-SgINWQ3Wsjb53jdjoPtqO533WcERVV_U,10628
|
|
443
444
|
reconcile/ocm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -502,11 +503,11 @@ reconcile/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
|
|
|
502
503
|
reconcile/templates/aws_access_key_email.j2,sha256=2MUr1ERmyISzKgHqsWYLd-1Wbl-peUa-FsGUS-JLUFc,238
|
|
503
504
|
reconcile/templates/email.yml.j2,sha256=MknE9rEeVRCvyh1JnelQ5dBtiV0CPPq9dqu_N7WsEms,682
|
|
504
505
|
reconcile/templates/jira-checkpoint-missinginfo.j2,sha256=c_Vvg-lEENsB3tgxm9B6Y9igCUQhCnFDYh6xw-zcIbU,570
|
|
505
|
-
reconcile/templates/rosa-classic-cluster-creation.sh.j2,sha256=
|
|
506
|
-
reconcile/templates/rosa-hcp-cluster-creation.sh.j2,sha256=
|
|
506
|
+
reconcile/templates/rosa-classic-cluster-creation.sh.j2,sha256=7VlxlKpqIA9Pq7SMnaWsNH1iXvE-LEH0_Dlof8drXHA,2122
|
|
507
|
+
reconcile/templates/rosa-hcp-cluster-creation.sh.j2,sha256=UbLexFWBsDbSUUe3-5S5aLaH1u_t8ikZnoKd5QTk_ro,2376
|
|
507
508
|
reconcile/templating/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
508
509
|
reconcile/templating/renderer.py,sha256=nR1CM3DDOoLOH7UOxO0PMDkOmhiYFbGriKcjDA-Z8j8,14810
|
|
509
|
-
reconcile/templating/validator.py,sha256=
|
|
510
|
+
reconcile/templating/validator.py,sha256=cyvSNsQqheIBl78HHDu4u_H82rt0zC8_YZL5BtT_Y1w,5266
|
|
510
511
|
reconcile/templating/lib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
511
512
|
reconcile/templating/lib/merge_request_manager.py,sha256=MaEI9Vrtblb5LIpaa394ACut0Rq_gzxJTfNVSgG113o,5234
|
|
512
513
|
reconcile/templating/lib/model.py,sha256=YVUIXuPny3_kpFgBMSud8q_ndY5o882wKiX0l0A14L4,481
|
|
@@ -516,9 +517,9 @@ reconcile/terraform_init/integration.py,sha256=_MtGrxLcBvZaOQEFBPrzkllSYrnSW1hdt
|
|
|
516
517
|
reconcile/terraform_init/merge_request.py,sha256=3CYtgSd7Q9zjKg4wsDz437EPCRfGeZZ8fZ0Y-ChKXJY,1475
|
|
517
518
|
reconcile/terraform_init/merge_request_manager.py,sha256=TQmtHq4DH-xgyYvuRyGu7VEgjPU2Yjj-uexIy-L7i88,3098
|
|
518
519
|
reconcile/terraform_vpc_resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
519
|
-
reconcile/terraform_vpc_resources/integration.py,sha256=
|
|
520
|
-
reconcile/terraform_vpc_resources/merge_request.py,sha256=
|
|
521
|
-
reconcile/terraform_vpc_resources/merge_request_manager.py,sha256=
|
|
520
|
+
reconcile/terraform_vpc_resources/integration.py,sha256=q5il4l4Bd9fmCQePy4XSy5R3nokVvcz1v2znwadelhU,9703
|
|
521
|
+
reconcile/terraform_vpc_resources/merge_request.py,sha256=MFRG7JQojmCTgr-9rLXVotcjH9mMIZZ0-kPai9UDJWA,1732
|
|
522
|
+
reconcile/terraform_vpc_resources/merge_request_manager.py,sha256=erCC9aY-gWMCVeLrFxG5_q3G2p3iVBS8eeYIUZR_6_o,4123
|
|
522
523
|
reconcile/typed_queries/__init__.py,sha256=rRk4CyslLsBr4vAh1pIPgt6s3P4R1M9NSEPLnyQgBpk,61
|
|
523
524
|
reconcile/typed_queries/alerting_services_settings.py,sha256=YKQd60O_2C_H103nLrYgcUInndM2vFypqW_NO706L2E,833
|
|
524
525
|
reconcile/typed_queries/app_interface_custom_messages.py,sha256=bgSAJEzqee8aiPVCj_bIIqb4VTkrF0-vti1dos7ebEg,684
|
|
@@ -559,7 +560,7 @@ reconcile/typed_queries/quay.py,sha256=3IMy9jjHF2f9t47EXZOQVA3p0nFkWFhaFhxhvib-7
|
|
|
559
560
|
reconcile/typed_queries/repos.py,sha256=8A93dKDt6igT4ClqMjt7YUTsoP4qh1Wnm0W3xsMgj48,824
|
|
560
561
|
reconcile/typed_queries/reserved_networks.py,sha256=XY9y3amtIQT0n06O0Toubqr_UmylJ2ELAv9-BJCK890,345
|
|
561
562
|
reconcile/typed_queries/rhcs_provider_settings.py,sha256=fxD84CPCiH25_qc02p48LOIJHv39Wlc1VwOhs9ZVsKk,743
|
|
562
|
-
reconcile/typed_queries/saas_files.py,sha256=
|
|
563
|
+
reconcile/typed_queries/saas_files.py,sha256=yVJiba_kIKYaRqSxXovNC2Zupf-KfWoVWQdOmeD1ccY,14666
|
|
563
564
|
reconcile/typed_queries/slack.py,sha256=r30lspctHloyygPn8_DVybxPwUWwiBpvBRRXiTVcQYk,251
|
|
564
565
|
reconcile/typed_queries/slo_documents.py,sha256=YMdox_-lBRqrdxamPhdnUlRTY_Ro35ptsupq7OaynUQ,362
|
|
565
566
|
reconcile/typed_queries/smtp.py,sha256=aSLglYa5bHKmlGwKkxq2RZqyMWuAf0a4S_mOuhDa084,542
|
|
@@ -599,16 +600,16 @@ reconcile/utils/disabled_integrations.py,sha256=z1ZGUOKjZ99R-YZ68w1xnLQ_wUccI27N
|
|
|
599
600
|
reconcile/utils/dnsutils.py,sha256=Zit4U-DAt_6AD4NVvic3I7EO5DdjNEeu8Qn_x84i-44,258
|
|
600
601
|
reconcile/utils/early_exit_cache.py,sha256=D69if1mu4qD9NuoR7FHSlkTZvrabRoFH70b2YmjAFvU,8767
|
|
601
602
|
reconcile/utils/elasticsearch_exceptions.py,sha256=4lwms6yjDYJzhD_xXgb96Juax5DHp_LXEUaME6t59A4,578
|
|
602
|
-
reconcile/utils/environ.py,sha256=
|
|
603
|
+
reconcile/utils/environ.py,sha256=UOYbV7K1MpU7lwcjslKB7oJ7Ek8pOAwf12fA2lV9LM4,818
|
|
603
604
|
reconcile/utils/exceptions.py,sha256=2cKJD01d_uZM_j0CTcvDoo-WDisZJVYaeY2KUbfUHCc,686
|
|
604
605
|
reconcile/utils/expiration.py,sha256=6GrQp-sYDKf6scuzzUPxSS8_q_6IiQyjcdvZEVQZzGc,1353
|
|
605
606
|
reconcile/utils/extended_early_exit.py,sha256=QSktrmfw37zSRMNk930tDbQsVeKxaPPPD43e79DGwZw,6754
|
|
606
|
-
reconcile/utils/external_resource_spec.py,sha256=
|
|
607
|
+
reconcile/utils/external_resource_spec.py,sha256=itiV8s87pD5LZ7Xx_rMTf3P-VsEdR7F5Sh7EDXJIGdE,8309
|
|
607
608
|
reconcile/utils/external_resources.py,sha256=YzTb0xAcNdmKO326mGQy7BmST56CZcdru4lX7ai_7kw,7579
|
|
608
609
|
reconcile/utils/filtering.py,sha256=rvCr0drVeD9x4yVox-kvbHEufBktlz3yyQjM-y3IJsM,422
|
|
609
610
|
reconcile/utils/git.py,sha256=o4p9m8jlzCJDcutl2HErvGLhL6sZ1NB4Aw3zGcQIzso,2427
|
|
610
611
|
reconcile/utils/github_api.py,sha256=S1vO-hvYPzm5BIychVIHSYibMns0HBmLgS78MkPfunE,3402
|
|
611
|
-
reconcile/utils/gitlab_api.py,sha256=
|
|
612
|
+
reconcile/utils/gitlab_api.py,sha256=bwJ605-Sef9i9EdlqDKeBqd6Y606rNQ_a3sQ4TvIqDc,29039
|
|
612
613
|
reconcile/utils/gpg.py,sha256=VCNERVnIFZtIu62VbBtM_MtokTPVQ0bsCWs2evGKLeo,1254
|
|
613
614
|
reconcile/utils/gql.py,sha256=68PGQE1Cm0tDwVawrnz4qvcSWNKcd2NO5zXQhZLAyPs,14562
|
|
614
615
|
reconcile/utils/grouping.py,sha256=vr9SFHZ7bqmHYrvYcEZt-Er3-yQYfAAdq5sHLZVmXPY,456
|
|
@@ -618,7 +619,7 @@ reconcile/utils/imap_client.py,sha256=sJSBBCObR34JTk70raIkJYXZbmEOOyc8IDQ1CrcSO1
|
|
|
618
619
|
reconcile/utils/instrumented_wrappers.py,sha256=BwJBirum_ISxDy1Zf1_90PaQ9Q5JSp0TInv26CmkjiE,1935
|
|
619
620
|
reconcile/utils/jenkins_api.py,sha256=A7J2AnOxHHZfA-dqjUCtFgy4145peA7WwUvRIXjR5Qo,8623
|
|
620
621
|
reconcile/utils/jira_client.py,sha256=dEDGFxJYF_JmbqD72qLeTWyUhVQ-YTgBqTr6UMrdn1c,11777
|
|
621
|
-
reconcile/utils/jjb_client.py,sha256=
|
|
622
|
+
reconcile/utils/jjb_client.py,sha256=4YyfvQj7Uh7bJ1boczvOo9yrbWUfEDjGjlISw6HW8OE,16917
|
|
622
623
|
reconcile/utils/json.py,sha256=okNqZCz_R54TL4WCTrnsxpdI11VB7wKTSMu7OrKjaAo,2045
|
|
623
624
|
reconcile/utils/jsonpath.py,sha256=wdxOMqR-GMpQf5vRPWRMqAF7bCiXDBkkcFfY2U4j_tk,5536
|
|
624
625
|
reconcile/utils/jump_host.py,sha256=gi8vGUDgdTVwJvROvRVauFxtL0YAramhbWvG70L7AY8,5137
|
|
@@ -629,7 +630,7 @@ reconcile/utils/make.py,sha256=QaEwucrzbl8-VHS66Wfdjfo0ubmAcvt_hZGpiGsKU50,231
|
|
|
629
630
|
reconcile/utils/metrics.py,sha256=2aqd17TUMXdU8FbsZp4YG5EyBcI8ztehdUIAS1u70p0,18506
|
|
630
631
|
reconcile/utils/models.py,sha256=XqIwR-XMNhZ7m-jpfrQhuxC5TkFUMoCO5ShqUHuV3Bk,14560
|
|
631
632
|
reconcile/utils/oauth2_backend_application_session.py,sha256=6W16sMpnWEPFDUX7qi5Cui2yOnmLfpgUxWtB3Ii35D0,4177
|
|
632
|
-
reconcile/utils/oc.py,sha256=
|
|
633
|
+
reconcile/utils/oc.py,sha256=rZlb-6aekfKwNB3lVQ98N8AIMGdQES5xWBZs5yVTyW4,70005
|
|
633
634
|
reconcile/utils/oc_connection_parameters.py,sha256=-H2crz0UOVKWlNrexf04ip8Vu57rE2QZLJuurvin1_c,9705
|
|
634
635
|
reconcile/utils/oc_filters.py,sha256=DXIA2--jlYadPGsKynnnXW_LIZra6N2wmD0MVngir5Y,1427
|
|
635
636
|
reconcile/utils/oc_map.py,sha256=ougQ-Wlsa8ymoE_lPQ7g2LlpsUOsHVeRCLYW_6fjeWU,8976
|
|
@@ -643,7 +644,7 @@ reconcile/utils/password_validator.py,sha256=knR6jJGc-v44v-hhQFvpYrEubuFfCCc3Qly
|
|
|
643
644
|
reconcile/utils/prometheus.py,sha256=Ad0rwLbxRuuYjHwkwJloHEdK0bvy42h-p-HIT1DhDhs,3832
|
|
644
645
|
reconcile/utils/promotion_state.py,sha256=4NTBswYkzxlJIIkMz4j92dOj-jn0m36DKQg8CqZEyo8,3910
|
|
645
646
|
reconcile/utils/promtool.py,sha256=YnqwMAzsQVGuBZ1j9zy3UcVPFQVJgBMLzQkxhK_KFkU,3079
|
|
646
|
-
reconcile/utils/quay_api.py,sha256=
|
|
647
|
+
reconcile/utils/quay_api.py,sha256=zlzM-1_GsVSQVd2z0SMwx3uv5wqzZ7JUKE5ZOqQPKXc,7728
|
|
647
648
|
reconcile/utils/quay_mirror.py,sha256=dpWCNv5lITwIk6Q9RkmqaQKHNk_JPy27UQEribJ7E-U,1324
|
|
648
649
|
reconcile/utils/raw_github_api.py,sha256=ZUDtOxdMSMs-Z0noKi0pyMtXHi5V2nCMFDB5JIM_oQ0,3057
|
|
649
650
|
reconcile/utils/repo_owners.py,sha256=c6Z-U5TkiRPvuhr_zYWvZG9HZGzoT-l-d2PJ33lGflE,6507
|
|
@@ -661,7 +662,7 @@ reconcile/utils/sqs_gateway.py,sha256=GoStXLTP75zBQIL0ntwVy1oHOquY3XHtadybzifLdX
|
|
|
661
662
|
reconcile/utils/state.py,sha256=kOI5ZorbJKWomQbnOql7uBuO7A0zQu54tUxUTZ2lEKE,16416
|
|
662
663
|
reconcile/utils/structs.py,sha256=ZS3mYM3s188lfLZjcWpOoIpU8Xq76sxaapgRHJCdF-g,377
|
|
663
664
|
reconcile/utils/terraform_client.py,sha256=VexlnYM9h-2-g6Y8HiE48BFi8AX-mYLhIapl2G2PUPQ,37769
|
|
664
|
-
reconcile/utils/terrascript_aws_client.py,sha256=
|
|
665
|
+
reconcile/utils/terrascript_aws_client.py,sha256=qazXB2Re1DFReDcHwplcIF7_SmlE__z0XJv6hvd0L50,307485
|
|
665
666
|
reconcile/utils/three_way_diff_strategy.py,sha256=yDEbP3HWvDDVzo_8FEbcT0pA6lz72HviXZkh5wmzkkY,4837
|
|
666
667
|
reconcile/utils/throughput.py,sha256=KNDCVsCLSp89V4pO3sEUd7bJUuh6gNfsxsc_18rEv_Y,357
|
|
667
668
|
reconcile/utils/vault.py,sha256=e5zo-PmqG6ccp87-Ip6d3_RPZ1eZEtawS1WbRAVP73Y,15366
|
|
@@ -801,7 +802,7 @@ tools/saas_promotion_state/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJ
|
|
|
801
802
|
tools/saas_promotion_state/saas_promotion_state.py,sha256=uQv2QJAmUXP1g2GPIH30WTlvL9soY6m9lefpZEVDM5w,3965
|
|
802
803
|
tools/sre_checkpoints/__init__.py,sha256=CDaDaywJnmRCLyl_NCcvxi-Zc0hTi_3OdwKiFOyS39I,145
|
|
803
804
|
tools/sre_checkpoints/util.py,sha256=KcYVfa3UmJHVP_ocgrKe8NkrO5IDB9aWEDydSokPcRk,975
|
|
804
|
-
qontract_reconcile-0.10.2.
|
|
805
|
-
qontract_reconcile-0.10.2.
|
|
806
|
-
qontract_reconcile-0.10.2.
|
|
807
|
-
qontract_reconcile-0.10.2.
|
|
805
|
+
qontract_reconcile-0.10.2.dev474.dist-info/METADATA,sha256=oYW2fCk5f3JAjGbdGytQi68vJr65LZHBBT-U3Gi_JLQ,24948
|
|
806
|
+
qontract_reconcile-0.10.2.dev474.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
807
|
+
qontract_reconcile-0.10.2.dev474.dist-info/entry_points.txt,sha256=5i9l54La3vQrDLAdwDKQWC0iG4sV9RRfOb1BpvzOWLc,698
|
|
808
|
+
qontract_reconcile-0.10.2.dev474.dist-info/RECORD,,
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import logging
|
|
2
|
+
|
|
3
|
+
from reconcile.utils.jobcontroller.controller import K8sJobController
|
|
4
|
+
from reconcile.utils.ocm.base import OCMCluster
|
|
5
|
+
from reconcile.utils.ocm_base_client import OCMBaseClient
|
|
6
|
+
from reconcile.utils.rosa.rosa_cli import RosaCliError
|
|
7
|
+
from reconcile.utils.rosa.session import RosaSession
|
|
8
|
+
from reconcile.utils.semver_helper import get_version_prefix
|
|
9
|
+
|
|
10
|
+
STS_GATE_LABEL = "api.openshift.com/gate-sts"
|
|
11
|
+
AUS_VERSION_GATE_APPROVALS_LABEL = "sre-capabilities.aus.version-gate-approvals"
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class AUSSTSGateHandler:
|
|
15
|
+
def __init__(
|
|
16
|
+
self,
|
|
17
|
+
job_controller: K8sJobController,
|
|
18
|
+
aws_iam_role: str,
|
|
19
|
+
rosa_job_service_account: str | None = None,
|
|
20
|
+
rosa_job_image: str | None = None,
|
|
21
|
+
) -> None:
|
|
22
|
+
self.job_controller = job_controller
|
|
23
|
+
self.aws_iam_role = aws_iam_role
|
|
24
|
+
self.rosa_job_image = rosa_job_image
|
|
25
|
+
self.rosa_job_service_account = rosa_job_service_account
|
|
26
|
+
|
|
27
|
+
def upgrade_rosa_roles(
|
|
28
|
+
self,
|
|
29
|
+
cluster: OCMCluster,
|
|
30
|
+
upgrade_version: str,
|
|
31
|
+
dry_run: bool,
|
|
32
|
+
ocm_api: OCMBaseClient,
|
|
33
|
+
ocm_org_id: str,
|
|
34
|
+
) -> bool:
|
|
35
|
+
if not cluster.aws:
|
|
36
|
+
return False
|
|
37
|
+
rosa = RosaSession(
|
|
38
|
+
aws_account_id=cluster.aws.aws_account_id,
|
|
39
|
+
aws_region=cluster.region.id,
|
|
40
|
+
aws_iam_role=self.aws_iam_role,
|
|
41
|
+
ocm_org_id=ocm_org_id,
|
|
42
|
+
ocm_api=ocm_api,
|
|
43
|
+
job_controller=self.job_controller,
|
|
44
|
+
image=self.rosa_job_image,
|
|
45
|
+
service_account=self.rosa_job_service_account,
|
|
46
|
+
)
|
|
47
|
+
policy_version = get_version_prefix(upgrade_version)
|
|
48
|
+
try:
|
|
49
|
+
rosa.upgrade_rosa_roles(
|
|
50
|
+
cluster_name=cluster.name,
|
|
51
|
+
upgrade_version=upgrade_version,
|
|
52
|
+
policy_version=policy_version,
|
|
53
|
+
dry_run=dry_run,
|
|
54
|
+
)
|
|
55
|
+
except RosaCliError as e:
|
|
56
|
+
logging.error(f"Failed to upgrade roles for cluster {cluster.name}: {e}")
|
|
57
|
+
e.write_logs_to_logger(logging.error)
|
|
58
|
+
return False
|
|
59
|
+
return True
|
reconcile/aus/base.py
CHANGED
|
@@ -20,6 +20,11 @@ from pydantic import BaseModel
|
|
|
20
20
|
from requests.exceptions import HTTPError
|
|
21
21
|
from semver import VersionInfo
|
|
22
22
|
|
|
23
|
+
from reconcile.aus.aus_sts_gate_handler import (
|
|
24
|
+
AUS_VERSION_GATE_APPROVALS_LABEL,
|
|
25
|
+
STS_GATE_LABEL,
|
|
26
|
+
AUSSTSGateHandler,
|
|
27
|
+
)
|
|
23
28
|
from reconcile.aus.cluster_version_data import (
|
|
24
29
|
VersionData,
|
|
25
30
|
VersionDataMap,
|
|
@@ -46,7 +51,7 @@ from reconcile.aus.models import (
|
|
|
46
51
|
OrganizationUpgradeSpec,
|
|
47
52
|
Sector,
|
|
48
53
|
)
|
|
49
|
-
from reconcile.aus.version_gates import HANDLERS
|
|
54
|
+
from reconcile.aus.version_gates import HANDLERS
|
|
50
55
|
from reconcile.gql_definitions.advanced_upgrade_service.aus_organization import (
|
|
51
56
|
query as aus_organizations_query,
|
|
52
57
|
)
|
|
@@ -113,8 +118,6 @@ from reconcile.utils.semver_helper import (
|
|
|
113
118
|
from reconcile.utils.state import init_state
|
|
114
119
|
|
|
115
120
|
MIN_DELTA_MINUTES = 6
|
|
116
|
-
STS_GATE_LABEL = "api.openshift.com/gate-sts"
|
|
117
|
-
AUS_VERSION_GATE_APPROVALS_LABEL = "sre-capabilities.aus.version-gate-approvals"
|
|
118
121
|
|
|
119
122
|
|
|
120
123
|
class RosaRoleUpgradeHandlerParams(PydanticRunParams):
|
|
@@ -457,9 +460,6 @@ class AddonUpgradePolicy(AbstractUpgradePolicy, arbitrary_types_allowed=True):
|
|
|
457
460
|
addon_id: str
|
|
458
461
|
addon_service: AddonService
|
|
459
462
|
|
|
460
|
-
class Config:
|
|
461
|
-
arbitrary_types_allowed = True
|
|
462
|
-
|
|
463
463
|
def create(
|
|
464
464
|
self,
|
|
465
465
|
ocm_api: OCMBaseClient,
|
|
@@ -518,7 +518,7 @@ class ClusterUpgradePolicy(AbstractUpgradePolicy):
|
|
|
518
518
|
and self.should_upgrade_roles()
|
|
519
519
|
):
|
|
520
520
|
logging.info(f"Updating account and operator roles for {self.cluster.name}")
|
|
521
|
-
|
|
521
|
+
aus_sts_gate_handler = AUSSTSGateHandler(
|
|
522
522
|
job_controller=build_job_controller(
|
|
523
523
|
integration=rosa_role_upgrade_handler_params.integration_name,
|
|
524
524
|
integration_version=rosa_role_upgrade_handler_params.integration_version,
|
|
@@ -531,7 +531,7 @@ class ClusterUpgradePolicy(AbstractUpgradePolicy):
|
|
|
531
531
|
rosa_job_service_account=rosa_role_upgrade_handler_params.rosa_job_service_account,
|
|
532
532
|
rosa_job_image=rosa_role_upgrade_handler_params.rosa_job_image,
|
|
533
533
|
)
|
|
534
|
-
if not
|
|
534
|
+
if not aus_sts_gate_handler.upgrade_rosa_roles(
|
|
535
535
|
ocm_api=ocm_api,
|
|
536
536
|
cluster=self.cluster,
|
|
537
537
|
dry_run=False,
|
|
@@ -549,6 +549,7 @@ class ClusterUpgradePolicy(AbstractUpgradePolicy):
|
|
|
549
549
|
)
|
|
550
550
|
if not handler_csv:
|
|
551
551
|
return False
|
|
552
|
+
|
|
552
553
|
return (
|
|
553
554
|
self.cluster.is_sts()
|
|
554
555
|
and self.cluster.is_rosa_classic()
|
|
@@ -14,9 +14,6 @@ from reconcile.gql_definitions.common.ocm_environments import (
|
|
|
14
14
|
)
|
|
15
15
|
from reconcile.utils import gql
|
|
16
16
|
from reconcile.utils.grouping import group_by
|
|
17
|
-
from reconcile.utils.jobcontroller.controller import (
|
|
18
|
-
build_job_controller,
|
|
19
|
-
)
|
|
20
17
|
from reconcile.utils.ocm.base import (
|
|
21
18
|
ClusterDetails,
|
|
22
19
|
LabelContainer,
|
|
@@ -63,19 +60,7 @@ class VersionGateApprover(QontractReconcileIntegration[VersionGateApproverParams
|
|
|
63
60
|
|
|
64
61
|
def initialize_handlers(self, query_func: Callable) -> None:
|
|
65
62
|
self.handlers: dict[str, GateHandler] = {
|
|
66
|
-
sts_version_gate_handler.GATE_LABEL: sts_version_gate_handler.STSGateHandler(
|
|
67
|
-
job_controller=build_job_controller(
|
|
68
|
-
integration=QONTRACT_INTEGRATION,
|
|
69
|
-
integration_version=QONTRACT_INTEGRATION_VERSION,
|
|
70
|
-
cluster=self.params.job_controller_cluster,
|
|
71
|
-
namespace=self.params.job_controller_namespace,
|
|
72
|
-
secret_reader=self.secret_reader,
|
|
73
|
-
dry_run=False,
|
|
74
|
-
),
|
|
75
|
-
aws_iam_role=self.params.rosa_role,
|
|
76
|
-
rosa_job_service_account=self.params.rosa_job_service_account,
|
|
77
|
-
rosa_job_image=self.params.rosa_job_image,
|
|
78
|
-
),
|
|
63
|
+
sts_version_gate_handler.GATE_LABEL: sts_version_gate_handler.STSGateHandler(),
|
|
79
64
|
ocp_gate_handler.GATE_LABEL: ocp_gate_handler.OCPGateHandler(),
|
|
80
65
|
ingress_gate_handler.GATE_LABEL: ingress_gate_handler.IngressGateHandler(),
|
|
81
66
|
}
|
|
@@ -1,28 +1,16 @@
|
|
|
1
|
-
import logging
|
|
2
|
-
|
|
3
1
|
from reconcile.aus.version_gates.handler import GateHandler
|
|
4
|
-
from reconcile.utils.jobcontroller.controller import K8sJobController
|
|
5
2
|
from reconcile.utils.ocm.base import OCMCluster, OCMVersionGate
|
|
6
3
|
from reconcile.utils.ocm_base_client import OCMBaseClient
|
|
7
|
-
from reconcile.utils.rosa.rosa_cli import RosaCliError
|
|
8
|
-
from reconcile.utils.rosa.session import RosaSession
|
|
9
|
-
from reconcile.utils.semver_helper import get_version_prefix
|
|
10
4
|
|
|
11
5
|
GATE_LABEL = "api.openshift.com/gate-sts"
|
|
12
6
|
|
|
13
7
|
|
|
14
8
|
class STSGateHandler(GateHandler):
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
rosa_job_image: str | None = None,
|
|
21
|
-
) -> None:
|
|
22
|
-
self.job_controller = job_controller
|
|
23
|
-
self.aws_iam_role = aws_iam_role
|
|
24
|
-
self.rosa_job_image = rosa_job_image
|
|
25
|
-
self.rosa_job_service_account = rosa_job_service_account
|
|
9
|
+
"""
|
|
10
|
+
This handler is used to handle the STS version gate.
|
|
11
|
+
Right now we just ack all gate-sts gates
|
|
12
|
+
The actual job of role upgrade is now a part of AUS and is handled by the AUSSTSGateHandler.
|
|
13
|
+
"""
|
|
26
14
|
|
|
27
15
|
@staticmethod
|
|
28
16
|
def gate_applicable_to_cluster(cluster: OCMCluster) -> bool:
|
|
@@ -42,112 +30,4 @@ class STSGateHandler(GateHandler):
|
|
|
42
30
|
gate: OCMVersionGate,
|
|
43
31
|
dry_run: bool,
|
|
44
32
|
) -> bool:
|
|
45
|
-
if (
|
|
46
|
-
not cluster.id
|
|
47
|
-
or not cluster.aws
|
|
48
|
-
or not cluster.aws.sts
|
|
49
|
-
or not cluster.is_sts()
|
|
50
|
-
):
|
|
51
|
-
# checked already but mypy :/
|
|
52
|
-
return False
|
|
53
|
-
|
|
54
|
-
if cluster.is_rosa_hypershift():
|
|
55
|
-
# thanks to hypershift managed policies, there is nothing to do for us here
|
|
56
|
-
# returning True will ack the version gate
|
|
57
|
-
return True
|
|
58
|
-
if not cluster.is_rosa_classic():
|
|
59
|
-
# we manage roels only for rosa classic clusters
|
|
60
|
-
# returning here will prevent OSD STS clusters to be handled right now
|
|
61
|
-
logging.error(
|
|
62
|
-
f"Cluster {cluster.id} is not a ROSA cluster. "
|
|
63
|
-
"STS version gates are only handled for ROSA classic clusters."
|
|
64
|
-
)
|
|
65
|
-
return False
|
|
66
|
-
|
|
67
|
-
return self.upgrade_rosa_roles(
|
|
68
|
-
cluster=cluster,
|
|
69
|
-
version_raw_id_prefix=gate.version_raw_id_prefix,
|
|
70
|
-
dry_run=dry_run,
|
|
71
|
-
ocm_api=ocm_api,
|
|
72
|
-
ocm_org_id=ocm_org_id,
|
|
73
|
-
)
|
|
74
|
-
|
|
75
|
-
def upgrade_rosa_roles(
|
|
76
|
-
self,
|
|
77
|
-
cluster: OCMCluster,
|
|
78
|
-
version_raw_id_prefix: str,
|
|
79
|
-
dry_run: bool,
|
|
80
|
-
ocm_api: OCMBaseClient,
|
|
81
|
-
ocm_org_id: str,
|
|
82
|
-
) -> bool:
|
|
83
|
-
if not cluster.aws:
|
|
84
|
-
return False
|
|
85
|
-
rosa = RosaSession(
|
|
86
|
-
aws_account_id=cluster.aws.aws_account_id,
|
|
87
|
-
aws_region=cluster.region.id,
|
|
88
|
-
aws_iam_role=self.aws_iam_role,
|
|
89
|
-
ocm_org_id=ocm_org_id,
|
|
90
|
-
ocm_api=ocm_api,
|
|
91
|
-
job_controller=self.job_controller,
|
|
92
|
-
image=self.rosa_job_image,
|
|
93
|
-
service_account=self.rosa_job_service_account,
|
|
94
|
-
)
|
|
95
|
-
|
|
96
|
-
try:
|
|
97
|
-
# account role handling
|
|
98
|
-
account_role_prefix = cluster.aws.account_role_prefix
|
|
99
|
-
if not account_role_prefix:
|
|
100
|
-
raise Exception(
|
|
101
|
-
f"Can't upgrade account roles. Cluster {cluster.name} does not define spec.aws.account_role_prefix"
|
|
102
|
-
)
|
|
103
|
-
rosa.upgrade_account_roles(
|
|
104
|
-
role_prefix=account_role_prefix,
|
|
105
|
-
minor_version=version_raw_id_prefix,
|
|
106
|
-
channel_group=cluster.version.channel_group,
|
|
107
|
-
dry_run=dry_run,
|
|
108
|
-
)
|
|
109
|
-
|
|
110
|
-
# operator role handling
|
|
111
|
-
rosa.upgrade_operator_roles(
|
|
112
|
-
cluster_id=cluster.id,
|
|
113
|
-
dry_run=dry_run,
|
|
114
|
-
)
|
|
115
|
-
except RosaCliError as e:
|
|
116
|
-
logging.error(f"Failed to upgrade roles for cluster {cluster.name}: {e}")
|
|
117
|
-
e.write_logs_to_logger(logging.error)
|
|
118
|
-
return False
|
|
119
|
-
return True
|
|
120
|
-
|
|
121
|
-
def upgrade_rosa_roles_v2(
|
|
122
|
-
self,
|
|
123
|
-
cluster: OCMCluster,
|
|
124
|
-
upgrade_version: str,
|
|
125
|
-
dry_run: bool,
|
|
126
|
-
ocm_api: OCMBaseClient,
|
|
127
|
-
ocm_org_id: str,
|
|
128
|
-
) -> bool:
|
|
129
|
-
if not cluster.aws:
|
|
130
|
-
return False
|
|
131
|
-
rosa = RosaSession(
|
|
132
|
-
aws_account_id=cluster.aws.aws_account_id,
|
|
133
|
-
aws_region=cluster.region.id,
|
|
134
|
-
aws_iam_role=self.aws_iam_role,
|
|
135
|
-
ocm_org_id=ocm_org_id,
|
|
136
|
-
ocm_api=ocm_api,
|
|
137
|
-
job_controller=self.job_controller,
|
|
138
|
-
image=self.rosa_job_image,
|
|
139
|
-
service_account=self.rosa_job_service_account,
|
|
140
|
-
)
|
|
141
|
-
policy_version = get_version_prefix(upgrade_version)
|
|
142
|
-
try:
|
|
143
|
-
rosa.upgrade_rosa_roles(
|
|
144
|
-
cluster_name=cluster.name,
|
|
145
|
-
upgrade_version=upgrade_version,
|
|
146
|
-
policy_version=policy_version,
|
|
147
|
-
dry_run=dry_run,
|
|
148
|
-
)
|
|
149
|
-
except RosaCliError as e:
|
|
150
|
-
logging.error(f"Failed to upgrade roles for cluster {cluster.name}: {e}")
|
|
151
|
-
e.write_logs_to_logger(logging.error)
|
|
152
|
-
return False
|
|
153
33
|
return True
|