6
6
import pyhelm3
7
7
import pytest
8
8
from lightkube import AsyncClient
9
- from lightkube .resources .core_v1 import ConfigMap
10
9
11
10
from .fixtures import ESSData
12
- from .lib .helpers import deploy_with_values_patch
11
+ from .lib .helpers import deploy_with_values_patch , get_deployment_marker
13
12
from .lib .utils import aiohttp_post_json , value_file_has
14
13
from .test_matrix_authentication_service import test_matrix_authentication_service_graphql_endpoint
15
14
@@ -28,13 +27,7 @@ async def test_run_syn2mas_upgrade(
28
27
):
29
28
access_token = users [0 ]
30
29
await ingress_ready ("synapse" )
31
- configmap = await kube_client .get (
32
- ConfigMap ,
33
- namespace = generated_data .ess_namespace ,
34
- name = f"{ generated_data .release_name } -markers" ,
35
- )
36
- assert configmap .data .get ("MATRIX_STACK_MSC3861" ) == "legacy_auth"
37
-
30
+ assert await get_deployment_marker (kube_client , generated_data , "MATRIX_STACK_MSC3861" ) == "legacy_auth"
38
31
# After the base chart is setup, we enable MAS to run the syn2mas dry run job
39
32
revision , error = await deploy_with_values_patch (
40
33
generated_data , helm_client , {"matrixAuthenticationService" : {"enabled" : True }}
@@ -45,12 +38,7 @@ async def test_run_syn2mas_upgrade(
45
38
await ingress_ready ("synapse" )
46
39
47
40
# Syn2Mas is running in dryRun mode, so the state has not changed yet
48
- configmap = await kube_client .get (
49
- ConfigMap ,
50
- namespace = generated_data .ess_namespace ,
51
- name = f"{ generated_data .release_name } -markers" ,
52
- )
53
- assert configmap .data .get ("MATRIX_STACK_MSC3861" ) == "legacy_auth"
41
+ assert await get_deployment_marker (kube_client , generated_data , "MATRIX_STACK_MSC3861" ) == "legacy_auth"
54
42
55
43
# After the base chart is setup, we enable MAS to run the syn2mas actual migration
56
44
revision , error = await deploy_with_values_patch (
@@ -60,12 +48,7 @@ async def test_run_syn2mas_upgrade(
60
48
assert revision .status == pyhelm3 .ReleaseRevisionStatus .DEPLOYED
61
49
62
50
# Syn2Mas is running in migrate mode, so the state must have changed
63
- configmap = await kube_client .get (
64
- ConfigMap ,
65
- namespace = generated_data .ess_namespace ,
66
- name = f"{ generated_data .release_name } -markers" ,
67
- )
68
- assert configmap .data .get ("MATRIX_STACK_MSC3861" ) == "syn2mas_migrated"
51
+ assert await get_deployment_marker (kube_client , generated_data , "MATRIX_STACK_MSC3861" ) == "syn2mas_migrated"
69
52
70
53
# We should still be able to reach synapse ingress
71
54
await ingress_ready ("synapse" )
@@ -92,14 +75,9 @@ async def test_run_syn2mas_upgrade(
92
75
await test_matrix_authentication_service_graphql_endpoint (ingress_ready , generated_data , ssl_context )
93
76
94
77
# The marker should now show delegated_auth
95
- configmap = await kube_client .get (
96
- ConfigMap ,
97
- namespace = generated_data .ess_namespace ,
98
- name = f"{ generated_data .release_name } -markers" ,
99
- )
100
- assert configmap .data .get ("MATRIX_STACK_MSC3861" ) == "delegated_auth"
101
- revision = await deploy_with_values_patch (
102
- generated_data , helm_client , {"matrixAuthenticationService" : {"syn2mas" : {"enabled" : True }}}
78
+ assert await get_deployment_marker (kube_client , generated_data , "MATRIX_STACK_MSC3861" ) == "delegated_auth"
79
+ revision , error = await deploy_with_values_patch (
80
+ generated_data , helm_client , {"matrixAuthenticationService" : {"syn2mas" : {"enabled" : True }}}, timeout = "15s"
103
81
)
104
82
assert error is not None
105
83
assert revision .status == pyhelm3 .ReleaseRevisionStatus .FAILED
0 commit comments