-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Open
Copy link
Labels
kind/enhancementImprovements or new featuresImprovements or new features
Description
I had to do this and it took me too much time to figure out 😅
At the very least, this sample should be easy to find in the docs.
Even better would be to grab the IP from a property of the Release object, but it does not seem to be there.
import { interpolate, Output } from "@pulumi/pulumi";
import * as k8s from "@pulumi/kubernetes";
const ingressNginx = new k8s.helm.v3.Release(
"nginx-ingress",
{
chart: "ingress-nginx",
version: "4.2.0",
repositoryOpts: {
repo: "https://kubernetes.github.io/ingress-nginx",
},
values: {
controller: {
publishService: {
enabled: true,
},
service: {
type: "LoadBalancer",
},
},
},
// namespace: nsBe.metadata.name,
skipAwait: false
},
{
provider,
// deleteBeforeReplace: true
}
);
const serviceFQN = interpolate`${ingressNginx.id}-ingress-nginx-controller`
// serviceFQN.apply(r => console.log(r))
const ingressCtrlSvc = k8s.core.v1.Service.get("ingress-ctrl-svc",
serviceFQN,
{ dependsOn: ingressNginx }
);
// ingressCtrlSvc.spec.apply(r => console.log(r))
// ingressCtrlSvc.status.loadBalancer.ingress.apply(r => console.log(r))
return ingressCtrlSvc.status.loadBalancer.ingress[0].ipMetadata
Metadata
Assignees
Labels
kind/enhancementImprovements or new featuresImprovements or new features