Hi, am I using something wrong? `Retry #5; creatio...
# dotnet
f
Hi, am I using something wrong?
Retry #5; creation failed: no matches for kind "Ingress" in version "<http://networking.k8s.io/v1|networking.k8s.io/v1>
var ingress = new Ingress("test-ingress", new Pulumi.Kubernetes.Types.Inputs.Networking.V1.IngressArgs
{
Metadata = new ObjectMetaArgs
{
Annotations = new InputMap<string>
{
{"<http://kubernetes.io/ingress.global-static-ip-name|kubernetes.io/ingress.global-static-ip-name>", "ip-dev" },
//{"<http://networking.gke.io/managed-certificates|networking.gke.io/managed-certificates>", "" }
}
},
Spec = new Pulumi.Kubernetes.Types.Inputs.Networking.V1.IngressSpecArgs
{
DefaultBackend = new Pulumi.Kubernetes.Types.Inputs.Networking.V1.IngressBackendArgs
{
Service = new Pulumi.Kubernetes.Types.Inputs.Networking.V1.IngressServiceBackendArgs
{
Name = "test-service-nodeportapi",
Port = new Pulumi.Kubernetes.Types.Inputs.Networking.V1.ServiceBackendPortArgs
{
Number = 80
}
}
}
}
},
new CustomResourceOptions
{
Provider = provider
});
I am working with GCP/GKE
error: creation of resource default/addhere-test-ingress-p5s8vj4d failed because the Kubernetes API server reported that the apiVersion for this resource does not exist. Verify that a ny required CRDs have been created: no matches for kind "Ingress" in version "networking.k8s.io/v1" this was the final error...
w
What's the version of k8s? Should the ingress api version be
<http://networking.k8s.io/v1beta1|networking.k8s.io/v1beta1>
?
c
@fierce-memory-34976 Try this something like this:
Copy code
var ingress = new Kubernetes.Networking.V1Beta1.Ingress("test-ingress", new Pulumi.Kubernetes.Types.Inputs.Networking.V1.IngressArgs
        {
            ApiVersion = "<http://networking.k8s.io/v1|networking.k8s.io/v1>",
            Kind = "Ingress",
            Metadata = new ObjectMetaArgs
            {
                Annotations = new InputMap<string>
                {
                    {"<http://kubernetes.io/ingress.global-static-ip-name|kubernetes.io/ingress.global-static-ip-name>", "ip-dev" },
                    //{"<http://networking.gke.io/managed-certificates|networking.gke.io/managed-certificates>", "" }
                }
            },
            Spec = new Pulumi.Kubernetes.Types.Inputs.Networking.V1.IngressSpecArgs
            {
                DefaultBackend = new Pulumi.Kubernetes.Types.Inputs.Networking.V1.IngressBackendArgs
                {  
                    Service = new Pulumi.Kubernetes.Types.Inputs.Networking.V1.IngressServiceBackendArgs
                    {
                        Name = "test-service-nodeportapi",
                        Port = new Pulumi.Kubernetes.Types.Inputs.Networking.V1.ServiceBackendPortArgs
                        {
                            Number = 80
                        },
                    },
                },
            },
        });
w
You don't really need to specify the
ApiVersion
and
Kind
properties as they're set by the
Ingress
ctor.
It comes down to what
Ingress
class you're instantiating
Pulumi.Kubernetes.Networking.V1.Ingress
or
Pulumi.Kubernetes.Networking.V1Beta1.Ingress
or the older
Pulumi.Kubernetes.Extensions.V1Beta1.Ingress
.