qontract-reconcile 0.10.1rc938__py3-none-any.whl → 0.10.1rc939__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.1rc938
3
+ Version: 0.10.1rc939
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
@@ -57,14 +57,14 @@ reconcile/ocm_aws_infrastructure_access.py,sha256=SghVWdmgliPVo_xHsp-e64_iC3mqDi
57
57
  reconcile/ocm_clusters.py,sha256=bD8zlnUbwfDaVvHd-lSDGWmqY1ag_Gcr6kQ0y3aiKG4,16702
58
58
  reconcile/ocm_external_configuration_labels.py,sha256=imEpDv1RBpCSj8tHDv0R76hmNCFtcUzVNgS1yOVl8vs,3870
59
59
  reconcile/ocm_github_idp.py,sha256=glwXMsIBcl38-OmDDQCpe0YoLLXfoRgVQmqwXMEXjds,3946
60
- reconcile/ocm_groups.py,sha256=CluPyvmwE5JOZS2HQSReC1sD8L1ChhnJlAg8lcwdtxc,3395
60
+ reconcile/ocm_groups.py,sha256=-rTPMewkdyo1De6gs4u-294p3z34oUbGfuNi8ov56Sk,3424
61
61
  reconcile/ocm_machine_pools.py,sha256=poGfITOCJEMwYAJpiuL8SytgTcBmGIKEZPgNGld80TY,16563
62
62
  reconcile/ocm_update_recommended_version.py,sha256=IYkfLXIprOW1jguZeELcGP1iBPuj-b53R-FTqKulMl8,4204
63
63
  reconcile/ocm_upgrade_scheduler_org_updater.py,sha256=aLgyInt9oIWAg0XtCiwJRUSwdPx3masKV8kHzkyEEOQ,4282
64
64
  reconcile/openshift_base.py,sha256=MvydL1Qq6g_mex_EOWDFFuckt8VtE3LfHW0mhWkUJFs,49712
65
65
  reconcile/openshift_cluster_bots.py,sha256=eRPYZqWMKFNxLlSN0QG97V5t1iIESQ0BbGaiaQP5VB0,10940
66
66
  reconcile/openshift_clusterrolebindings.py,sha256=QfSy1Ik8eEY5XObc1Q4xyhqyErZenJmbPv_u9wcDNNo,5864
67
- reconcile/openshift_groups.py,sha256=wb_J5hvfpgS5RTeeZDPiQ_zvwbajGYysFNP603YNioE,9313
67
+ reconcile/openshift_groups.py,sha256=sK2wLWwNupztbfyFPl32VH42s_s8Mu3g-URdlisnwJc,9382
68
68
  reconcile/openshift_limitranges.py,sha256=UvCGo_OQ4XoDK55TJmn55qEhhlkhLzhU12tX8nT5kPQ,3442
69
69
  reconcile/openshift_namespace_labels.py,sha256=pqKAWjNicCQBoq7CwQI-dpW2dcy9sFZl-rBiO2m-e0k,15605
70
70
  reconcile/openshift_namespaces.py,sha256=DdQ4a76g0E7dgRPZEA8MTtZthzUJQjWAb5VdspArWtE,5795
@@ -763,7 +763,7 @@ reconcile/utils/mr/ocm_upgrade_scheduler_org_updates.py,sha256=ojnIjw-8vRnmCCxOG
763
763
  reconcile/utils/mr/user_maintenance.py,sha256=cHPBn8zrReWLHalyk-EFdkFJe9zjVjRoZhT4t2zZfGE,3956
764
764
  reconcile/utils/ocm/__init__.py,sha256=xv7CJp7K9LCQfa4gL_W0MMCOD1P4qOy8t5aZj1xXNUE,808
765
765
  reconcile/utils/ocm/addons.py,sha256=_LDdJ-gapM3s5exKlIUt-MlXZTAUoHezbYBU0QmvfWQ,7335
766
- reconcile/utils/ocm/base.py,sha256=IF-TOj9YqDBfuXRMAxCZ8xFTNsgLQdsAxCtIk4UjH4E,14457
766
+ reconcile/utils/ocm/base.py,sha256=iL_uMN03URDisWHpsaGGto_pLx652epUkuld_9ctx5o,14555
767
767
  reconcile/utils/ocm/cluster_groups.py,sha256=F8oqVqN_4QUnGL0K61zZhoYIzJeP57EcmZpwmoV0mr4,1751
768
768
  reconcile/utils/ocm/clusters.py,sha256=Fn4swizm1qq-XiNlIZ9SvahkftWAyNT8hF4kqRBpK4g,8287
769
769
  reconcile/utils/ocm/identity_providers.py,sha256=dKed09N8iWmn39tI_MpwgVe47x23eLsknGbjMUxtwr4,2175
@@ -842,8 +842,8 @@ tools/test/test_qontract_cli.py,sha256=_D61RFGAN5x44CY1tYbouhlGXXABwYfxKSWSQx3Jr
842
842
  tools/test/test_saas_promotion_state.py,sha256=dy4kkSSAQ7bC0Xp2CociETGN-2aABEfL6FU5D9Jl00Y,6056
843
843
  tools/test/test_sd_app_sre_alert_report.py,sha256=v363r9zM7__0kR5K6mvJoGFcM9BvE33fWAayrqkpojA,2116
844
844
  tools/test/test_sre_checkpoints.py,sha256=SKqPPTl9ua0RFdSSofnoQX-JZE6dFLO3LRhfQzqtfh8,2607
