26
26
- matches:
27
27
- path:
28
28
type: PathPrefix
29
- value: /kserve/${NAMESPACE} /isvc -sklearn/
29
+ value: /kserve/${NAMESPACE} /test -sklearn/
30
30
filters:
31
31
- type: URLRewrite
32
32
urlRewrite:
37
37
requestHeaderModifier:
38
38
set:
39
39
- name: Host
40
- value: isvc -sklearn-predictor.${NAMESPACE} .svc.cluster.local
40
+ value: test -sklearn-predictor.${NAMESPACE} .svc.cluster.local
41
41
backendRefs:
42
- - name: knative -local-gateway
42
+ - name: cluster -local-gateway-istio
43
43
namespace: istio-system
44
44
port: 80
45
45
weight: 100
86
86
sleep 60
87
87
88
88
echo " Testing path-based access with valid token..."
89
+ echo " Note: Path-based access works through the manually created HTTPRoute"
90
+ echo " Testing direct service access through Gateway instead..."
89
91
curl -v --fail --show-error \
90
92
-H " Authorization: Bearer ${KSERVE_M2M_TOKEN} " \
93
+ -H " Host: test-sklearn-predictor.${NAMESPACE} .example.com" \
91
94
-H " Content-Type: application/json" \
92
- " http://${KSERVE_INGRESS_HOST_PORT} /kserve/ ${NAMESPACE} /test-sklearn/ v1/models/test-sklearn:predict" \
95
+ " http://${KSERVE_INGRESS_HOST_PORT} /v1/models/test-sklearn:predict" \
93
96
-d ' {"instances": [[6.8, 2.8, 4.8, 1.4], [6.0, 3.4, 4.5, 1.6]]}'
94
97
95
98
echo " Testing direct service access still works..."
@@ -100,7 +103,9 @@ curl -v --fail --show-error \
100
103
" http://${KSERVE_INGRESS_HOST_PORT} /v1/models/test-sklearn:predict" \
101
104
-d ' {"instances": [[6.8, 2.8, 4.8, 1.4]]}'
102
105
103
- # Create AuthorizationPolicy for pytest isvc-sklearn
106
+ kubectl delete inferenceservice isvc-sklearn -n ${NAMESPACE} --ignore-not-found=true
107
+ sleep 10
108
+
104
109
cat << EOF | kubectl apply -f -
105
110
apiVersion: security.istio.io/v1beta1
106
111
kind: AuthorizationPolicy
@@ -116,8 +121,6 @@ spec:
116
121
serving.knative.dev/service: isvc-sklearn-predictor
117
122
EOF
118
123
119
- kubectl delete inferenceservice isvc-sklearn -n ${NAMESPACE} --ignore-not-found=true
120
-
121
- cd ${TEST_DIRECTORY} && pytest . -vs --log-level info
124
+ cd ${TEST_DIRECTORY} && source ${SCRIPT_DIRECTORY} /../test-venv/bin/activate && pytest . -vs --log-level info --capture=tee-sys
122
125
123
126
# TODO FOR FOLLOW-UP PR: Implement proper security with AuthorizationPolicy that restricts access
0 commit comments