qontract-reconcile 0.10.2.dev268__py3-none-any.whl → 0.10.2.dev270__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.
Files changed (60) hide show
  1. {qontract_reconcile-0.10.2.dev268.dist-info → qontract_reconcile-0.10.2.dev270.dist-info}/METADATA +1 -1
  2. {qontract_reconcile-0.10.2.dev268.dist-info → qontract_reconcile-0.10.2.dev270.dist-info}/RECORD +60 -60
  3. reconcile/aws_account_manager/integration.py +1 -1
  4. reconcile/aws_iam_keys.py +2 -1
  5. reconcile/aws_saml_idp/integration.py +2 -1
  6. reconcile/aws_saml_roles/integration.py +2 -1
  7. reconcile/aws_support_cases_sos.py +4 -1
  8. reconcile/cli.py +3 -2
  9. reconcile/dashdotdb_dvo.py +2 -1
  10. reconcile/dashdotdb_slo.py +4 -1
  11. reconcile/endpoints_discovery/integration.py +2 -1
  12. reconcile/gabi_authorized_users.py +2 -1
  13. reconcile/gitlab_owners.py +2 -1
  14. reconcile/gitlab_permissions.py +4 -1
  15. reconcile/glitchtip_project_dsn/integration.py +2 -1
  16. reconcile/integrations_manager.py +2 -1
  17. reconcile/ocm_clusters.py +2 -1
  18. reconcile/ocm_external_configuration_labels.py +2 -1
  19. reconcile/ocm_groups.py +2 -1
  20. reconcile/ocm_upgrade_scheduler_org_updater.py +6 -5
  21. reconcile/openshift_base.py +46 -28
  22. reconcile/openshift_clusterrolebindings.py +20 -6
  23. reconcile/openshift_groups.py +2 -1
  24. reconcile/openshift_limitranges.py +22 -12
  25. reconcile/openshift_namespace_labels.py +21 -5
  26. reconcile/openshift_namespaces.py +2 -1
  27. reconcile/openshift_network_policies.py +25 -6
  28. reconcile/openshift_prometheus_rules.py +2 -1
  29. reconcile/openshift_resourcequotas.py +21 -12
  30. reconcile/openshift_resources.py +2 -1
  31. reconcile/openshift_resources_base.py +3 -2
  32. reconcile/openshift_rhcs_certs.py +2 -1
  33. reconcile/openshift_rolebindings.py +34 -10
  34. reconcile/openshift_routes.py +11 -9
  35. reconcile/openshift_saas_deploy.py +3 -2
  36. reconcile/openshift_saas_deploy_trigger_cleaner.py +2 -1
  37. reconcile/openshift_saas_deploy_trigger_configs.py +2 -1
  38. reconcile/openshift_saas_deploy_trigger_images.py +2 -1
  39. reconcile/openshift_saas_deploy_trigger_moving_commits.py +2 -1
  40. reconcile/openshift_saas_deploy_trigger_upstream_jobs.py +2 -1
  41. reconcile/openshift_serviceaccount_tokens.py +2 -1
  42. reconcile/openshift_tekton_resources.py +2 -1
  43. reconcile/openshift_upgrade_watcher.py +2 -1
  44. reconcile/openshift_users.py +2 -1
  45. reconcile/openshift_vault_secrets.py +11 -9
  46. reconcile/skupper_network/integration.py +2 -1
  47. reconcile/terraform_aws_route53.py +2 -1
  48. reconcile/terraform_resources.py +3 -2
  49. reconcile/terraform_tgw_attachments.py +3 -2
  50. reconcile/terraform_users.py +2 -1
  51. reconcile/terraform_vpc_peerings.py +2 -1
  52. reconcile/utils/aws_api_typed/account.py +40 -8
  53. reconcile/utils/aws_api_typed/iam.py +19 -9
  54. reconcile/utils/constants.py +1 -0
  55. reconcile/utils/jinja2/utils.py +5 -4
  56. reconcile/utils/slo_document_manager.py +1 -1
  57. tools/app_interface_reporter.py +4 -1
  58. tools/cli_commands/container_images_report.py +3 -2
  59. {qontract_reconcile-0.10.2.dev268.dist-info → qontract_reconcile-0.10.2.dev270.dist-info}/WHEEL +0 -0
  60. {qontract_reconcile-0.10.2.dev268.dist-info → qontract_reconcile-0.10.2.dev270.dist-info}/entry_points.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: qontract-reconcile
3
- Version: 0.10.2.dev268
3
+ Version: 0.10.2.dev270
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
@@ -3,22 +3,22 @@ reconcile/acs_policies.py,sha256=pwFKP3afmRbpRq-7FRAosI-A60yfufE2vvXBjOMgsCU,865
3
3
  reconcile/acs_rbac.py,sha256=15vNfNzdG_DeXaJ-f5m8DSaJh__LUK766_xAECqyTsg,22657
4
4
  reconcile/aws_ami_share.py,sha256=M_gT7y3cSAyT_Pm90PBCNDSmbZtqREqe2jNETh0i9Qs,3808
5
5
  reconcile/aws_ecr_image_pull_secrets.py,sha256=F58PtX1GlB9XHqj8hGy9ItiTznXLAAKTNlWD9iT2MWI,2593
6
- reconcile/aws_iam_keys.py,sha256=vGfcxZ1ybAYPt5NHP7ehuhVlmJJsKksKcoRXWIL5Wb0,4006
6
+ reconcile/aws_iam_keys.py,sha256=pVqaXus2pH1LcRlog0C9UsWFttW420tuf7n_Ox-OJs4,4091
7
7
  reconcile/aws_iam_password_reset.py,sha256=FpAqAXngmLFqkOtOjrz_i90qteUyLHJL0GMjotc2tJE,3178
8
- reconcile/aws_support_cases_sos.py,sha256=PDhilxQ4TBxVnxUPIUdTbKEaNUI0wzPiEsB91oHT2fY,3384
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=gjtS8g6KIyKFYlHMSZjAqDUOlVh83nh4go-9yNrhWZU,5016
11
- reconcile/cli.py,sha256=C4x30JxgSmKfqhOliWlJaBMsJjtLkd7UpWC9c5wjB4A,112236
11
+ reconcile/cli.py,sha256=DTl18K0ZvsGn_QtMUZeLCRpWDNRQqu1qjyU0qfOGnBM,112324
12
12
  reconcile/closedbox_endpoint_monitoring_base.py,sha256=_OKz7K7HHw0-gzxeEma8PcUCtd70pRBy7JMoaAm8IVU,4940
13
13
  reconcile/cluster_deployment_mapper.py,sha256=5gumAaRCcFXsabUJ1dnuUy9WrP_FEEM5JnOnE8ch9sE,2326
14
14
  reconcile/dashdotdb_base.py,sha256=83ZWIf5JJk3P_D69y2TmXRcQr6ELJGlv10OM0h7fJVs,4767
15
15
  reconcile/dashdotdb_dora.py,sha256=UI83R8VsrX3vd2ocBakQDKPNE5Ym2a8pnAGUhfkDeR0,17771
16
- reconcile/dashdotdb_dvo.py,sha256=lCkZ0iby6HrNQb-3kYb6xrt8wCjVUZYxKzz9SiStfHU,8946
17
- reconcile/dashdotdb_slo.py,sha256=TvKdMOtUZcZP9QydcUJMKh0zURHgOMN_RTpQpCkD1Z8,3960
16
+ reconcile/dashdotdb_dvo.py,sha256=g4_DjCxbeEVlq8TMp5VQ-5tdZ8bVnvFzF2LBL5OGwd0,9031
17
+ reconcile/dashdotdb_slo.py,sha256=L3SNhYvRJtypxABxI_tSKjuOZ92R_tJLGhyqmV-h8ac,4051
18
18
  reconcile/database_access_manager.py,sha256=TOqJl46J98stl99iP_t-oXtsuWuBcvh7k0zVqPxfxv4,25700
