While reconciling SKS, the reconciler will reconcile Public Endpoints and mark Activator Endpoints Populated into Condition at last. If no backends or if we're in the proxy mode, the activator will be considered to backs this revision. But in fact, if no activator mark Activator Endpoints Populated found, the mode will be forced into "Serve", and not be put in path. Would it be better to exclude this scenario when marking “ActivatorEndpointsPopulated” Condition?
Actual Behavior
Marking Activator Endpoints Populated while reconciling SKS, ignoring the scenario of no activator endpoints
Steps to Reproduce the Problem
Mainly because the code logic is not rigorous. Maybe we can reproduce problem by steps as follows:
Scale the activator deployment replicas to Zero, and no activator endpoint
The serving service has endpoints, but not inactive, no traffic.
The Public Service endpoints is the same with private Service endpoints (Serve Mode). But the ServerlessService cr is marked Condition "ActivatorEndpointsPopulated"
In what area(s)?
Remove the '> ' to select
Other classifications:
What version of Knative?
Expected Behavior
While reconciling SKS, the reconciler will reconcile Public Endpoints and mark Activator Endpoints Populated into Condition at last. If no backends or if we're in the proxy mode, the activator will be considered to backs this revision. But in fact, if no activator mark Activator Endpoints Populated found, the mode will be forced into "Serve", and not be put in path. Would it be better to exclude this scenario when marking “ActivatorEndpointsPopulated” Condition?
Actual Behavior
Marking Activator Endpoints Populated while reconciling SKS, ignoring the scenario of no activator endpoints
Steps to Reproduce the Problem
Mainly because the code logic is not rigorous. Maybe we can reproduce problem by steps as follows: