Unsupported `linkAccess` Type Causes Site to Remain in Pending State
Closed this issue · 0 comments
rafaelvzago commented
Describe the bug
When setting an unsupported value (rocket
) for the linkAccess
property in a Skupper Site
resource, the site remains in a Pending
state. The controller logs this issue as an INFO
message instead of an ERROR
, making it difficult to identify the root cause. The lack of validation or clear feedback for invalid linkAccess
values contributes to user confusion.
How To Reproduce
Steps to reproduce the behavior:
- Install Skupper using the following configuration:
- Repository:
https://github.com/skupperproject/skupper.git
- Branch:
v2
- Release name:
skupper-setup
- Repository:
- Deploy a
Site
resource with the following spec:apiVersion: skupper.io/v2alpha1 kind: Site metadata: name: hello-world-west namespace: zago-hello-world-west spec: linkAccess: rocket
- Check the site status:
Output:
kubectl get site -n zago-hello-world-west
NAME STATUS SITES IN NETWORK MESSAGE hello-world-west Pending 1 Pending
- Review the controller logs:
time=2024-11-22T17:33:10.777Z level=INFO msg="Unsupported access type \"rocket\" in SecuredAccess zago-hello-world-west/skupper-router-1"
Expected behavior
- The controller should log an
ERROR
message instead ofINFO
for unsupportedlinkAccess
values. - The user should receive clear feedback in the logs indicating that the value is invalid.
- The
linkAccess
field should be validated against the documented valid values (none
,default
,route
,loadbalancer
), and the site should fail to apply the configuration if the value is invalid.
Environment details
- Skupper CLI: v2
- Skupper Operator (if applicable): v2
- Platform: Kubernetes (local cluster)
Additional context
The valid values for linkAccess
, as per the documentation, are:
none
: No linking to this site is permitted.default
: Use the default link access for the current platform.- On OpenShift, the default is
route
. - On Kubernetes, the default is
loadbalancer
.
- On OpenShift, the default is
route
: Use an OpenShift route (OpenShift only).loadbalancer
: Use a Kubernetes load balancer (Kubernetes only).
Improving logging and validation for linkAccess
will help users quickly identify and resolve configuration issues.