19
19
  reconcile/deadmanssnitch.py,sha256=n-5W-djUgwzpmdDM4eQIZpkkDmHY0vndt-42LJXI4Y8,7491
20
20
  reconcile/email_sender.py,sha256=38Wvl6WHqCwlqLx4oxVJOIeDmoJsyitD3g1F4jTkAj8,4246
21
- reconcile/gabi_authorized_users.py,sha256=w0MSAqZnROzuf0_SZYRI9NU6RMxQnWquedGVl6oPC68,4842
21
+ reconcile/gabi_authorized_users.py,sha256=OMaPqOBZ2teKjTttKT-6KPyGWAJQX3ztvcZztl0Z3M4,4927
22
22
  reconcile/gcp_image_mirror.py,sha256=1ThuUff_04ZdF6uxcLoDuHhoNA3OIw0V-z0-CwdPE2w,9538
23
23
  reconcile/github_org.py,sha256=u5K6c-dRHvA4S_ZvdE0lAYCXAjYX0sWG-i7docGI0-A,14177
24
24
  reconcile/github_owners.py,sha256=viE1KJ-zaTxuZ5yItg2C263J0brn-Q-3hR_DkYDMbhY,3122
@@ -30,10 +30,10 @@ reconcile/gitlab_housekeeping.py,sha256=u130Pl9W2VwSK3kqH5xyzcNuYM_TorcXHGwNlZe2
30
30
  reconcile/gitlab_labeler.py,sha256=BA2dbXsN9hErUwJl22qcxfeH7XiPCuQ9LN3NddWdnpo,4540
31
31
  reconcile/gitlab_members.py,sha256=O_RR3sOgK0Sv8fXSC3QwV4wcCJyKRE2MzJRiaWEqTgQ,8294
32
32
  reconcile/gitlab_mr_sqs_consumer.py,sha256=Ua-RG7qRsOM1Sio1zSCGQQ1Iqx8z9aQ4jftnr-OBdg4,2686
33
- reconcile/gitlab_owners.py,sha256=C0Pzlsi9Z8o6JlpuvYOdYVBEHvPjS-1L4q6-E7s1agk,14503
34
- reconcile/gitlab_permissions.py,sha256=Do8npcSK89dlA2T9LLdkhngTtv9ovmI4sohTFp7gglc,8373
33
+ reconcile/gitlab_owners.py,sha256=3vay7zgKfFntq1viRWU66YXeoA2-DJwMrNGOcthJqSY,14588
34
+ reconcile/gitlab_permissions.py,sha256=2EBZV05-EuLgEXvDv4gDIZ3KWdc4q-U_OJFuiVrNT2U,8467
35
35
  reconcile/gitlab_projects.py,sha256=JIB1UP8CnwSkngEMZE7DFQETMX6sJMp4DXaKoS-Pdkc,1879
36
- reconcile/integrations_manager.py,sha256=KKMui_zXHNbMT0o5jnW2JpDzIKuMPqBvamit3I84pDE,9313
36
+ reconcile/integrations_manager.py,sha256=g6QJOu_hJp_6tUpjpqc9HC_8FNWjvtoYat20TX-bJhg,9398
37
37
  reconcile/jenkins_base.py,sha256=0Gocu3fU2YTltaxBlbDQOUvP-7CP2OSQV1ZRwtWeVXw,875
38
38
  reconcile/jenkins_job_builder.py,sha256=SAcoJUSs2BgxEzfuRfJ4Poik2OSg_B8LaT5VQISocPs,3474
39
39
  reconcile/jenkins_job_builds_cleaner.py,sha256=l9eLyvdgv1sN2tAlkGx3T8g6Db9kIfWW3LJh5H6dV9A,4080
@@ -48,40 +48,40 @@ reconcile/ocm_additional_routers.py,sha256=e5P_OJAaV0jp0626dJ0Hp1-xUsEKXRCnrJzFT
48
48
  reconcile/ocm_addons.py,sha256=b59NWAMmd_zW4pxAH7hm8jzAkis0VZrUBmPYgduVlJc,3684
49
49
  reconcile/ocm_addons_upgrade_tests_trigger.py,sha256=A9zXeYG-_52DsS1dz47yDSnHz62du5XpPBlaeRa6zxY,3975
50
50
  reconcile/ocm_aws_infrastructure_access.py,sha256=f-zVCEf0ucdslhWvfeLcXxQ6Y4xtfCXUG6pxswGgWnU,7251
51
- reconcile/ocm_clusters.py,sha256=_nfrI9EeJ4PtLt7RWCHODqaA3G23sKkHMRCQK13twTA,17045
52
- reconcile/ocm_external_configuration_labels.py,sha256=dGE2-WeuLdz9kmkuRLmpbHlOkwI3GyY6Jd_cvRpsyJo,4342
53
- reconcile/ocm_groups.py,sha256=m-1-ho_pYadaldULF3ogCmC5GZ6nxEbbaLuME4UsMKw,4089
51
+ reconcile/ocm_clusters.py,sha256=u8L2nvMNHvmuYXSPVKYCD2OzHp7Iq5lNR2MW7tdNqqs,17130
52
+ reconcile/ocm_external_configuration_labels.py,sha256=dRWpFFPe_8tU91k8tCdiZRod_TAYmVCHafr_kIpXu6o,4427
53
+ reconcile/ocm_groups.py,sha256=gDnkhkYUEoMkI6y6ctyoKIFpJNS18SVnedW4OzJ8VWs,4174
54
54
  reconcile/ocm_machine_pools.py,sha256=KnTYAOw25N-QRb3Y7zbNY8w8xCR55WyqVjycYz24Yxk,17243
55
55
  reconcile/ocm_update_recommended_version.py,sha256=Vi3Y2sX-OQxx1mv_xiPQXnmrpsZzGIE38No0yBcTaD4,4204
56
- reconcile/ocm_upgrade_scheduler_org_updater.py,sha256=aLgyInt9oIWAg0XtCiwJRUSwdPx3masKV8kHzkyEEOQ,4282
57
- reconcile/openshift_base.py,sha256=S9CUvTaJhO_ibfqiIJ11ezMfSxiji-CEaMvCwK48OFk,52831
56
+ reconcile/ocm_upgrade_scheduler_org_updater.py,sha256=MmbQN4SALQRK6vBTJN-dsl_xKRGG1T3sZyCXP1GMA7s,4357
57
+ reconcile/openshift_base.py,sha256=J4LbsUkvqA1G3JzVg-WsVOB9mtEKFfroFZxNcz_G1kM,53599
58
58
  reconcile/openshift_cluster_bots.py,sha256=Dgh7QhmPn1OKAHnzvmRI9kAvzdmuW7INNj11VmcT4Os,10934