845
- qontract_reconcile-0.10.1rc938.dist-info/METADATA,sha256=8eH4i_Fb7X4grau64UTXOtx-nGf9JlgMej8egsZGHAU,2262
846
- qontract_reconcile-0.10.1rc938.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
847
- qontract_reconcile-0.10.1rc938.dist-info/entry_points.txt,sha256=GKQqCl2j2X1BJQ69een6rHcR26PmnxnONLNOQB-nRjY,491
848
- qontract_reconcile-0.10.1rc938.dist-info/top_level.txt,sha256=l5ISPoXzt0SdR4jVdkfa7RPSKNc8zAHYWAnR-Dw8Ey8,24
849
- qontract_reconcile-0.10.1rc938.dist-info/RECORD,,
845
+ qontract_reconcile-0.10.1rc939.dist-info/METADATA,sha256=ULnjl5Sj7paYWKaO16SwIorJAhe-FNLim-F-PqxDE5U,2262
846
+ qontract_reconcile-0.10.1rc939.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
847
+ qontract_reconcile-0.10.1rc939.dist-info/entry_points.txt,sha256=GKQqCl2j2X1BJQ69een6rHcR26PmnxnONLNOQB-nRjY,491
848
+ qontract_reconcile-0.10.1rc939.dist-info/top_level.txt,sha256=l5ISPoXzt0SdR4jVdkfa7RPSKNc8zAHYWAnR-Dw8Ey8,24
849
+ qontract_reconcile-0.10.1rc939.dist-info/RECORD,,
reconcile/ocm_groups.py CHANGED
@@ -13,6 +13,7 @@ from reconcile import (
13
13
  from reconcile.status import ExitCodes
14
14
  from reconcile.utils.disabled_integrations import integration_is_enabled
15
15
  from reconcile.utils.ocm import OCMMap
16
+ from reconcile.utils.ocm.base import OCMClusterGroupId
16
17
 
17
18
  QONTRACT_INTEGRATION = "ocm-groups"
18
19
 
@@ -76,9 +77,12 @@ def run(dry_run, thread_pool_size=10):
76
77
  ocm_map, current_state = fetch_current_state(clusters, thread_pool_size)
77
78
  desired_state = openshift_groups.fetch_desired_state(clusters=ocm_map.clusters())
78
79
 
79
- # we only manage dedicated-admins via OCM
80
- current_state = [s for s in current_state if s["group"] == "dedicated-admins"]
81
- desired_state = [s for s in desired_state if s["group"] == "dedicated-admins"]
80
+ current_state = [
81
+ s for s in current_state if s["group"] in OCMClusterGroupId.values()
82
+ ]
83
+ desired_state = [
84
+ s for s in desired_state if s["group"] in OCMClusterGroupId.values()
85
+ ]
82
86
 
83
87
  diffs = openshift_groups.calculate_diff(current_state, desired_state)
84
88
  openshift_groups.validate_diffs(diffs)
@@ -100,8 +104,9 @@ def early_exit_desired_state(*args, **kwargs) -> dict[str, Any]:
100
104
  if integration_is_enabled(QONTRACT_INTEGRATION, c) and _cluster_is_compatible(c)
101
105
  ]
102
106
  desired_state = openshift_groups.fetch_desired_state(clusters=clusters)
103
- # we only manage dedicated-admins via OCM
104
- desired_state = [s for s in desired_state if s["group"] == "dedicated-admins"]
107
+ desired_state = [
108
+ s for s in desired_state if s["group"] in OCMClusterGroupId.values()
109
+ ]
105
110
 
106
111
  return {
107
112
  "state": desired_state,
@@ -31,6 +31,7 @@ from reconcile.utils.oc_map import (
31
31
  OCMap,
32
32
  init_oc_map_from_clusters,
33
33
  )
34
+ from reconcile.utils.ocm.base import OCMClusterGroupId
34
35
  from reconcile.utils.secret_reader import create_secret_reader
35
36
  from reconcile.utils.sharding import is_in_shard
36
37
 
@@ -270,16 +271,19 @@ def run(
270
271
  defer(oc_map.cleanup)
271
272
  desired_state = fetch_desired_state(oc_map.clusters())
272
273
 
273
- # we only manage dedicated-admins via OCM
274
274
  current_state = [
275
275
  s
276
276
  for s in current_state
277
- if not (s["cluster"] in ocm_clusters and s["group"] == "dedicated-admins")
277
+ if not (
278
+ s["cluster"] in ocm_clusters and s["group"] in OCMClusterGroupId.values()
279
+ )
278
280
  ]
279
281
  desired_state = [
280
282
  s
281
283
  for s in desired_state
282
- if not (s["cluster"] in ocm_clusters and s["group"] == "dedicated-admins")
284
+ if not (
285
+ s["cluster"] in ocm_clusters and s["group"] in OCMClusterGroupId.values()
286
+ )
283
287
  ]
284
288
 
285
289
  ob.publish_cluster_desired_metrics_from_state(
@@ -64,6 +64,10 @@ class OCMClusterGroupId(Enum):
64
64
  DEDICATED_ADMINS = "dedicated-admins"
65
65
  CLUSTER_ADMINS = "cluster-admins"
66
66
 
67
+ @classmethod
68
+ def values(cls) -> list[str]:
69
+ return [group.value for group in cls]
70
+
67
71
 
68
72
  class OCMClusterUser(BaseModel):
69
73
  """