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 ,
9191 read_template ,
9292 enable_local_interactive ,
9393)
94+ import codeflare_sdk .utils .openshift_oauth as sdk_oauth
9495
9596import openshift
9697from openshift .selector import Selector
110111fake_res = openshift .Result ("fake" )
111112
112113
114+ def mock_routes_api (mocker ):
115+ mocker .patch .object (
116+ sdk_oauth ,
117+ "_route_api_getter" ,
118+ return_value = MagicMock (
119+ resources = MagicMock (
120+ get = MagicMock (
121+ return_value = MagicMock (
122+ create = MagicMock (),
123+ replace = MagicMock (),
124+ delete = MagicMock (),
125+ )
126+ )
127+ )
128+ ),
129+ )
130+
131+
113132def arg_side_effect (* args ):
114133 fake_res .high_level_operation = args
115134 return fake_res
@@ -536,17 +555,14 @@ def test_delete_openshift_oauth_objects(mocker):
536555 mocker .patch .object (client .CoreV1Api , "delete_namespaced_service" )
537556 mocker .patch .object (client .NetworkingV1Api , "delete_namespaced_ingress" )
538557 mocker .patch .object (client .RbacAuthorizationV1Api , "delete_cluster_role_binding" )
558+ mock_routes_api (mocker )
539559 delete_openshift_oauth_objects ("test-cluster" , "test-namespace" )
540-
541560 client .CoreV1Api .delete_namespaced_service_account .assert_called_with (
542561 name = "test-cluster-oauth-proxy" , namespace = "test-namespace"
543562 )
544563 client .CoreV1Api .delete_namespaced_service .assert_called_with (
545564 name = "test-cluster-oauth" , namespace = "test-namespace"
546565 )
547- client .NetworkingV1Api .delete_namespaced_ingress .assert_called_with (
548- name = "test-cluster-ingress" , namespace = "test-namespace"
549- )
550566 client .RbacAuthorizationV1Api .delete_cluster_role_binding .assert_called_with (
551567 name = "test-cluster-rb"
552568 )
@@ -2751,7 +2767,6 @@ def test_create_openshift_oauth(mocker: MockerFixture):
27512767 create_namespaced_service_account = MagicMock ()
27522768 create_cluster_role_binding = MagicMock ()
27532769 create_namespaced_service = MagicMock ()
2754- create_namespaced_ingress = MagicMock ()
27552770 mocker .patch .object (
27562771 client .CoreV1Api ,
27572772 "create_namespaced_service_account" ,
@@ -2765,35 +2780,17 @@ def test_create_openshift_oauth(mocker: MockerFixture):
27652780 mocker .patch .object (
27662781 client .CoreV1Api , "create_namespaced_service" , create_namespaced_service
27672782 )
2768- mocker .patch .object (
2769- client .NetworkingV1Api , "create_namespaced_ingress" , create_namespaced_ingress
2770- )
2771- mocker .patch (
2772- "codeflare_sdk.utils.openshift_oauth._get_api_host" , return_value = "foo.com"
2773- )
2783+ mock_routes_api (mocker )
27742784 create_openshift_oauth_objects ("foo" , "bar" )
27752785 create_ns_sa_args = create_namespaced_service_account .call_args
27762786 create_crb_args = create_cluster_role_binding .call_args
27772787 create_ns_serv_args = create_namespaced_service .call_args
2778- create_ns_ingress_args = create_namespaced_ingress .call_args
27792788 assert (
27802789 create_ns_sa_args .kwargs ["namespace" ] == create_ns_serv_args .kwargs ["namespace" ]
27812790 )
2782- assert (
2783- create_ns_serv_args .kwargs ["namespace" ]
2784- == create_ns_ingress_args .kwargs ["namespace" ]
2785- )
27862791 assert isinstance (create_ns_sa_args .kwargs ["body" ], client .V1ServiceAccount )
27872792 assert isinstance (create_crb_args .kwargs ["body" ], client .V1ClusterRoleBinding )
27882793 assert isinstance (create_ns_serv_args .kwargs ["body" ], client .V1Service )
2789- assert isinstance (create_ns_ingress_args .kwargs ["body" ], client .V1Ingress )
2790- assert (
2791- create_ns_serv_args .kwargs ["body" ].spec .ports [0 ].name
2792- == create_ns_ingress_args .kwargs ["body" ]
2793- .spec .rules [0 ]
2794- .http .paths [0 ]
2795- .backend .service .port .name
2796- )
27972794
27982795
27992796def test_replace_openshift_oauth (mocker : MockerFixture ):
@@ -2807,9 +2804,6 @@ def test_replace_openshift_oauth(mocker: MockerFixture):
28072804 create_namespaced_service = MagicMock (
28082805 side_effect = client .ApiException (reason = "Conflict" )
28092806 )
2810- create_namespaced_ingress = MagicMock (
2811- side_effect = client .ApiException (reason = "Conflict" )
2812- )
28132807 mocker .patch .object (
28142808 client .CoreV1Api ,
28152809 "create_namespaced_service_account" ,
@@ -2823,16 +2817,10 @@ def test_replace_openshift_oauth(mocker: MockerFixture):
28232817 mocker .patch .object (
28242818 client .CoreV1Api , "create_namespaced_service" , create_namespaced_service
28252819 )
2826- mocker .patch .object (
2827- client .NetworkingV1Api , "create_namespaced_ingress" , create_namespaced_ingress
2828- )
2829- mocker .patch (
2830- "codeflare_sdk.utils.openshift_oauth._get_api_host" , return_value = "foo.com"
2831- )
2820+ mocker .patch .object (dynamic .ResourceList , "get" , return_value = True )
28322821 replace_namespaced_service_account = MagicMock ()
28332822 replace_cluster_role_binding = MagicMock ()
28342823 replace_namespaced_service = MagicMock ()
2835- replace_namespaced_ingress = MagicMock ()
28362824 mocker .patch .object (
28372825 client .CoreV1Api ,
28382826 "replace_namespaced_service_account" ,
@@ -2846,21 +2834,15 @@ def test_replace_openshift_oauth(mocker: MockerFixture):
28462834 mocker .patch .object (
28472835 client .CoreV1Api , "replace_namespaced_service" , replace_namespaced_service
28482836 )
2849- mocker .patch .object (
2850- client .NetworkingV1Api , "replace_namespaced_ingress" , replace_namespaced_ingress
2851- )
2837+ mock_routes_api (mocker )
28522838 create_openshift_oauth_objects ("foo" , "bar" )
28532839 replace_namespaced_service_account .assert_called_once ()
28542840 replace_cluster_role_binding .assert_called_once ()
28552841 replace_namespaced_service .assert_called_once ()
2856- replace_namespaced_ingress .assert_called_once ()
28572842
28582843
28592844def test_gen_app_wrapper_with_oauth (mocker : MockerFixture ):
28602845 mocker .patch ("kubernetes.client.ApisApi.get_api_versions" )
2861- mocker .patch (
2862- "codeflare_sdk.utils.generate_yaml._get_api_host" , return_value = "foo.com"
2863- )
28642846 mocker .patch (
28652847 "codeflare_sdk.cluster.cluster.get_current_namespace" ,
28662848 return_value = "opendatahub" ,
0 commit comments