59
- reconcile/openshift_clusterrolebindings.py,sha256=sDgHi_t2ayE3O6zZ5CLao7uBmihxRK8K70w2GSADz-w,5822
60
- reconcile/openshift_groups.py,sha256=zAXAF2Eej-TsUcOZqPe-dmlfXDlM8MD3AUsOC1-7Ltg,9188
61
- reconcile/openshift_limitranges.py,sha256=UvCGo_OQ4XoDK55TJmn55qEhhlkhLzhU12tX8nT5kPQ,3442
62
- reconcile/openshift_namespace_labels.py,sha256=4pC6uZICldzID0L2-cUUTC7UQawfmVXf8AEa2p24RZo,15588
63
- reconcile/openshift_namespaces.py,sha256=xG2scrmsi7VFeGv1Kc1d5kPY_r_JO6s5P85Ty4rRoys,5806
64
- reconcile/openshift_network_policies.py,sha256=p81ShFK1WSEGiWHVURopDpg8YvtA3RE3OfQRQZkWsy4,4167
65
- reconcile/openshift_prometheus_rules.py,sha256=onowXab248zmHH8SbYDTc1W1bl7JiqRFU1xdTkZyLFg,1332
66
- reconcile/openshift_resourcequotas.py,sha256=yUi56PiOn3inMMfq_x_FEHmaW-reGipzoorjdar372g,2415
67
- reconcile/openshift_resources.py,sha256=I2nO_C37mG3rfyGrd4cGwN3mVseVGuTAHAyhFzLyqF4,1518
68
- reconcile/openshift_resources_base.py,sha256=Z5l_EzH5nDuKPF1dkBiyo6oHa-jAgGU9z1OGH77o_2g,42929
69
- reconcile/openshift_rhcs_certs.py,sha256=d-72kJwgHMtdvs1F5uv-jC2lWmOyN2Wp1pQMbQ43FbU,10240
70
- reconcile/openshift_rolebindings.py,sha256=9mlJ2FjWUoH-rsjtasreA_hV-K5Z_YR00qR_RR60OZM,6555
71
- reconcile/openshift_routes.py,sha256=fXvuPSjcjVw1X3j2EQvUAdbOepmIFdKk-M3qP8QzPiw,1075
72
- reconcile/openshift_saas_deploy.py,sha256=ElsmXw2PDdWXYMMGEtVq-DUGUmhUwn5yAWCrlx6xo98,13040
59
+ reconcile/openshift_clusterrolebindings.py,sha256=jwSaYQvUUY7noQGc148Dkqm6woYxvOEd1sume7k_sUk,6212
60
+ reconcile/openshift_groups.py,sha256=PFvS6IM7XINafDCvHwFtudYMx8FdviW0pRPyoVbttuc,9273
61
+ reconcile/openshift_limitranges.py,sha256=H8p46CbxUkay_7Uit_U1loTqpjwvd4_P495QxorxIZQ,4027
62
+ reconcile/openshift_namespace_labels.py,sha256=dSodfVm_tDT6QRxoKBgQSgB3S6W0FEsUK8VNFwin1TE,16235
63
+ reconcile/openshift_namespaces.py,sha256=7_RSw9hmcMxXDmQUr-2TW1_fLdC4x3JZHS-S3hoEMyM,5891
64
+ reconcile/openshift_network_policies.py,sha256=e6yo7F0zpeGySycqeK0ugzSmC_kn_5h4WX-trG5r8Bg,4718
65
+ reconcile/openshift_prometheus_rules.py,sha256=FVVx1D7KCUnNZh7NwVNbD6t4lXKRSO7ph5bvAXruPno,1417
66
+ reconcile/openshift_resourcequotas.py,sha256=0CSuCre3T2ON42Ku1UDhTRugfmUNBx8PILpxIQaAzJU,2882
67
+ reconcile/openshift_resources.py,sha256=YnhDxCvsp0muxEmULiqWhoar9EzxohTrnbY-U7oS5Hc,1603
68
+ reconcile/openshift_resources_base.py,sha256=2oOURMtVDsPDG--lPN7c8ar0FPziCm695J2lV3VnVjk,43036
69
+ reconcile/openshift_rhcs_certs.py,sha256=RUIEetvirJ-38VV3_Zen6Chi2vPgPaEdRMNXGR1JhSM,10325
70
+ reconcile/openshift_rolebindings.py,sha256=Mani4fSG6v55cPlAaQ1bmSBza_mFkNtMhdJFjTMGX0o,7250
71
+ reconcile/openshift_routes.py,sha256=xnA34f32xDdkfV2MXIC1QURFJioQUsXT8AZBiY7iSP0,1298
72
+ reconcile/openshift_saas_deploy.py,sha256=0_C9OoLGfzoAJ4M2UyCVC9HeHa5w-jP7l0_RxJMRO4k,13131
73
73
  reconcile/openshift_saas_deploy_change_tester.py,sha256=12uyBwaeMka1C3_pejmQPIBPAx2V1sJ4dJkScq-2e2M,8793
74
74
  reconcile/openshift_saas_deploy_trigger_base.py,sha256=MDu_T7Cx27pmNPkGNFfETht9CaYeBzfe0lmnOAmZir0,14549
75
- reconcile/openshift_saas_deploy_trigger_cleaner.py,sha256=roLyVAVntaQptKaZbnN1LyLvCA8fyvqELfjU6M8xfeY,3511
76
- reconcile/openshift_saas_deploy_trigger_configs.py,sha256=eUejMGWuaQabZTLuvPLLvROfN5HOFyYZOpH4YEsiU_g,928
77
- reconcile/openshift_saas_deploy_trigger_images.py,sha256=iUsiBGJf-CyFw7tSLWo59rXmSvsVnN6TTaAObbsVpNg,936
78
- reconcile/openshift_saas_deploy_trigger_moving_commits.py,sha256=fpanSH-EGH15C9me--0VSpcpaw9BY4RTb8_mPtsSZGc,942
79
- reconcile/openshift_saas_deploy_trigger_upstream_jobs.py,sha256=0CjfeVQE0QrRrOVuTxkXvBUdKNtYLYuX4mZRB48PQ9g,940
80
- reconcile/openshift_serviceaccount_tokens.py,sha256=SaYT8g_T1W8P8r391ZWV1rYv5BfFxy8x_HIM9XqAm3g,8906
81
- reconcile/openshift_tekton_resources.py,sha256=ZAhPhj5dXxOF2XdNTeksAX-oa2gVCIbL45Gep05nG90,16267
82
- reconcile/openshift_upgrade_watcher.py,sha256=9IB321hlRZZhzdaR9G3zoWAhVv0-KzNiEqx73p3-wmk,6539
83
- reconcile/openshift_users.py,sha256=JUWLb13USlQ4KvXZVsi3JES4csZnXlH0plhxskg_p6A,5300
84
- reconcile/openshift_vault_secrets.py,sha256=9rTqV6wzCQx2Oh712E_Xj8wMG7u8Oh-pY8DWjlv4mZw,1660
75
+ reconcile/openshift_saas_deploy_trigger_cleaner.py,sha256=Aa1-sCMp132GnPxARUvIpvb8YkoakCCY8TxOAb6em64,3596
76
+ reconcile/openshift_saas_deploy_trigger_configs.py,sha256=L3LFtBWvhIE6gLw3259cJFNmUd6sehXcbop0uRN6yn0,1013
77
+ reconcile/openshift_saas_deploy_trigger_images.py,sha256=ubyqdPWAsYDb1zcfi8rqQO-7XLQ3Lggm0uHFikoELuQ,1021
78
+ reconcile/openshift_saas_deploy_trigger_moving_commits.py,sha256=0xQ0Ty7xqBZCoDejyWXI7i-uqJZLbt1YZGbTxjeaZlk,1027
79
+ reconcile/openshift_saas_deploy_trigger_upstream_jobs.py,sha256=TBMQXyMktbCV1uI5tbbWU6pcN_CWQONmwIR-GwAtPo8,1025
80
+ reconcile/openshift_serviceaccount_tokens.py,sha256=eqovpjcaZNz6w-2OVp2yJoiUXOdmET0go5o4bP_dlkg,8991
81
+ reconcile/openshift_tekton_resources.py,sha256=z9OidaI7Ju2O0O0PfIcdoyH62VA4TxLTDDo2IA8YKB4,16352
82
+ reconcile/openshift_upgrade_watcher.py,sha256=dGTQQdCOl95Bz0wOqg6JaMdBSSDgnAveH_hprUafhW0,6624
83
+ reconcile/openshift_users.py,sha256=h4dH3gTCFFQID76PFuYeMWNzFQ9DgTUtsOcvxfj-3cs,5385
84
+ reconcile/openshift_vault_secrets.py,sha256=Ax-_EBWWU1VRHYyKaUkGJkIjHGwWM3bZgjXL5CkPW8k,1883
85
85
  reconcile/quay_base.py,sha256=h5xNjb7EZm8L2JgpO42r6w0UA4im5dabZXJSIW69zKU,1987
