2727aw_dir = os .path .expanduser ("~/.codeflare/appwrapper/" )
2828sys .path .append (str (parent ) + "/src" )
2929
30- from kubernetes import client , config
30+ from kubernetes import client , config , dynamic
3131from codeflare_sdk .cluster .awload import AWManager
3232from codeflare_sdk .cluster .cluster import (
3333 Cluster ,
9090 read_template ,
9191 enable_local_interactive ,
9292)
93+ import codeflare_sdk .utils .openshift_oauth as sdk_oauth
9394
9495import openshift
9596from openshift .selector import Selector
109110fake_res = openshift .Result ("fake" )
110111
111112
113+ def mock_routes_api (mocker ):
114+ mocker .patch .object (
115+ sdk_oauth ,
116+ "_route_api_getter" ,
117+ return_value = MagicMock (
118+ resources = MagicMock (
119+ get = MagicMock (
120+ return_value = MagicMock (
121+ create = MagicMock (),
122+ replace = MagicMock (),
123+ delete = MagicMock (),
124+ )
125+ )
126+ )
127+ ),
128+ )
129+
130+
112131def arg_side_effect (* args ):
113132 fake_res .high_level_operation = args
114133 return fake_res
@@ -535,17 +554,14 @@ def test_delete_openshift_oauth_objects(mocker):
535554 mocker .patch .object (client .CoreV1Api , "delete_namespaced_service" )
536555 mocker .patch .object (client .NetworkingV1Api , "delete_namespaced_ingress" )
537556 mocker .patch .object (client .RbacAuthorizationV1Api , "delete_cluster_role_binding" )
557+ mock_routes_api (mocker )
538558 delete_openshift_oauth_objects ("test-cluster" , "test-namespace" )
539-
540559 client .CoreV1Api .delete_namespaced_service_account .assert_called_with (
541560 name = "test-cluster-oauth-proxy" , namespace = "test-namespace"
542561 )
543562 client .CoreV1Api .delete_namespaced_service .assert_called_with (
544563 name = "test-cluster-oauth" , namespace = "test-namespace"
545564 )
546- client .NetworkingV1Api .delete_namespaced_ingress .assert_called_with (
547- name = "test-cluster-ingress" , namespace = "test-namespace"
548- )
549565 client .RbacAuthorizationV1Api .delete_cluster_role_binding .assert_called_with (
550566 name = "test-cluster-rb"
551567 )
@@ -2675,7 +2691,6 @@ def test_create_openshift_oauth(mocker: MockerFixture):
26752691 create_namespaced_service_account = MagicMock ()
26762692 create_cluster_role_binding = MagicMock ()
26772693 create_namespaced_service = MagicMock ()
2678- create_namespaced_ingress = MagicMock ()
26792694 mocker .patch .object (
26802695 client .CoreV1Api ,
26812696 "create_namespaced_service_account" ,
@@ -2689,35 +2704,17 @@ def test_create_openshift_oauth(mocker: MockerFixture):
26892704 mocker .patch .object (
26902705 client .CoreV1Api , "create_namespaced_service" , create_namespaced_service
26912706 )
2692- mocker .patch .object (
2693- client .NetworkingV1Api , "create_namespaced_ingress" , create_namespaced_ingress
2694- )
2695- mocker .patch (
2696- "codeflare_sdk.utils.openshift_oauth._get_api_host" , return_value = "foo.com"
2697- )
2707+ mock_routes_api (mocker )
26982708 create_openshift_oauth_objects ("foo" , "bar" )
26992709 create_ns_sa_args = create_namespaced_service_account .call_args
27002710 create_crb_args = create_cluster_role_binding .call_args
27012711 create_ns_serv_args = create_namespaced_service .call_args
2702- create_ns_ingress_args = create_namespaced_ingress .call_args
27032712 assert (
27042713 create_ns_sa_args .kwargs ["namespace" ] == create_ns_serv_args .kwargs ["namespace" ]
27052714 )
2706- assert (
2707- create_ns_serv_args .kwargs ["namespace" ]
2708- == create_ns_ingress_args .kwargs ["namespace" ]
2709- )
27102715 assert isinstance (create_ns_sa_args .kwargs ["body" ], client .V1ServiceAccount )
27112716 assert isinstance (create_crb_args .kwargs ["body" ], client .V1ClusterRoleBinding )
27122717 assert isinstance (create_ns_serv_args .kwargs ["body" ], client .V1Service )
2713- assert isinstance (create_ns_ingress_args .kwargs ["body" ], client .V1Ingress )
2714- assert (
2715- create_ns_serv_args .kwargs ["body" ].spec .ports [0 ].name
2716- == create_ns_ingress_args .kwargs ["body" ]
2717- .spec .rules [0 ]
2718- .http .paths [0 ]
2719- .backend .service .port .name
2720- )
27212718
27222719
27232720def test_replace_openshift_oauth (mocker : MockerFixture ):
@@ -2731,9 +2728,6 @@ def test_replace_openshift_oauth(mocker: MockerFixture):
27312728 create_namespaced_service = MagicMock (
27322729 side_effect = client .ApiException (reason = "Conflict" )
27332730 )
2734- create_namespaced_ingress = MagicMock (
2735- side_effect = client .ApiException (reason = "Conflict" )
2736- )
27372731 mocker .patch .object (
27382732 client .CoreV1Api ,
27392733 "create_namespaced_service_account" ,
@@ -2747,16 +2741,10 @@ def test_replace_openshift_oauth(mocker: MockerFixture):
27472741 mocker .patch .object (
27482742 client .CoreV1Api , "create_namespaced_service" , create_namespaced_service
27492743 )
2750- mocker .patch .object (
2751- client .NetworkingV1Api , "create_namespaced_ingress" , create_namespaced_ingress
2752- )
2753- mocker .patch (
2754- "codeflare_sdk.utils.openshift_oauth._get_api_host" , return_value = "foo.com"
2755- )
2744+ mocker .patch .object (dynamic .ResourceList , "get" , return_value = True )
27562745 replace_namespaced_service_account = MagicMock ()
27572746 replace_cluster_role_binding = MagicMock ()
27582747 replace_namespaced_service = MagicMock ()
2759- replace_namespaced_ingress = MagicMock ()
27602748 mocker .patch .object (
27612749 client .CoreV1Api ,
27622750 "replace_namespaced_service_account" ,
@@ -2770,21 +2758,15 @@ def test_replace_openshift_oauth(mocker: MockerFixture):
27702758 mocker .patch .object (
27712759 client .CoreV1Api , "replace_namespaced_service" , replace_namespaced_service
27722760 )
2773- mocker .patch .object (
2774- client .NetworkingV1Api , "replace_namespaced_ingress" , replace_namespaced_ingress
2775- )
2761+ mock_routes_api (mocker )
27762762 create_openshift_oauth_objects ("foo" , "bar" )
27772763 replace_namespaced_service_account .assert_called_once ()
27782764 replace_cluster_role_binding .assert_called_once ()
27792765 replace_namespaced_service .assert_called_once ()
2780- replace_namespaced_ingress .assert_called_once ()
27812766
27822767
27832768def test_gen_app_wrapper_with_oauth (mocker : MockerFixture ):
27842769 mocker .patch ("kubernetes.client.ApisApi.get_api_versions" )
2785- mocker .patch (
2786- "codeflare_sdk.utils.generate_yaml._get_api_host" , return_value = "foo.com"
2787- )
27882770 mocker .patch (
27892771 "codeflare_sdk.cluster.cluster.get_current_namespace" ,
27902772 return_value = "opendatahub" ,
0 commit comments