qontract-reconcile 0.10.2.dev23__py3-none-any.whl → 0.10.2.dev24__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.dev23.dist-info → qontract_reconcile-0.10.2.dev24.dist-info}/METADATA +1 -1
- {qontract_reconcile-0.10.2.dev23.dist-info → qontract_reconcile-0.10.2.dev24.dist-info}/RECORD +6 -6
- reconcile/endpoints_discovery/integration.py +16 -1
- reconcile/gql_definitions/endpoints_discovery/apps.py +4 -0
- {qontract_reconcile-0.10.2.dev23.dist-info → qontract_reconcile-0.10.2.dev24.dist-info}/WHEEL +0 -0
- {qontract_reconcile-0.10.2.dev23.dist-info → qontract_reconcile-0.10.2.dev24.dist-info}/entry_points.txt +0 -0
{qontract_reconcile-0.10.2.dev23.dist-info → qontract_reconcile-0.10.2.dev24.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.dev24
|
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
|
{qontract_reconcile-0.10.2.dev23.dist-info → qontract_reconcile-0.10.2.dev24.dist-info}/RECORD
RENAMED
@@ -191,7 +191,7 @@ reconcile/dynatrace_token_provider/model.py,sha256=gkpqo5rRRueBXnIMjp4EEHqBUBuU6
|
|
191
191
|
reconcile/dynatrace_token_provider/ocm.py,sha256=MwYCZIxW4f-1jzFTxxN__sity6S8O7bbKUdyTFEVO7U,4325
|
192
192
|
reconcile/dynatrace_token_provider/validate.py,sha256=40_9QmHoB3-KBc0k_0D4QO00PpNNPS-gU9Z6cIcWga8,1920
|
193
193
|
reconcile/endpoints_discovery/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
194
|
-
reconcile/endpoints_discovery/integration.py,sha256=
|
194
|
+
reconcile/endpoints_discovery/integration.py,sha256=fzy5tv4c_6WoAZGGBNJ276NVNB1OESuSJMhZh4-ZNm8,14711
|
195
195
|
reconcile/endpoints_discovery/merge_request.py,sha256=_yLb4tnvoZMCko8rta2C_CvOInJa9pa3HzSmHNtjgGU,2978
|
196
196
|
reconcile/endpoints_discovery/merge_request_manager.py,sha256=wUMsumxv8RnWaRattax4HfoRlhtVzmgro3GiJJ1C4Vc,6392
|
197
197
|
reconcile/external_resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -293,7 +293,7 @@ reconcile/gql_definitions/dynatrace_token_provider/__init__.py,sha256=47DEQpj8HB
|
|
293
293
|
reconcile/gql_definitions/dynatrace_token_provider/dynatrace_bootstrap_tokens.py,sha256=5gTuAnR2rnx2k6Rn7FMEAzw6GCZ6F5HZbqkmJ9-3NI4,2244
|
294
294
|
reconcile/gql_definitions/dynatrace_token_provider/token_specs.py,sha256=XGsMuB8gowRpqJjkD_KRomx-1OswzyWbF4qjVdhionk,2555
|
295
295
|
reconcile/gql_definitions/endpoints_discovery/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
296
|
-
reconcile/gql_definitions/endpoints_discovery/apps.py,sha256=
|
296
|
+
reconcile/gql_definitions/endpoints_discovery/apps.py,sha256=aBWRAwDUJQ32ghJS4cPQcR9SNl20Fcwd3pxHDB3YJQY,3172
|
297
297
|
reconcile/gql_definitions/external_resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
298
298
|
reconcile/gql_definitions/external_resources/aws_accounts.py,sha256=XR69j9dpTQ0gv8y-AZN7AJ0dPvO-wbHscyCDgrax6Bk,2046
|
299
299
|
reconcile/gql_definitions/external_resources/external_resources_modules.py,sha256=cbbvGq1Te9DP8XiFg3bp4Y0q6LxpGYov8ugcROPyPLI,2647
|
@@ -767,7 +767,7 @@ tools/saas_promotion_state/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJ
|
|
767
767
|
tools/saas_promotion_state/saas_promotion_state.py,sha256=UfwwRLS5Ya4_Nh1w5n1dvoYtchQvYE9yj1VANt2IKqI,3925
|
768
768
|
tools/sre_checkpoints/__init__.py,sha256=CDaDaywJnmRCLyl_NCcvxi-Zc0hTi_3OdwKiFOyS39I,145
|
769
769
|
tools/sre_checkpoints/util.py,sha256=zEDbGr18ZeHNQwW8pUsr2JRjuXIPz--WAGJxZo9sv_Y,894
|
770
|
-
qontract_reconcile-0.10.2.
|
771
|
-
qontract_reconcile-0.10.2.
|
772
|
-
qontract_reconcile-0.10.2.
|
773
|
-
qontract_reconcile-0.10.2.
|
770
|
+
qontract_reconcile-0.10.2.dev24.dist-info/METADATA,sha256=3PESZ9C6DwAy3yl39ijxJD9JP3-4K2PC0C-yPyZ0MaI,24665
|
771
|
+
qontract_reconcile-0.10.2.dev24.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
772
|
+
qontract_reconcile-0.10.2.dev24.dist-info/entry_points.txt,sha256=JniHZPadNOILPyfSl0LF2YSp3Db7K2_W2CN7i9f3Gos,540
|
773
|
+
qontract_reconcile-0.10.2.dev24.dist-info/RECORD,,
|
@@ -220,6 +220,16 @@ class EndpointsDiscoveryIntegration(
|
|
220
220
|
]
|
221
221
|
return endpoints_to_add, endpoints_to_change, endpoints_to_delete
|
222
222
|
|
223
|
+
def filter_ignored_routes(
|
224
|
+
self, routes: list[Route], labels: dict[str, str]
|
225
|
+
) -> list[Route]:
|
226
|
+
"""Filter out the ignored routes."""
|
227
|
+
return [
|
228
|
+
route
|
229
|
+
for route in routes
|
230
|
+
if f"{QONTRACT_INTEGRATION}-{route.name}" not in labels
|
231
|
+
]
|
232
|
+
|
223
233
|
def process(
|
224
234
|
self,
|
225
235
|
oc_map: OCMap,
|
@@ -231,6 +241,7 @@ class EndpointsDiscoveryIntegration(
|
|
231
241
|
apps_with_changes: list[App] = []
|
232
242
|
for app in apps:
|
233
243
|
app_endpoints = App(name=app.name, path=app.path)
|
244
|
+
|
234
245
|
for namespace in app.namespaces or []:
|
235
246
|
if not self.is_enabled(namespace, cluster_names=cluster_names):
|
236
247
|
continue
|
@@ -238,7 +249,11 @@ class EndpointsDiscoveryIntegration(
|
|
238
249
|
logging.debug(
|
239
250
|
f"Processing namespace {namespace.cluster.name}/{namespace.name}"
|
240
251
|
)
|
241
|
-
|
252
|
+
|
253
|
+
routes = self.filter_ignored_routes(
|
254
|
+
self.get_routes(oc_map, namespace),
|
255
|
+
(app.labels or {}) | (namespace.labels or {}),
|
256
|
+
)
|
242
257
|
endpoints_to_add, endpoints_to_change, endpoints_to_delete = (
|
243
258
|
self.get_namespace_endpoint_changes(
|
244
259
|
endpoint_prefix=endpoint_prefix(namespace),
|
@@ -62,12 +62,14 @@ query EndPointsDiscoveryApps {
|
|
62
62
|
apps: apps_v1 {
|
63
63
|
path
|
64
64
|
name
|
65
|
+
labels
|
65
66
|
endPoints {
|
66
67
|
name
|
67
68
|
url
|
68
69
|
}
|
69
70
|
namespaces {
|
70
71
|
name
|
72
|
+
labels
|
71
73
|
delete
|
72
74
|
clusterAdmin
|
73
75
|
cluster {
|
@@ -92,6 +94,7 @@ class AppEndPointsV1(ConfiguredBaseModel):
|
|
92
94
|
|
93
95
|
class NamespaceV1(ConfiguredBaseModel):
|
94
96
|
name: str = Field(..., alias="name")
|
97
|
+
labels: Optional[Json] = Field(..., alias="labels")
|
95
98
|
delete: Optional[bool] = Field(..., alias="delete")
|
96
99
|
cluster_admin: Optional[bool] = Field(..., alias="clusterAdmin")
|
97
100
|
cluster: OcConnectionCluster = Field(..., alias="cluster")
|
@@ -100,6 +103,7 @@ class NamespaceV1(ConfiguredBaseModel):
|
|
100
103
|
class AppV1(ConfiguredBaseModel):
|
101
104
|
path: str = Field(..., alias="path")
|
102
105
|
name: str = Field(..., alias="name")
|
106
|
+
labels: Optional[Json] = Field(..., alias="labels")
|
103
107
|
end_points: Optional[list[AppEndPointsV1]] = Field(..., alias="endPoints")
|
104
108
|
namespaces: Optional[list[NamespaceV1]] = Field(..., alias="namespaces")
|
105
109
|
|
{qontract_reconcile-0.10.2.dev23.dist-info → qontract_reconcile-0.10.2.dev24.dist-info}/WHEEL
RENAMED
File without changes
|
File without changes
|