86
86
  reconcile/quay_membership.py,sha256=1ajUJwPPudN7zmMZp81EipYljD0hAxzowaL-RbcroVA,6382
87
87
  reconcile/quay_mirror.py,sha256=PBooiA0ShZpWYfO6oeKFqYYT6Syi7Q8JJD9kj0wRRLg,14030
@@ -103,15 +103,15 @@ reconcile/slack_usergroups.py,sha256=3uQVZK0WeZfvE1g7xQwciKCcC3LifDa3NuE1ygQ0cRk
103
103
  reconcile/sql_query.py,sha256=FVwANLPWjkUHqN2OXJ-vnX5hqqcO6rTdyLEO4HkmAgM,26397
104
104
  reconcile/status.py,sha256=cY4IJFXemhxptRJqR4qaaOWqei9e4jgLXuVSGajMsjg,544
105
105
  reconcile/status_board.py,sha256=0vTQzxrFPTmJtzNOC-iaJG_BmXbDe2vgBUe0LMUyfDE,15313
106
- reconcile/terraform_aws_route53.py,sha256=dQzzT46YhwRA902_H6pi-f7WlX4EaH187wXSdmJAUkQ,9958
106
+ reconcile/terraform_aws_route53.py,sha256=CWp5bE3ddUrJGNNvG8YmkSPyNHCWtOc1GEDVLnbOY9Q,10043
107
107
  reconcile/terraform_cloudflare_dns.py,sha256=0Eu46o_BBEEq-B-CCvKop9VTbwrvliCKGSS9gLBSJE4,13456
108
108
  reconcile/terraform_cloudflare_resources.py,sha256=pq8Ieo5NmB-dYQ9X2F0s6iEoINMzhiqGw2yQK4ovok4,14980
109
109
  reconcile/terraform_cloudflare_users.py,sha256=mlSYNktRetBvw8mi2TUSdKSZw0aQ821VeU6OQ1WcV3U,13516
110
110
  reconcile/terraform_repo.py,sha256=vVJfaCV9775FGMMTHfoobaPetSlJMiQ4arNudL2pvh8,15607
111
- reconcile/terraform_resources.py,sha256=xRK5O4iOVZiry-HTTwqNa1BeEjnsOcDU8eSdV14tx9k,19446
112
- reconcile/terraform_tgw_attachments.py,sha256=hn_IO-0W_QoDufW6aZRqcruZ7MPGjaLuc0PZ-FApJQA,18810
113
- reconcile/terraform_users.py,sha256=rt62m9Yb0mkyhza07t_c6vlrFWF-OeJGJ9oGaCVK72M,10234
114
- reconcile/terraform_vpc_peerings.py,sha256=kqF-T5-Y0RraBXYlNBRxgz2iIQEcefnANbzxaLyFU6M,27703
111
+ reconcile/terraform_resources.py,sha256=2kXBl2Cpzxvr4XfNbvkcsVrut-Gfte-75eVJ1uR00Hk,19553
112
+ reconcile/terraform_tgw_attachments.py,sha256=jJlV0YWPFIZ0qcoS6M6aECzO4qDwzHEAlKWoKPfjr0Y,18917
113
+ reconcile/terraform_users.py,sha256=gcz4wsMiKeUFGrlFmpDEk8KTG8WYE1QguBylbE7fgjk,10319
114
+ reconcile/terraform_vpc_peerings.py,sha256=v1GPiluuPLwpQWrp1j5xT9_QuQw07F_Lj2uL3RX9PZE,27788
115
115
  reconcile/vault_replication.py,sha256=08nL0LHWvl8Q3iky9X-5rhEi6LDEA_e1w7LMuRUymD0,17712
116
116
  reconcile/vpc_peerings_validator.py,sha256=aESqrhm1tpkc2iqSL1UV5to_HjNgjRSffD0crb_q49g,7113
117
117
  reconcile/aus/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -138,7 +138,7 @@ reconcile/automated_actions/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQe
138
138
  reconcile/automated_actions/config/integration.py,sha256=EbVJGyEAFf91dHiIlnwbetbqZ3Y7HJOez2Fnexzd550,13853
139
139
  reconcile/aws_account_manager/README.md,sha256=_XFM3GZNHUzv--e_navqJuaUWpjC6QrHfulreHynFf0,262
140
140
  reconcile/aws_account_manager/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
141
- reconcile/aws_account_manager/integration.py,sha256=XTamC824imAezzVoQhhwdMOawNcPCOghR_y7i_8bpJI,15343
141
+ reconcile/aws_account_manager/integration.py,sha256=WEbcvF8GocFHJrlz3mmXSOyYHIUrrHxq_SKaImgJQ2c,15346
142
142
  reconcile/aws_account_manager/merge_request_manager.py,sha256=q8t-YwD4y_4UpxdoG9TQrEbDpjlzasOQIynFoCjP2OE,3947
143
143
  reconcile/aws_account_manager/metrics.py,sha256=YB10ea4kIGwJfs5N14RF-RoXPb-QQWaDBz1jLZ3YWE0,917
144
144
  reconcile/aws_account_manager/reconciler.py,sha256=oSuR3xrN6fihmJUl79HSDxH5-MsR7Sfpf7eqiMlwwRg,17141
@@ -148,9 +148,9 @@ reconcile/aws_ami_cleanup/integration.py,sha256=KG7g9NpbKmoaveDD3oi9SinqUE29NaM-
148
148
  reconcile/aws_cloudwatch_log_retention/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
149
149
  reconcile/aws_cloudwatch_log_retention/integration.py,sha256=QY5EtCpcMN0TgOQInIDW65wT1YksMBFkK8aNK5cg-XA,8107
150
150
  reconcile/aws_saml_idp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
151
- reconcile/aws_saml_idp/integration.py,sha256=Z2JtUx2YIbkn0KVrVa2CoAErPB8vTykOOkWD_ZPoB94,6511
151
+ reconcile/aws_saml_idp/integration.py,sha256=rop8ahl7v0WUheSgVLb-4MU3Ldy6Eb3LknF1oj9GWAg,6596
152
152
  reconcile/aws_saml_roles/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
153
- reconcile/aws_saml_roles/integration.py,sha256=inU10Yu0lZpJw_00vVe2bytJrecjLtu2hR7kQQIAbx0,11234
153
+ reconcile/aws_saml_roles/integration.py,sha256=mLRCnSfClp2ia8UynSmY5HZe5YmrJTc1RwxyMeU2yBw,11319
154
154
  reconcile/aws_version_sync/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
155
155
  reconcile/aws_version_sync/integration.py,sha256=YeqvWMfMtTqTMG6_2iL8-wLds8Lb3CAbSQcR6ebeSlA,17863
156
156
  reconcile/aws_version_sync/utils.py,sha256=x-45QT7zAwdNvCg7w_qJNwLaksFcfz1_6KQoD_0IVuA,1727
@@ -180,7 +180,7 @@ reconcile/dynatrace_token_provider/model.py,sha256=VU2tZT_NAdoCovGFVj5ZoEKhWfMsC
180
180
  reconcile/dynatrace_token_provider/ocm.py,sha256=EPknDhLXkySs8Nv8jrrl12oRoe2bRFWx_CMiHpPQhmM,3734
