Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for GA/1.0.0 release of the Kubernetes Gateway API - gateway.networking.k8s.io/v1 #2854

Open
tedvanderveen opened this issue Feb 29, 2024 · 5 comments
Labels
area/core kind/enhancement Improvements or new features

Comments

@tedvanderveen
Copy link

tedvanderveen commented Feb 29, 2024

Hello!

  • Vote on this issue by adding a 馃憤 reaction
  • If you want to implement this feature, comment to let us know (we'll work with you on design, scheduling, etc.)

Issue details

The first GA version of the k8s Gateway API was released 4 months ago: https://github.com/kubernetes-sigs/gateway-api/releases/tag/v1.0.0. Sounds like the right time to add support for this API.

At the moment, when using the k8s @pulumi/kubernetes/apiextensions/customResource class, there is no means of accessing for example the status field of the Gateway, or the FQDN assigned by the implementation (available via .status.addresses[0].value).

Affected area/feature

@tedvanderveen tedvanderveen added kind/enhancement Improvements or new features needs-triage Needs attention from the triage team labels Feb 29, 2024
@mjeffryes
Copy link
Contributor

Thanks for pointing this out @tedvanderveen; we'll try to get this on the roadmap.

@mjeffryes mjeffryes added area/core and removed needs-triage Needs attention from the triage team labels Mar 1, 2024
@tedvanderveen
Copy link
Author

tedvanderveen commented Mar 1, 2024

Thanks for putting it on the roadmap @mjeffryes. Please be aware that this missing k8s API support is currently blocking effective usage of quite a few implementation already using it: see https://gateway-api.sigs.k8s.io/implementations
ATM my customer is using the new Azure Application Gateway for Containers in a PoC, it's on the list of implementations I mentioned above, that depend on the k8s Gateway API.
AWS has similar implementation that also depends on k8s Gateway API: https://github.com/aws/aws-application-networking-k8s?tab=readme-ov-file#aws-gateway-api-controller-for-vpc-lattice

@rquitales
Copy link
Contributor

@tedvanderveen As we consider incorporating these add-on resources into the Pulumi Kubernetes provider, you have the option to utilize crd2pulumi for generating typed resources corresponding to the desired Gateway API CRDs. This approach would enable you to access the status subresources of the Gateway API CRs as a workaround.

@bjornbugge
Copy link

Thanks for the hint, @rquitales . Unfortunately, when I run the command crd2pulumi -n gateway-api-crd-v1.yaml I get

panic: fatal: error An assertion has failed: could not parse Pulumi package. source error: could not import spec: <nil>: #/types/kubernetes:gateway.networking.k8s.io%2Fv1:GatewaySpecListenersAllowedRoutes/properties/namespaces/default: type kubernetes:gateway.networking.k8s.io/v1:GatewaySpecListenersAllowedRoutesNamespaces cannot have a constant value; only booleans, integers, numbers and strings may have constant values; , and 43 other diagnostic(s)

Am I using the tool wrong? The YAML file is the one from https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.0.0/standard-install.yaml.

@bjornbugge
Copy link

OK, I see there's an issue for it pulumi/crd2pulumi#61

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/core kind/enhancement Improvements or new features
Projects
None yet
Development

No branches or pull requests

4 participants