Should Operator check for Gateway API CRDs before configuring a Contour with Gateway Controller Name?
This logic existed before b/c the operator had GatewayClass/Gateway controllers but they no longer exist.
Options:
- Leave as-is, if Gateway API or other CRDs we depend on don't exist, Contour will react accordingly
- Operator validates environment for CRDs Contour depends on
- If they are not present, do not create Contour?
- Set status on Contour config object if they don't exist?
The second option seems like an option if there is a good way for users to see why their Contour isn't being created, beyond having to trawl through Operator logs. Seems like it might get complicated and cause conflict if the Contour config CRD is moved to the Contour repo/API.
+1 for "Set status on Contour config object if they don't exist".
And not only the existing check, but also setting status for the unsupported gateway-api CRDs version might be useful.
I agree, setting status on the Contour object seems like the go here.