181
181
  reconcile/dynatrace_token_provider/validate.py,sha256=40_9QmHoB3-KBc0k_0D4QO00PpNNPS-gU9Z6cIcWga8,1920
182
182
  reconcile/endpoints_discovery/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
183
- reconcile/endpoints_discovery/integration.py,sha256=p50wu4OWO3RmL2A9TvjhRZkTYUe-l9aec4vgu0bxq8w,14926
183
+ reconcile/endpoints_discovery/integration.py,sha256=P63yx5OPlLEFKMDTk5vR9AX3ve8PJzIhZw4uLpIAEXQ,15011
184
184
  reconcile/endpoints_discovery/merge_request.py,sha256=_yLb4tnvoZMCko8rta2C_CvOInJa9pa3HzSmHNtjgGU,2978
185
185
  reconcile/endpoints_discovery/merge_request_manager.py,sha256=a8zTIQIpRrUwXexZClwpQnnkEoS6XNZLJziI9x7ly0s,6389
186
186
  reconcile/external_resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -211,7 +211,7 @@ reconcile/glitchtip/reconciler.py,sha256=nUvDv7qG1ly0cA16MmlL6NV71yl1mJYLT2mui7l
211
211
  reconcile/glitchtip_project_alerts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
212
212
  reconcile/glitchtip_project_alerts/integration.py,sha256=d3PMy-mQSbSZdIGAVaZCA2UhrK9LPYlnLtUluLlXej4,13669
213
213
  reconcile/glitchtip_project_dsn/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
214
- reconcile/glitchtip_project_dsn/integration.py,sha256=2iugub-kHYkHNK33n0v9_TeWonuxCPah_VkoTPvaajE,8077
214
+ reconcile/glitchtip_project_dsn/integration.py,sha256=3GgcqUM6hWhLpo9Yx5Xr9vrdexF-WNevVCNL9bJ0Upc,8162
215
215
  reconcile/gql_definitions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
216
216
  reconcile/gql_definitions/introspection.json,sha256=3-WcCYBV8GP1OH1_NLgu9yyXNSNZDJ5_1dZIiTCWhwM,2346833
217
217
  reconcile/gql_definitions/acs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -487,7 +487,7 @@ reconcile/saas_auto_promotions_manager/merge_request_manager/renderer.py,sha256=
487
487
  reconcile/saas_auto_promotions_manager/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
488
488
  reconcile/saas_auto_promotions_manager/utils/saas_files_inventory.py,sha256=BPzSsuXy5ULKSo36v1bItC3rU-AEFfVZeWXZw1tXqLg,9674
489
489
  reconcile/skupper_network/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
490
- reconcile/skupper_network/integration.py,sha256=UgtWJAIPBQqfc6jJxyEV0Sp_va6lrjX3kbYh5Encflw,10777
490
+ reconcile/skupper_network/integration.py,sha256=8AKshpHRGKD6n8wxavEqVeFCnrTVdAGyrrbB60dg3JE,10862
491
491
  reconcile/skupper_network/models.py,sha256=HEwlVKsbmMaKaaBGvITIiSYNEVdjwXVhLaOJgLSZ2xQ,6604
492
492
  reconcile/skupper_network/reconciler.py,sha256=AHVLJp406T39AAJK0LygQXXJkH_NZNUPFmqDKg10gRs,9996
493
493
  reconcile/skupper_network/site_controller.py,sha256=ovBUPuqrJjmhZBSV2zF9HQByVgBFWw7AKJnINYviD78,1557
@@ -590,7 +590,7 @@ reconcile/utils/aws_helper.py,sha256=9u4m94bnc3chFIDDEXwYXRXj5b--D6CTRy6g234jhNY
590
590
  reconcile/utils/batches.py,sha256=TtEm64a8lWhFuNbUVpFEmXVdU2Q0sTBrP_I0Cjbgh7g,320
591
591
  reconcile/utils/binary.py,sha256=lSIevhilMeoGMePPHD7A-pxe45LVpBT0LksecYbM-EA,2477
592
592
  reconcile/utils/config.py,sha256=wuMVTFWkKRccruK1jrdZD_qC66Nt4N8ArYe9fKBK_bk,1220
593
- reconcile/utils/constants.py,sha256=pOUd97bqZdsAu5RWJ8NUs9cwCY7K9y0eW9VVeJ4fZIU,138
593
+ reconcile/utils/constants.py,sha256=7p6ZD4HRXnUEWoDjHdr3-mMrJyq74Qkg7LzOWAV2AG4,168
594
594
  reconcile/utils/deadmanssnitch_api.py,sha256=6Rgp8AY24MtJy8QcjfPMAppWQeOXhHbb2ouJxE1MM9w,2438
595
595
  reconcile/utils/defer.py,sha256=LYTqcvyifCg71_C2i7pbxdqd8-NrXrUhcvuLFy1bQN0,476
596
596
  reconcile/utils/differ.py,sha256=WFW8GoFPMEw9TD1irPpIan6aILF-kjeWWsKLuvqnv64,7554
@@ -652,7 +652,7 @@ reconcile/utils/secret_reader.py,sha256=vCU-g7q1Fbd5qOUMn7TAeE5yWhlmXme0OzZgyxk7
652
652
  reconcile/utils/semver_helper.py,sha256=-WfPOMSA2v1h7hT3PwVf-Htg7wOsoKlQC1JdmDX2Ars,1268
653
653
  reconcile/utils/sharding.py,sha256=CNyU9mkSbt7FRANEhOOZpWJl7L-YliHhaxr898gmX8c,573
654
654
  reconcile/utils/slack_api.py,sha256=soXrIJRjDyEs2yO9kAVmJFd5pey-u3hhtoRJQWWuJjc,17838
655
- reconcile/utils/slo_document_manager.py,sha256=hupYRDW6dJoHyHKvZi4eryFafHVd9rsfmoVBe0dbBN0,9530
655
+ reconcile/utils/slo_document_manager.py,sha256=YqiCYA_kRq5_oNc_VTYipjbph4k0XHDcjwbbcdaW1ag,9563
656
656
  reconcile/utils/smtp_client.py,sha256=0xefB4I9E5eBB-FlxFJYjvz3Kvuqi_K3Ma_Wk0NAQKM,2779
657
657
  reconcile/utils/sqs_gateway.py,sha256=XNIf3PY4UCPNufP2Ul0UJj3fKlt5larBba-VTT-41Fg,2265
658
658
  reconcile/utils/state.py,sha256=h5iAfNf1p_wf79Z09XNZ5C_YVrIqUmhhl_DWqnFrwT0,16364
@@ -669,10 +669,10 @@ reconcile/utils/acs/base.py,sha256=4UsDrCpAOuddL3PKNuIQYoJP1BtZQNNB8_KEX0lXneg,2
669
669
  reconcile/utils/acs/policies.py,sha256=jpbi3qpGkBD_X6MfzsX12dPajUbmACmhIOz_0rDvYzs,5489
670
670
  reconcile/utils/acs/rbac.py,sha256=ugsLM9Pb7FbUbdq85E3VzXGMaB9ZovXob7tdWCxwqZ8,8808
671
671
  reconcile/utils/aws_api_typed/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
672
- reconcile/utils/aws_api_typed/account.py,sha256=f1UQul336_9rC_iCdzkbTQkhcFh5BjIZsf3X18SACfY,2048
672
+ reconcile/utils/aws_api_typed/account.py,sha256=4UfsVcOKIkR1b6bYlr6lcnYk5A6T-KZWUi1mZoLL40c,3376
673
673
  reconcile/utils/aws_api_typed/api.py,sha256=1h_dQXnE7FUAZi4RRgBEU7nbyAz8awRo0cpuilXyhHE,9239
674
674
  reconcile/utils/aws_api_typed/dynamodb.py,sha256=AKUbz8HGzmSq4cnpjJe7PgqsikMkjbpbzUD2UJv2b58,383
675
- reconcile/utils/aws_api_typed/iam.py,sha256=LrHCFRIB5h5GcAD_4Bfb9tOZqH961LI1r03-EuUWfmI,2243
675
+ reconcile/utils/aws_api_typed/iam.py,sha256=uuK5JzVmlWpokyixhd_Oy2pBr_31z_d4Gz7bPeDK71E,2864
676
676
  reconcile/utils/aws_api_typed/organization.py,sha256=rmZkm14t30Bm0ctMTtCNzcDrTjOFkal1TO0pHncNxcg,5513
677
677
  reconcile/utils/aws_api_typed/s3.py,sha256=J2uOTtEFgMyKT22pa4DbFnV7zfg575m2DeidQaeselM,1034
678
678
  reconcile/utils/aws_api_typed/service_quotas.py,sha256=ywPligZTxGgDhJ4TjWzXg5MbQ4j1iGUxonngII_KOHo,3022
@@ -694,7 +694,7 @@ reconcile/utils/internal_groups/models.py,sha256=y_IqBVqfGqNXiu0VudvBWFrm_-uafVm
694
694
  reconcile/utils/jinja2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
695
695
  reconcile/utils/jinja2/extensions.py,sha256=7K-uo6G2eCWa98MHT8fRPYIKCLQB_5D2keqQ_LyAfHM,1293
696
696
  reconcile/utils/jinja2/filters.py,sha256=JfO_14APySBPidsMvHXG-8dULNPddZCE15Umjk_aSBk,4830
697
- reconcile/utils/jinja2/utils.py,sha256=r_-vYmfxpwtG_7MoJLk1BKRcgv3rQgOMAVsrlZsLzLY,9090
697
+ reconcile/utils/jinja2/utils.py,sha256=z20GzZsksQzbcahCwfbffHj6PU-JTifH0JzMZdPP7hU,9138
698
698
  reconcile/utils/jobcontroller/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
699
699
  reconcile/utils/jobcontroller/controller.py,sha256=Vh08lZuCSIIceWGSDhBB00iFwTI9eeKZW1sfHlkAvSo,15373
700
700
  reconcile/utils/jobcontroller/models.py,sha256=x9YIvWfYOOvXNKToFVx1H7qDrZb0Sa1KI_4Y0gl7rMM,6336
@@ -766,7 +766,7 @@ reconcile/utils/unleash/server.py,sha256=907gDh9Ee8UxLqusnfpzE-7LUnttB38D4xhVJ0v
766
766
  tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
767
767
  tools/alert_report.py,sha256=cyQTei8_SYOggW_6uYvzhrF7Nae-9xOz-jmh9O9V8R8,5589
768
768
  tools/app_interface_metrics_exporter.py,sha256=f1qwTmQfEcs98uBVRyBa0k7GQXdiSwd7w1hDVjhdGcQ,2303
769
- tools/app_interface_reporter.py,sha256=0_oq1-mL0UOh1x5G8CoKaEVJqK-XTKE7PX7IbRTovBc,17224
769
+ tools/app_interface_reporter.py,sha256=DCsGm9kOiGdZw9BvLA3JxDqJRO5Yv7m284O947qVVrE,17318
770
770
  tools/app_sre_tekton_access_reporter.py,sha256=o9prLUgQpwO3msRWc2as1xT1y9OB3znkpgvLr0Ys8_M,3146
771
771
  tools/app_sre_tekton_access_revalidation.py,sha256=66nHEaY-bIqxIhpcmwN8AvQZu6ZXenfkg4Fut0pVZRM,2726
772
772
  tools/glitchtip_access_reporter.py,sha256=o01A6b88t3Wie6tj_tJWWVo2J01LxQ_a9giGm4UzEaU,2901
@@ -774,7 +774,7 @@ tools/glitchtip_access_revalidation.py,sha256=PXN5wxl6OX8sxddPaakDF3X79nFLvpm-lz
774
774
  tools/qontract_cli.py,sha256=DkIJX7jYRycBDKySQHVB6fNIAFpF3USkZaLJbcsYnDg,159204
775
775
  tools/template_validation.py,sha256=wW22pH4bJBN5CcK74RuIEwtiVmQ3zI1eSvNMAE6fbyc,3377
776
776
  tools/cli_commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
777
- tools/cli_commands/container_images_report.py,sha256=_8GuBsl_qYP5qfa5aa9krwyKHYu82MSh02deHEroSa4,5459
777
+ tools/cli_commands/container_images_report.py,sha256=8mAjCS6XR0yD7k0mfiVBlt6xbYU47q_ftdYNi5o5VKE,5566
778
778
  tools/cli_commands/erv2.py,sha256=oTsuplgW0PVW1ny_PdRZNURJs_aqjun6HmV3gzRafZY,26032
779
779
  tools/cli_commands/gpg_encrypt.py,sha256=DqIaj49xcj5Wzo03xf5lX-SeDvcWGdhxWZ5eAmg_OUU,4871
780
780
  tools/cli_commands/systems_and_tools.py,sha256=n6IFdPPLpueGP8Eh3dqv2errk0ZqHWUDcan_Nrhnt9I,16747
@@ -797,7 +797,7 @@ tools/saas_promotion_state/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJ
797
797
  tools/saas_promotion_state/saas_promotion_state.py,sha256=oF7C4hpIgyMTwTRm3Aun3cDCHIjVar65JoLp6NcJHlU,3909
798
798
  tools/sre_checkpoints/__init__.py,sha256=CDaDaywJnmRCLyl_NCcvxi-Zc0hTi_3OdwKiFOyS39I,145
799
799
  tools/sre_checkpoints/util.py,sha256=zEDbGr18ZeHNQwW8pUsr2JRjuXIPz--WAGJxZo9sv_Y,894
800
- qontract_reconcile-0.10.2.dev268.dist-info/METADATA,sha256=tDfzT1dkLIg6YlPz3iT9K-MvZ2rJOTdMSGsUJ8c3Fzs,24501
801
- qontract_reconcile-0.10.2.dev268.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
802
- qontract_reconcile-0.10.2.dev268.dist-info/entry_points.txt,sha256=5i9l54La3vQrDLAdwDKQWC0iG4sV9RRfOb1BpvzOWLc,698
803
- qontract_reconcile-0.10.2.dev268.dist-info/RECORD,,
800
+ qontract_reconcile-0.10.2.dev270.dist-info/METADATA,sha256=B-j3gLyk3BgjGR9nQzqFILIqRAQ5s9ZenI3eDAARGcA,24501
801
+ qontract_reconcile-0.10.2.dev270.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
802
+ qontract_reconcile-0.10.2.dev270.dist-info/entry_points.txt,sha256=5i9l54La3vQrDLAdwDKQWC0iG4sV9RRfOb1BpvzOWLc,698
803
+ qontract_reconcile-0.10.2.dev270.dist-info/RECORD,,
@@ -53,7 +53,7 @@ class AwsAccountMgmtIntegrationParams(PydanticRunParams):
53
53
  )
54
54
  # To avoid the accidental deletion of the resource file, explicitly set the
55
55
  # qontract.cli option in the integration extraArgs!
56
- account_tmpl_resource: str = "/aws-account-manager/account-tmpl.yml"
56
+ account_tmpl_resource: str = "/aws-account-manager/account-tmpl.yml.j2"
57
57
  template_collection_root_path: str = "data/templating/collections/aws-account"
58
58
 
59
59
 
reconcile/aws_iam_keys.py CHANGED
@@ -6,6 +6,7 @@ from typing import Any
6
6
 
7
7
  from reconcile import queries
8
8
  from reconcile.utils.aws_api import AWSApi
9
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
9
10
  from reconcile.utils.defer import defer
10
11
  from reconcile.utils.state import State, init_state
11
12
  from reconcile.utils.terrascript_aws_client import TerrascriptClient as Terrascript
@@ -76,7 +77,7 @@ def cleanup(working_dirs: Mapping[str, str]) -> None:
76
77
  @defer
77
78
  def run(
78
79
  dry_run: bool,
79
- thread_pool_size: int = 10,
80
+ thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE,
80
81
  disable_service_account_keys: bool = False,
81
82
  account_name: str | None = None,
82
83
  defer: Callable | None = None,
@@ -21,6 +21,7 @@ from reconcile.gql_definitions.aws_saml_idp.aws_accounts import (
21
21
  from reconcile.status import ExitCodes
22
22
  from reconcile.utils import gql
23
23
  from reconcile.utils.aws_api import AWSApi
24
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
24
25
  from reconcile.utils.defer import defer
25
26
  from reconcile.utils.disabled_integrations import integration_is_enabled
26
27
  from reconcile.utils.extended_early_exit import (
@@ -41,7 +42,7 @@ QONTRACT_INTEGRATION_VERSION = make_semver(1, 0, 0)
41
42
 
42
43
 
43
44
  class AwsSamlIdpIntegrationParams(PydanticRunParams):
44
- thread_pool_size: int = 10
45
+ thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE
45
46
  print_to_file: str | None = None
46
47
  enable_deletion: bool = False
47
48
  # integration specific parameters
@@ -25,6 +25,7 @@ from reconcile.status import ExitCodes
25
25
  from reconcile.utils import gql
26
26
  from reconcile.utils.aws_api import AWSApi
27
27
  from reconcile.utils.aws_helper import unique_sso_aws_accounts
28
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
28
29
  from reconcile.utils.defer import defer
29
30
  from reconcile.utils.disabled_integrations import integration_is_enabled
30
31
  from reconcile.utils.extended_early_exit import (
@@ -45,7 +46,7 @@ QONTRACT_INTEGRATION_VERSION = make_semver(1, 0, 0)
45
46
 
46
47
 
47
48
  class AwsSamlRolesIntegrationParams(PydanticRunParams):
48
- thread_pool_size: int = 10
49
+ thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE
49
50
  print_to_file: str | None = None
50
51
  enable_deletion: bool = False
51
52
  # integration specific parameters
@@ -8,6 +8,7 @@ from reconcile import (
8
8
  queries,
9
9
  )
10
10
  from reconcile.utils.aws_api import AWSApi
11
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
11
12
  from reconcile.utils.defer import defer
12
13
  from reconcile.utils.mr import CreateDeleteAwsAccessKey
13
14
 
@@ -71,7 +72,9 @@ def act(
71
72
 
72
73
 
73
74
  def run(
74
- dry_run: bool, gitlab_project_id: str | None = None, thread_pool_size: int = 10
75
+ dry_run: bool,
76
+ gitlab_project_id: str | None = None,
77
+ thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE,
75
78
  ) -> None:
76
79
  accounts = filter_accounts(queries.get_aws_accounts())
77
80
  settings = queries.get_app_interface_settings()
reconcile/cli.py CHANGED
@@ -27,6 +27,7 @@ from reconcile.utils.binary import (
27
27
  binary,
28
28
  binary_version,
29
29
  )
30
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
30
31
  from reconcile.utils.exceptions import PrintToFileInGitRepositoryError
31
32
  from reconcile.utils.git import is_file_in_git_repo
32
33
  from reconcile.utils.gql import GqlApiSingleton
@@ -192,7 +193,7 @@ def gql_url_print(function: Callable) -> Callable:
192
193
  return function
193
194
 
194
195
 
195
- def threaded(default: int = 10) -> Callable:
196
+ def threaded(default: int = DEFAULT_THREAD_POOL_SIZE) -> Callable:
196
197
  def f(function: Callable) -> Callable:
197
198
  opt = "--thread-pool-size"
198
199
  msg = "number of threads to run in parallel."
@@ -969,7 +970,7 @@ def aws_saml_roles(
969
970
  "--account-tmpl-resource",
970
971
  help="Resource name of the account template-collection template in the app-interface.",
971
972
  required=True,
972
- default="/aws-account-manager/account-tmpl.yml",
973
+ default="/aws-account-manager/account-tmpl.yml.j2",
973
974
  )
974
975
  @click.option(
975
976
  "--template-collection-root-path",
@@ -19,6 +19,7 @@ from reconcile.typed_queries.app_interface_vault_settings import (
19
19
  get_app_interface_vault_settings,
20
20
  )
21
21
  from reconcile.typed_queries.clusters_minimal import get_clusters_minimal
22
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
22
23
  from reconcile.utils.secret_reader import (
23
24
  SecretReaderBase,
24
25
  create_secret_reader,
@@ -254,7 +255,7 @@ class DashdotdbDVO(DashdotdbBase):
254
255
 
255
256
  def run(
256
257
  dry_run: bool = False,
257
- thread_pool_size: int = 10,
258
+ thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE,
258
259
  cluster_name: str | None = None,
259
260
  ) -> None:
260
261
  vault_settings = get_app_interface_vault_settings()
@@ -15,6 +15,7 @@ from reconcile.typed_queries.app_interface_vault_settings import (
15
15
  get_app_interface_vault_settings,
16
16
  )
17
17
  from reconcile.utils import gql
18
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
18
19
  from reconcile.utils.secret_reader import (
19
20
  SecretReaderBase,
20
21
  create_secret_reader,
@@ -106,7 +107,9 @@ class DashdotdbSLO(DashdotdbBase):
106
107
  self._close_token()
107
108
 
108
109
 
109
- def run(dry_run: bool = False, thread_pool_size: int = 10) -> None:
110
+ def run(
111
+ dry_run: bool = False, thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE
112
+ ) -> None:
110
113
  vault_settings = get_app_interface_vault_settings()
111
114
  secret_reader = create_secret_reader(use_vault=vault_settings.vault)
112
115
  dashdotdb_slo = DashdotdbSLO(
@@ -27,6 +27,7 @@ from reconcile.typed_queries.app_interface_repo_url import get_app_interface_rep
27
27
  from reconcile.typed_queries.github_orgs import get_github_orgs
28
28
  from reconcile.typed_queries.gitlab_instances import get_gitlab_instances
29
29
  from reconcile.utils import gql
30
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
30
31
  from reconcile.utils.defer import defer
31
32
  from reconcile.utils.differ import diff_any_iterables
32
33
  from reconcile.utils.disabled_integrations import integration_is_enabled
@@ -49,7 +50,7 @@ QONTRACT_INTEGRATION_VERSION = make_semver(1, 1, 0)
49
50
 
50
51
 
51
52
  class EndpointsDiscoveryIntegrationParams(PydanticRunParams):
52
- thread_pool_size: int = 10
53
+ thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE
53
54
  internal: bool | None = None
54
55
  use_jump_host: bool = True
55
56
  cluster_name: set[str] | None = None
@@ -16,6 +16,7 @@ import reconcile.openshift_base as ob
16
16
  from reconcile import queries
17
17
  from reconcile.status import ExitCodes
18
18
  from reconcile.utils.aggregated_list import RunnerError
19
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
19
20
  from reconcile.utils.defer import defer
20
21
  from reconcile.utils.disabled_integrations import integration_is_enabled
21
22
  from reconcile.utils.external_resources import get_external_resource_specs
@@ -110,7 +111,7 @@ def fetch_desired_state(
110
111
  @defer
111
112
  def run(
112
113
  dry_run: bool,
113
- thread_pool_size: int = 10,
114
+ thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE,
114
115
  internal: bool | None = None,
115
116
  use_jump_host: bool = True,
116
117
  defer: Callable | None = None,
@@ -7,6 +7,7 @@ from gitlab.v4.objects import ProjectMergeRequest
7
7
  from sretoolbox.utils import threaded
8
8
 
9
9
  from reconcile import queries
10
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
10
11
  from reconcile.utils.defer import defer
11
12
  from reconcile.utils.gitlab_api import (
12
13
  GitLabApi,
@@ -412,7 +413,7 @@ def act(
412
413
  ])
413
414
 
414
415
 
415
- def run(dry_run: bool, thread_pool_size: int = 10) -> None:
416
+ def run(dry_run: bool, thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE) -> None:
416
417
  instance = queries.get_gitlab_instance()
417
418
  settings = queries.get_app_interface_settings()
418
419
  repos = queries.get_repos_gitlab_owner(server=instance["url"])
@@ -14,6 +14,7 @@ from sretoolbox.utils import threaded
14
14
 
15
15
  from reconcile import queries
16
16
  from reconcile.utils import batches
17
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
17
18
  from reconcile.utils.defer import defer
18
19
  from reconcile.utils.differ import diff_mappings
19
20
  from reconcile.utils.gitlab_api import GitLabApi
@@ -194,7 +195,9 @@ def create_user_ids_query(ids: Iterable[str]) -> dict[str, str]:
194
195
 
195
196
  @defer
196
197
  def run(
197
- dry_run: bool, thread_pool_size: int = 10, defer: Callable | None = None
198
+ dry_run: bool,
199
+ thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE,
200
+ defer: Callable | None = None,
198
201
  ) -> None:
199
202
  instance = queries.get_gitlab_instance()
200
203
  settings = queries.get_app_interface_settings()
@@ -25,6 +25,7 @@ from reconcile.typed_queries.app_interface_vault_settings import (
25
25
  get_app_interface_vault_settings,
26
26
  )
27
27
  from reconcile.utils import gql
28
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
28
29
  from reconcile.utils.defer import defer
29
30
  from reconcile.utils.disabled_integrations import integration_is_enabled
30
31
  from reconcile.utils.glitchtip import GlitchtipClient
@@ -165,7 +166,7 @@ def projects_query(query_func: Callable) -> list[GlitchtipProjectV1]:
165
166
  @defer
166
167
  def run(
167
168
  dry_run: bool,
168
- thread_pool_size: int = 10,
169
+ thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE,
169
170
  internal: bool | None = None,
170
171
  use_jump_host: bool = True,
171
172
  instance: str | None = None,
@@ -31,6 +31,7 @@ from reconcile.utils import (
31
31
  gql,
32
32
  helm,
33
33
  )
34
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
34
35
  from reconcile.utils.defer import defer
35
36
  from reconcile.utils.oc import oc_process
36
37
  from reconcile.utils.openshift_resource import (
@@ -234,7 +235,7 @@ def run(
234
235
  dry_run: bool,
235
236
  environment_name: str | None,
236
237
  integration_runtime_meta: dict[str, IntegrationMeta],
237
- thread_pool_size: int = 10,
238
+ thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE,
238
239
  internal: bool = False,
239
240
  use_jump_host: bool = True,
240
241
  image_tag_from_ref: dict[str, str] | None = None,
reconcile/ocm_clusters.py CHANGED
@@ -20,6 +20,7 @@ from reconcile.ocm.types import (
20
20
  ROSAOcmAwsStsAttrs,
21
21
  )
22
22
  from reconcile.status import ExitCodes
23
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
23
24
  from reconcile.utils.disabled_integrations import integration_is_enabled
24
25
  from reconcile.utils.jobcontroller.controller import build_job_controller
25
26
  from reconcile.utils.ocm.products import (
@@ -327,7 +328,7 @@ def _cluster_is_compatible(cluster: Mapping[str, Any]) -> bool:
327
328
 
328
329
  class OcmClustersParams(PydanticRunParams):
329
330
  gitlab_project_id: str | None = None
330
- thread_pool_size: int = 10
331
+ thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE
331
332
 
332
333
  # rosa job controller params
333
334
  job_controller_cluster: str | None = None
@@ -6,6 +6,7 @@ from typing import Any
6
6
 
7
7
  from reconcile import queries
8
8
  from reconcile.status import ExitCodes
9
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
9
10
  from reconcile.utils.disabled_integrations import integration_is_enabled
10
11
  from reconcile.utils.ocm import OCMMap
11
12
 
@@ -115,7 +116,7 @@ def _cluster_is_compatible(cluster: Mapping[str, Any]) -> bool:
115
116
  def run(
116
117
  dry_run: bool,
117
118
  gitlab_project_id: str | None = None,
118
- thread_pool_size: int = 10,
119
+ thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE,
119
120
  ) -> None:
120
121
  clusters = queries.get_clusters()
121
122
  clusters = [
reconcile/ocm_groups.py CHANGED
@@ -14,6 +14,7 @@ from reconcile import (
14
14
  queries,
15
15
  )
16
16
  from reconcile.status import ExitCodes
17
+ from reconcile.utils.constants import DEFAULT_THREAD_POOL_SIZE
17
18
  from reconcile.utils.disabled_integrations import integration_is_enabled
18
19
  from reconcile.utils.ocm import OCMMap
19
20
  from reconcile.utils.ocm.base import OCMClusterGroupId
@@ -80,7 +81,7 @@ def _cluster_is_compatible(cluster: Mapping[str, Any]) -> bool:
80
81
  return cluster.get("ocm") is not None
81
82
 
82
83
 
83
- def run(dry_run: bool, thread_pool_size: int = 10) -> None:
84
+ def run(dry_run: bool, thread_pool_size: int = DEFAULT_THREAD_POOL_SIZE) -> None:
84
85
  clusters = queries.get_clusters()
85
86
  if not clusters:
86
87
  logging.debug("No clusters found in app-interface")
@@ -1,5 +1,6 @@
1
1
  import json
2
2
  import logging
3
+ from collections.abc import Mapping
3
4
  from typing import Any
4
5
 
5
6
  import yaml
@@ -19,10 +20,10 @@ QONTRACT_INTEGRATION = "ocm-upgrade-scheduler-org-updater"
19
20
 
20
21
 
21
22
  def render_policy(
22
- template: dict[str, Any],
23
+ template: Mapping[str, Any],
23
24
  cluster_spec: OCMSpec,
24
- labels: dict[str, str],
25
- settings: dict[str, Any] | None = None,
25
+ labels: Mapping[str, str],
26
+ settings: Mapping[str, Any] | None = None,
26
27
  ) -> dict[str, Any]:
27
28
  body = template["path"]["content"]
28
29
  type = template.get("type") or "jinja2"
@@ -36,7 +37,7 @@ def render_policy(
36
37
  return yaml.safe_load(rendered)
37
38
 
38
39
 
39
- def run(dry_run, gitlab_project_id):
40
+ def run(dry_run: bool, gitlab_project_id: str | None) -> None:
40
41
  settings = queries.get_app_interface_settings()
41
42
  ocms = queries.get_openshift_cluster_managers()
42
43
  for ocm_info in ocms:
@@ -55,7 +56,7 @@ def run(dry_run, gitlab_project_id):
55
56
  )
56
57
  ocm_name = ocm_info["name"]
57
58
  ocm_path = ocm_info["path"]
58
- ocm = ocm_map[ocm_name]
59
+ ocm = ocm_map.get(ocm_name)
59
60
 
60
61
  for ocm_cluster_name, ocm_cluster_spec in ocm.clusters.items():
61
62
  found = [