kubernetes-ingress-nginx.IngressController
Explore with Pulumi AI
Ingress controller for Kubernetes using NGINX as a reverse proxy and load balancer
Create IngressController Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new IngressController(name: string, args?: IngressControllerArgs, opts?: ComponentResourceOptions);@overload
def IngressController(resource_name: str,
                      args: Optional[IngressControllerArgs] = None,
                      opts: Optional[ResourceOptions] = None)
@overload
def IngressController(resource_name: str,
                      opts: Optional[ResourceOptions] = None,
                      controller: Optional[ControllerArgs] = None,
                      default_backend: Optional[ControllerDefaultBackendArgs] = None,
                      dh_param: Optional[str] = None,
                      fullname_override: Optional[str] = None,
                      helm_options: Optional[ReleaseArgs] = None,
                      image_pull_secrets: Optional[Sequence[pulumi_kubernetes.core.v1.LocalObjectReferenceArgs]] = None,
                      name_override: Optional[str] = None,
                      pod_security_policy: Optional[ControllerPodSecurityPolicyArgs] = None,
                      rbac: Optional[ControllerRBACArgs] = None,
                      revision_history_limit: Optional[int] = None,
                      service_account: Optional[ControllerServiceAccountArgs] = None,
                      tcp: Optional[Mapping[str, Mapping[str, str]]] = None,
                      udp: Optional[Mapping[str, Mapping[str, str]]] = None)func NewIngressController(ctx *Context, name string, args *IngressControllerArgs, opts ...ResourceOption) (*IngressController, error)public IngressController(string name, IngressControllerArgs? args = null, ComponentResourceOptions? opts = null)
public IngressController(String name, IngressControllerArgs args)
public IngressController(String name, IngressControllerArgs args, ComponentResourceOptions options)
type: kubernetes-ingress-nginx:IngressController
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
 - The unique name of the resource.
 - args IngressControllerArgs
 - The arguments to resource properties.
 - opts ComponentResourceOptions
 - Bag of options to control resource's behavior.
 
- resource_name str
 - The unique name of the resource.
 - args IngressControllerArgs
 - The arguments to resource properties.
 - opts ResourceOptions
 - Bag of options to control resource's behavior.
 
- ctx Context
 - Context object for the current deployment.
 - name string
 - The unique name of the resource.
 - args IngressControllerArgs
 - The arguments to resource properties.
 - opts ResourceOption
 - Bag of options to control resource's behavior.
 
- name string
 - The unique name of the resource.
 - args IngressControllerArgs
 - The arguments to resource properties.
 - opts ComponentResourceOptions
 - Bag of options to control resource's behavior.
 
- name String
 - The unique name of the resource.
 - args IngressControllerArgs
 - The arguments to resource properties.
 - options ComponentResourceOptions
 - Bag of options to control resource's behavior.
 
Constructor example
The following reference example uses placeholder values for all input properties.
var ingressControllerResource = new KubernetesIngressNginx.IngressController("ingressControllerResource", new()
{
    Controller = new KubernetesIngressNginx.Inputs.ControllerArgs
    {
        AddHeaders = 
        {
            { "string", 
            {
                { "string", "string" },
            } },
        },
        AdmissionWebhooks = new KubernetesIngressNginx.Inputs.ContollerAdmissionWebhooksArgs
        {
            Annotations = 
            {
                { "string", "string" },
            },
            Certificate = "string",
            CreateSecretJob = new KubernetesIngressNginx.Inputs.ControllerAdmissionWebhooksCreateSecretJobArgs
            {
                Resources = new Kubernetes.Types.Inputs.Core.V1.ResourceRequirementsArgs
                {
                    Claims = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.ResourceClaimArgs
                        {
                            Name = "string",
                            Request = "string",
                        },
                    },
                    Limits = 
                    {
                        { "string", "string" },
                    },
                    Requests = 
                    {
                        { "string", "string" },
                    },
                },
            },
            Enabled = false,
            ExistingPsp = "string",
            FailurePolicy = "string",
            Key = "string",
            NamespaceSelector = 
            {
                { "string", 
                {
                    { "string", "string" },
                } },
            },
            ObjectSelector = 
            {
                { "string", 
                {
                    { "string", "string" },
                } },
            },
            Patch = new KubernetesIngressNginx.Inputs.ControllerAdmissionWebhooksPatchArgs
            {
                Enabled = false,
                Image = new KubernetesIngressNginx.Inputs.ControllerImageArgs
                {
                    AllowPrivilegeEscalation = false,
                    Digest = "string",
                    Image = "string",
                    PullPolicy = "string",
                    ReadOnlyRootFilesystem = false,
                    Registry = "string",
                    Repository = "string",
                    RunAsNonRoot = false,
                    RunAsUser = "string",
                    Tag = "string",
                },
                NodeSelector = 
                {
                    { "string", "string" },
                },
                PodAnnotations = 
                {
                    { "string", "string" },
                },
                PriorityClassName = "string",
                RunAsUser = 0,
                Tolerations = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.TolerationArgs
                    {
                        Effect = "string",
                        Key = "string",
                        Operator = "string",
                        TolerationSeconds = 0,
                        Value = "string",
                    },
                },
            },
            PatchWebhookJob = new KubernetesIngressNginx.Inputs.ControllerAdmissionWebhooksPatchWebhbookJobArgs
            {
                Resources = new Kubernetes.Types.Inputs.Core.V1.ResourceRequirementsArgs
                {
                    Claims = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.ResourceClaimArgs
                        {
                            Name = "string",
                            Request = "string",
                        },
                    },
                    Limits = 
                    {
                        { "string", "string" },
                    },
                    Requests = 
                    {
                        { "string", "string" },
                    },
                },
            },
            Port = 0,
            Service = new KubernetesIngressNginx.Inputs.ControllerAdmissionWebhooksServiceArgs
            {
                Annotations = 
                {
                    { "string", "string" },
                },
                ClusterIP = "string",
                ExternalIPs = new[]
                {
                    "string",
                },
                LoadBalancerIPs = "string",
                LoadBalancerSourceRanges = new[]
                {
                    "string",
                },
                ServicePort = 0,
                Type = "string",
            },
            TimeoutSeconds = 0,
        },
        Affinity = new Kubernetes.Types.Inputs.Core.V1.AffinityArgs
        {
            NodeAffinity = new Kubernetes.Types.Inputs.Core.V1.NodeAffinityArgs
            {
                PreferredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.PreferredSchedulingTermArgs
                    {
                        Preference = new Kubernetes.Types.Inputs.Core.V1.NodeSelectorTermArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Types.Inputs.Core.V1.NodeSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchFields = new[]
                            {
                                new Kubernetes.Types.Inputs.Core.V1.NodeSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                        },
                        Weight = 0,
                    },
                },
                RequiredDuringSchedulingIgnoredDuringExecution = new Kubernetes.Types.Inputs.Core.V1.NodeSelectorArgs
                {
                    NodeSelectorTerms = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.NodeSelectorTermArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Types.Inputs.Core.V1.NodeSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchFields = new[]
                            {
                                new Kubernetes.Types.Inputs.Core.V1.NodeSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                        },
                    },
                },
            },
            PodAffinity = new Kubernetes.Types.Inputs.Core.V1.PodAffinityArgs
            {
                PreferredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.WeightedPodAffinityTermArgs
                    {
                        PodAffinityTerm = new Kubernetes.Types.Inputs.Core.V1.PodAffinityTermArgs
                        {
                            TopologyKey = "string",
                            LabelSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            MatchLabelKeys = new[]
                            {
                                "string",
                            },
                            MismatchLabelKeys = new[]
                            {
                                "string",
                            },
                            NamespaceSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            Namespaces = new[]
                            {
                                "string",
                            },
                        },
                        Weight = 0,
                    },
                },
                RequiredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.PodAffinityTermArgs
                    {
                        TopologyKey = "string",
                        LabelSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                        MatchLabelKeys = new[]
                        {
                            "string",
                        },
                        MismatchLabelKeys = new[]
                        {
                            "string",
                        },
                        NamespaceSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                        Namespaces = new[]
                        {
                            "string",
                        },
                    },
                },
            },
            PodAntiAffinity = new Kubernetes.Types.Inputs.Core.V1.PodAntiAffinityArgs
            {
                PreferredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.WeightedPodAffinityTermArgs
                    {
                        PodAffinityTerm = new Kubernetes.Types.Inputs.Core.V1.PodAffinityTermArgs
                        {
                            TopologyKey = "string",
                            LabelSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            MatchLabelKeys = new[]
                            {
                                "string",
                            },
                            MismatchLabelKeys = new[]
                            {
                                "string",
                            },
                            NamespaceSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            Namespaces = new[]
                            {
                                "string",
                            },
                        },
                        Weight = 0,
                    },
                },
                RequiredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.PodAffinityTermArgs
                    {
                        TopologyKey = "string",
                        LabelSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                        MatchLabelKeys = new[]
                        {
                            "string",
                        },
                        MismatchLabelKeys = new[]
                        {
                            "string",
                        },
                        NamespaceSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                        Namespaces = new[]
                        {
                            "string",
                        },
                    },
                },
            },
        },
        AllowSnippetAnnotations = false,
        Annotations = 
        {
            { "string", "string" },
        },
        Autoscaling = new KubernetesIngressNginx.Inputs.AutoscalingArgs
        {
            Annotations = 
            {
                { "string", "string" },
            },
            ControllerAutoscalingBehavior = new KubernetesIngressNginx.Inputs.AutoscalingBehaviorArgs
            {
                ScaleDown = new KubernetesIngressNginx.Inputs.AutoscalingBehaviorScalingArgs
                {
                    Policies = new[]
                    {
                        new KubernetesIngressNginx.Inputs.AutoscalingBehaviorScalingPolicyArgs
                        {
                            PeriodSeconds = 0,
                            Type = "string",
                            Value = 0,
                        },
                    },
                    StabilizationWindowSeconds = 0,
                },
                ScaleUp = new KubernetesIngressNginx.Inputs.AutoscalingBehaviorScalingArgs
                {
                    Policies = new[]
                    {
                        new KubernetesIngressNginx.Inputs.AutoscalingBehaviorScalingPolicyArgs
                        {
                            PeriodSeconds = 0,
                            Type = "string",
                            Value = 0,
                        },
                    },
                    StabilizationWindowSeconds = 0,
                },
            },
            Enabled = false,
            MaxReplicas = 0,
            MinReplicas = 0,
            TargetCPUUtilizationPercentage = 0,
            TargetMemoryUtilizationPercentage = 0,
        },
        AutoscalingTemplate = new[]
        {
            new KubernetesIngressNginx.Inputs.AutoscalingTemplateArgs
            {
                Pods = new KubernetesIngressNginx.Inputs.AutoscalingTemplatePodsArgs
                {
                    Metric = new KubernetesIngressNginx.Inputs.AutoscalingTemplatePodsMetricArgs
                    {
                        Name = "string",
                    },
                    Target = new KubernetesIngressNginx.Inputs.AutoscalingTemplatePodsTargetArgs
                    {
                        AverageValue = "string",
                        Type = "string",
                    },
                },
                Type = "string",
            },
        },
        Config = 
        {
            { "string", "string" },
        },
        ConfigAnnotations = 
        {
            { "string", "string" },
        },
        ConfigMapNamespace = "string",
        ContainerName = "string",
        ContainerPort = new KubernetesIngressNginx.Inputs.ControllerPortArgs
        {
            Http = 0,
            Https = 0,
        },
        CustomTemplate = new KubernetesIngressNginx.Inputs.ControllerCustomTemplateArgs
        {
            ConfigMapKey = "string",
            ConfigMapName = "string",
        },
        DnsConfig = 
        {
            { "string", "string" },
        },
        DnsPolicy = "string",
        ElectionID = "string",
        EnableMimalloc = false,
        ExistingPsp = "string",
        ExtraArgs = 
        {
            { "string", "string" },
        },
        ExtraContainers = new[]
        {
            new Kubernetes.Types.Inputs.Core.V1.ContainerArgs
            {
                Name = "string",
                Resources = new Kubernetes.Types.Inputs.Core.V1.ResourceRequirementsArgs
                {
                    Claims = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.ResourceClaimArgs
                        {
                            Name = "string",
                            Request = "string",
                        },
                    },
                    Limits = 
                    {
                        { "string", "string" },
                    },
                    Requests = 
                    {
                        { "string", "string" },
                    },
                },
                Ports = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.ContainerPortArgs
                    {
                        ContainerPort = 0,
                        HostIP = "string",
                        HostPort = 0,
                        Name = "string",
                        Protocol = "string",
                    },
                },
                EnvFrom = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.EnvFromSourceArgs
                    {
                        ConfigMapRef = new Kubernetes.Types.Inputs.Core.V1.ConfigMapEnvSourceArgs
                        {
                            Name = "string",
                            Optional = false,
                        },
                        Prefix = "string",
                        SecretRef = new Kubernetes.Types.Inputs.Core.V1.SecretEnvSourceArgs
                        {
                            Name = "string",
                            Optional = false,
                        },
                    },
                },
                Image = "string",
                ImagePullPolicy = "string",
                Lifecycle = new Kubernetes.Types.Inputs.Core.V1.LifecycleArgs
                {
                    PostStart = new Kubernetes.Types.Inputs.Core.V1.LifecycleHandlerArgs
                    {
                        Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
                        {
                            Command = new[]
                            {
                                "string",
                            },
                        },
                        HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
                        {
                            Port = 0,
                            Host = "string",
                            HttpHeaders = new[]
                            {
                                new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                                {
                                    Name = "string",
                                    Value = "string",
                                },
                            },
                            Path = "string",
                            Scheme = "string",
                        },
                        Sleep = new Kubernetes.Types.Inputs.Core.V1.SleepActionArgs
                        {
                            Seconds = 0,
                        },
                        TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
                        {
                            Port = 0,
                            Host = "string",
                        },
                    },
                    PreStop = new Kubernetes.Types.Inputs.Core.V1.LifecycleHandlerArgs
                    {
                        Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
                        {
                            Command = new[]
                            {
                                "string",
                            },
                        },
                        HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
                        {
                            Port = 0,
                            Host = "string",
                            HttpHeaders = new[]
                            {
                                new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                                {
                                    Name = "string",
                                    Value = "string",
                                },
                            },
                            Path = "string",
                            Scheme = "string",
                        },
                        Sleep = new Kubernetes.Types.Inputs.Core.V1.SleepActionArgs
                        {
                            Seconds = 0,
                        },
                        TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
                        {
                            Port = 0,
                            Host = "string",
                        },
                    },
                },
                LivenessProbe = new Kubernetes.Types.Inputs.Core.V1.ProbeArgs
                {
                    Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
                    {
                        Command = new[]
                        {
                            "string",
                        },
                    },
                    FailureThreshold = 0,
                    Grpc = new Kubernetes.Types.Inputs.Core.V1.GRPCActionArgs
                    {
                        Port = 0,
                        Service = "string",
                    },
                    HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
                    {
                        Port = 0,
                        Host = "string",
                        HttpHeaders = new[]
                        {
                            new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                            {
                                Name = "string",
                                Value = "string",
                            },
                        },
                        Path = "string",
                        Scheme = "string",
                    },
                    InitialDelaySeconds = 0,
                    PeriodSeconds = 0,
                    SuccessThreshold = 0,
                    TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
                    {
                        Port = 0,
                        Host = "string",
                    },
                    TerminationGracePeriodSeconds = 0,
                    TimeoutSeconds = 0,
                },
                RestartPolicy = "string",
                Args = new[]
                {
                    "string",
                },
                ReadinessProbe = new Kubernetes.Types.Inputs.Core.V1.ProbeArgs
                {
                    Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
                    {
                        Command = new[]
                        {
                            "string",
                        },
                    },
                    FailureThreshold = 0,
                    Grpc = new Kubernetes.Types.Inputs.Core.V1.GRPCActionArgs
                    {
                        Port = 0,
                        Service = "string",
                    },
                    HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
                    {
                        Port = 0,
                        Host = "string",
                        HttpHeaders = new[]
                        {
                            new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                            {
                                Name = "string",
                                Value = "string",
                            },
                        },
                        Path = "string",
                        Scheme = "string",
                    },
                    InitialDelaySeconds = 0,
                    PeriodSeconds = 0,
                    SuccessThreshold = 0,
                    TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
                    {
                        Port = 0,
                        Host = "string",
                    },
                    TerminationGracePeriodSeconds = 0,
                    TimeoutSeconds = 0,
                },
                Env = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.EnvVarArgs
                    {
                        Name = "string",
                        Value = "string",
                        ValueFrom = new Kubernetes.Types.Inputs.Core.V1.EnvVarSourceArgs
                        {
                            ConfigMapKeyRef = new Kubernetes.Types.Inputs.Core.V1.ConfigMapKeySelectorArgs
                            {
                                Key = "string",
                                Name = "string",
                                Optional = false,
                            },
                            FieldRef = new Kubernetes.Types.Inputs.Core.V1.ObjectFieldSelectorArgs
                            {
                                FieldPath = "string",
                                ApiVersion = "string",
                            },
                            ResourceFieldRef = new Kubernetes.Types.Inputs.Core.V1.ResourceFieldSelectorArgs
                            {
                                Resource = "string",
                                ContainerName = "string",
                                Divisor = "string",
                            },
                            SecretKeyRef = new Kubernetes.Types.Inputs.Core.V1.SecretKeySelectorArgs
                            {
                                Key = "string",
                                Name = "string",
                                Optional = false,
                            },
                        },
                    },
                },
                ResizePolicy = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.ContainerResizePolicyArgs
                    {
                        ResourceName = "string",
                        RestartPolicy = "string",
                    },
                },
                Command = new[]
                {
                    "string",
                },
                SecurityContext = new Kubernetes.Types.Inputs.Core.V1.SecurityContextArgs
                {
                    AllowPrivilegeEscalation = false,
                    AppArmorProfile = new Kubernetes.Types.Inputs.Core.V1.AppArmorProfileArgs
                    {
                        Type = "string",
                        LocalhostProfile = "string",
                    },
                    Capabilities = new Kubernetes.Types.Inputs.Core.V1.CapabilitiesArgs
                    {
                        Add = new[]
                        {
                            "string",
                        },
                        Drop = new[]
                        {
                            "string",
                        },
                    },
                    Privileged = false,
                    ProcMount = "string",
                    ReadOnlyRootFilesystem = false,
                    RunAsGroup = 0,
                    RunAsNonRoot = false,
                    RunAsUser = 0,
                    SeLinuxOptions = new Kubernetes.Types.Inputs.Core.V1.SELinuxOptionsArgs
                    {
                        Level = "string",
                        Role = "string",
                        Type = "string",
                        User = "string",
                    },
                    SeccompProfile = new Kubernetes.Types.Inputs.Core.V1.SeccompProfileArgs
                    {
                        Type = "string",
                        LocalhostProfile = "string",
                    },
                    WindowsOptions = new Kubernetes.Types.Inputs.Core.V1.WindowsSecurityContextOptionsArgs
                    {
                        GmsaCredentialSpec = "string",
                        GmsaCredentialSpecName = "string",
                        HostProcess = false,
                        RunAsUserName = "string",
                    },
                },
                StartupProbe = new Kubernetes.Types.Inputs.Core.V1.ProbeArgs
                {
                    Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
                    {
                        Command = new[]
                        {
                            "string",
                        },
                    },
                    FailureThreshold = 0,
                    Grpc = new Kubernetes.Types.Inputs.Core.V1.GRPCActionArgs
                    {
                        Port = 0,
                        Service = "string",
                    },
                    HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
                    {
                        Port = 0,
                        Host = "string",
                        HttpHeaders = new[]
                        {
                            new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                            {
                                Name = "string",
                                Value = "string",
                            },
                        },
                        Path = "string",
                        Scheme = "string",
                    },
                    InitialDelaySeconds = 0,
                    PeriodSeconds = 0,
                    SuccessThreshold = 0,
                    TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
                    {
                        Port = 0,
                        Host = "string",
                    },
                    TerminationGracePeriodSeconds = 0,
                    TimeoutSeconds = 0,
                },
                Stdin = false,
                StdinOnce = false,
                TerminationMessagePath = "string",
                TerminationMessagePolicy = "string",
                Tty = false,
                VolumeDevices = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.VolumeDeviceArgs
                    {
                        DevicePath = "string",
                        Name = "string",
                    },
                },
                VolumeMounts = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.VolumeMountArgs
                    {
                        MountPath = "string",
                        Name = "string",
                        MountPropagation = "string",
                        ReadOnly = false,
                        RecursiveReadOnly = "string",
                        SubPath = "string",
                        SubPathExpr = "string",
                    },
                },
                WorkingDir = "string",
            },
        },
        ExtraEnvs = new[]
        {
            new Kubernetes.Types.Inputs.Core.V1.EnvVarArgs
            {
                Name = "string",
                Value = "string",
                ValueFrom = new Kubernetes.Types.Inputs.Core.V1.EnvVarSourceArgs
                {
                    ConfigMapKeyRef = new Kubernetes.Types.Inputs.Core.V1.ConfigMapKeySelectorArgs
                    {
                        Key = "string",
                        Name = "string",
                        Optional = false,
                    },
                    FieldRef = new Kubernetes.Types.Inputs.Core.V1.ObjectFieldSelectorArgs
                    {
                        FieldPath = "string",
                        ApiVersion = "string",
                    },
                    ResourceFieldRef = new Kubernetes.Types.Inputs.Core.V1.ResourceFieldSelectorArgs
                    {
                        Resource = "string",
                        ContainerName = "string",
                        Divisor = "string",
                    },
                    SecretKeyRef = new Kubernetes.Types.Inputs.Core.V1.SecretKeySelectorArgs
                    {
                        Key = "string",
                        Name = "string",
                        Optional = false,
                    },
                },
            },
        },
        ExtraInitContainers = new[]
        {
            new Kubernetes.Types.Inputs.Core.V1.ContainerArgs
            {
                Name = "string",
                Resources = new Kubernetes.Types.Inputs.Core.V1.ResourceRequirementsArgs
                {
                    Claims = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.ResourceClaimArgs
                        {
                            Name = "string",
                            Request = "string",
                        },
                    },
                    Limits = 
                    {
                        { "string", "string" },
                    },
                    Requests = 
                    {
                        { "string", "string" },
                    },
                },
                Ports = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.ContainerPortArgs
                    {
                        ContainerPort = 0,
                        HostIP = "string",
                        HostPort = 0,
                        Name = "string",
                        Protocol = "string",
                    },
                },
                EnvFrom = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.EnvFromSourceArgs
                    {
                        ConfigMapRef = new Kubernetes.Types.Inputs.Core.V1.ConfigMapEnvSourceArgs
                        {
                            Name = "string",
                            Optional = false,
                        },
                        Prefix = "string",
                        SecretRef = new Kubernetes.Types.Inputs.Core.V1.SecretEnvSourceArgs
                        {
                            Name = "string",
                            Optional = false,
                        },
                    },
                },
                Image = "string",
                ImagePullPolicy = "string",
                Lifecycle = new Kubernetes.Types.Inputs.Core.V1.LifecycleArgs
                {
                    PostStart = new Kubernetes.Types.Inputs.Core.V1.LifecycleHandlerArgs
                    {
                        Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
                        {
                            Command = new[]
                            {
                                "string",
                            },
                        },
                        HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
                        {
                            Port = 0,
                            Host = "string",
                            HttpHeaders = new[]
                            {
                                new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                                {
                                    Name = "string",
                                    Value = "string",
                                },
                            },
                            Path = "string",
                            Scheme = "string",
                        },
                        Sleep = new Kubernetes.Types.Inputs.Core.V1.SleepActionArgs
                        {
                            Seconds = 0,
                        },
                        TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
                        {
                            Port = 0,
                            Host = "string",
                        },
                    },
                    PreStop = new Kubernetes.Types.Inputs.Core.V1.LifecycleHandlerArgs
                    {
                        Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
                        {
                            Command = new[]
                            {
                                "string",
                            },
                        },
                        HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
                        {
                            Port = 0,
                            Host = "string",
                            HttpHeaders = new[]
                            {
                                new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                                {
                                    Name = "string",
                                    Value = "string",
                                },
                            },
                            Path = "string",
                            Scheme = "string",
                        },
                        Sleep = new Kubernetes.Types.Inputs.Core.V1.SleepActionArgs
                        {
                            Seconds = 0,
                        },
                        TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
                        {
                            Port = 0,
                            Host = "string",
                        },
                    },
                },
                LivenessProbe = new Kubernetes.Types.Inputs.Core.V1.ProbeArgs
                {
                    Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
                    {
                        Command = new[]
                        {
                            "string",
                        },
                    },
                    FailureThreshold = 0,
                    Grpc = new Kubernetes.Types.Inputs.Core.V1.GRPCActionArgs
                    {
                        Port = 0,
                        Service = "string",
                    },
                    HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
                    {
                        Port = 0,
                        Host = "string",
                        HttpHeaders = new[]
                        {
                            new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                            {
                                Name = "string",
                                Value = "string",
                            },
                        },
                        Path = "string",
                        Scheme = "string",
                    },
                    InitialDelaySeconds = 0,
                    PeriodSeconds = 0,
                    SuccessThreshold = 0,
                    TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
                    {
                        Port = 0,
                        Host = "string",
                    },
                    TerminationGracePeriodSeconds = 0,
                    TimeoutSeconds = 0,
                },
                RestartPolicy = "string",
                Args = new[]
                {
                    "string",
                },
                ReadinessProbe = new Kubernetes.Types.Inputs.Core.V1.ProbeArgs
                {
                    Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
                    {
                        Command = new[]
                        {
                            "string",
                        },
                    },
                    FailureThreshold = 0,
                    Grpc = new Kubernetes.Types.Inputs.Core.V1.GRPCActionArgs
                    {
                        Port = 0,
                        Service = "string",
                    },
                    HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
                    {
                        Port = 0,
                        Host = "string",
                        HttpHeaders = new[]
                        {
                            new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                            {
                                Name = "string",
                                Value = "string",
                            },
                        },
                        Path = "string",
                        Scheme = "string",
                    },
                    InitialDelaySeconds = 0,
                    PeriodSeconds = 0,
                    SuccessThreshold = 0,
                    TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
                    {
                        Port = 0,
                        Host = "string",
                    },
                    TerminationGracePeriodSeconds = 0,
                    TimeoutSeconds = 0,
                },
                Env = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.EnvVarArgs
                    {
                        Name = "string",
                        Value = "string",
                        ValueFrom = new Kubernetes.Types.Inputs.Core.V1.EnvVarSourceArgs
                        {
                            ConfigMapKeyRef = new Kubernetes.Types.Inputs.Core.V1.ConfigMapKeySelectorArgs
                            {
                                Key = "string",
                                Name = "string",
                                Optional = false,
                            },
                            FieldRef = new Kubernetes.Types.Inputs.Core.V1.ObjectFieldSelectorArgs
                            {
                                FieldPath = "string",
                                ApiVersion = "string",
                            },
                            ResourceFieldRef = new Kubernetes.Types.Inputs.Core.V1.ResourceFieldSelectorArgs
                            {
                                Resource = "string",
                                ContainerName = "string",
                                Divisor = "string",
                            },
                            SecretKeyRef = new Kubernetes.Types.Inputs.Core.V1.SecretKeySelectorArgs
                            {
                                Key = "string",
                                Name = "string",
                                Optional = false,
                            },
                        },
                    },
                },
                ResizePolicy = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.ContainerResizePolicyArgs
                    {
                        ResourceName = "string",
                        RestartPolicy = "string",
                    },
                },
                Command = new[]
                {
                    "string",
                },
                SecurityContext = new Kubernetes.Types.Inputs.Core.V1.SecurityContextArgs
                {
                    AllowPrivilegeEscalation = false,
                    AppArmorProfile = new Kubernetes.Types.Inputs.Core.V1.AppArmorProfileArgs
                    {
                        Type = "string",
                        LocalhostProfile = "string",
                    },
                    Capabilities = new Kubernetes.Types.Inputs.Core.V1.CapabilitiesArgs
                    {
                        Add = new[]
                        {
                            "string",
                        },
                        Drop = new[]
                        {
                            "string",
                        },
                    },
                    Privileged = false,
                    ProcMount = "string",
                    ReadOnlyRootFilesystem = false,
                    RunAsGroup = 0,
                    RunAsNonRoot = false,
                    RunAsUser = 0,
                    SeLinuxOptions = new Kubernetes.Types.Inputs.Core.V1.SELinuxOptionsArgs
                    {
                        Level = "string",
                        Role = "string",
                        Type = "string",
                        User = "string",
                    },
                    SeccompProfile = new Kubernetes.Types.Inputs.Core.V1.SeccompProfileArgs
                    {
                        Type = "string",
                        LocalhostProfile = "string",
                    },
                    WindowsOptions = new Kubernetes.Types.Inputs.Core.V1.WindowsSecurityContextOptionsArgs
                    {
                        GmsaCredentialSpec = "string",
                        GmsaCredentialSpecName = "string",
                        HostProcess = false,
                        RunAsUserName = "string",
                    },
                },
                StartupProbe = new Kubernetes.Types.Inputs.Core.V1.ProbeArgs
                {
                    Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
                    {
                        Command = new[]
                        {
                            "string",
                        },
                    },
                    FailureThreshold = 0,
                    Grpc = new Kubernetes.Types.Inputs.Core.V1.GRPCActionArgs
                    {
                        Port = 0,
                        Service = "string",
                    },
                    HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
                    {
                        Port = 0,
                        Host = "string",
                        HttpHeaders = new[]
                        {
                            new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                            {
                                Name = "string",
                                Value = "string",
                            },
                        },
                        Path = "string",
                        Scheme = "string",
                    },
                    InitialDelaySeconds = 0,
                    PeriodSeconds = 0,
                    SuccessThreshold = 0,
                    TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
                    {
                        Port = 0,
                        Host = "string",
                    },
                    TerminationGracePeriodSeconds = 0,
                    TimeoutSeconds = 0,
                },
                Stdin = false,
                StdinOnce = false,
                TerminationMessagePath = "string",
                TerminationMessagePolicy = "string",
                Tty = false,
                VolumeDevices = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.VolumeDeviceArgs
                    {
                        DevicePath = "string",
                        Name = "string",
                    },
                },
                VolumeMounts = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.VolumeMountArgs
                    {
                        MountPath = "string",
                        Name = "string",
                        MountPropagation = "string",
                        ReadOnly = false,
                        RecursiveReadOnly = "string",
                        SubPath = "string",
                        SubPathExpr = "string",
                    },
                },
                WorkingDir = "string",
            },
        },
        ExtraVolumeMounts = new[]
        {
            new Kubernetes.Types.Inputs.Core.V1.VolumeMountArgs
            {
                MountPath = "string",
                Name = "string",
                MountPropagation = "string",
                ReadOnly = false,
                RecursiveReadOnly = "string",
                SubPath = "string",
                SubPathExpr = "string",
            },
        },
        ExtraVolumes = new[]
        {
            new Kubernetes.Types.Inputs.Core.V1.VolumeArgs
            {
                Name = "string",
                GitRepo = new Kubernetes.Types.Inputs.Core.V1.GitRepoVolumeSourceArgs
                {
                    Repository = "string",
                    Directory = "string",
                    Revision = "string",
                },
                PersistentVolumeClaim = new Kubernetes.Types.Inputs.Core.V1.PersistentVolumeClaimVolumeSourceArgs
                {
                    ClaimName = "string",
                    ReadOnly = false,
                },
                Cephfs = new Kubernetes.Types.Inputs.Core.V1.CephFSVolumeSourceArgs
                {
                    Monitors = new[]
                    {
                        "string",
                    },
                    Path = "string",
                    ReadOnly = false,
                    SecretFile = "string",
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    User = "string",
                },
                Cinder = new Kubernetes.Types.Inputs.Core.V1.CinderVolumeSourceArgs
                {
                    VolumeID = "string",
                    FsType = "string",
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                },
                ConfigMap = new Kubernetes.Types.Inputs.Core.V1.ConfigMapVolumeSourceArgs
                {
                    DefaultMode = 0,
                    Items = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.KeyToPathArgs
                        {
                            Key = "string",
                            Path = "string",
                            Mode = 0,
                        },
                    },
                    Name = "string",
                    Optional = false,
                },
                Csi = new Kubernetes.Types.Inputs.Core.V1.CSIVolumeSourceArgs
                {
                    Driver = "string",
                    FsType = "string",
                    NodePublishSecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    ReadOnly = false,
                    VolumeAttributes = 
                    {
                        { "string", "string" },
                    },
                },
                DownwardAPI = new Kubernetes.Types.Inputs.Core.V1.DownwardAPIVolumeSourceArgs
                {
                    DefaultMode = 0,
                    Items = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.DownwardAPIVolumeFileArgs
                        {
                            Path = "string",
                            FieldRef = new Kubernetes.Types.Inputs.Core.V1.ObjectFieldSelectorArgs
                            {
                                FieldPath = "string",
                                ApiVersion = "string",
                            },
                            Mode = 0,
                            ResourceFieldRef = new Kubernetes.Types.Inputs.Core.V1.ResourceFieldSelectorArgs
                            {
                                Resource = "string",
                                ContainerName = "string",
                                Divisor = "string",
                            },
                        },
                    },
                },
                EmptyDir = new Kubernetes.Types.Inputs.Core.V1.EmptyDirVolumeSourceArgs
                {
                    Medium = "string",
                    SizeLimit = "string",
                },
                Ephemeral = new Kubernetes.Types.Inputs.Core.V1.EphemeralVolumeSourceArgs
                {
                    ReadOnly = false,
                    VolumeClaimTemplate = new Kubernetes.Types.Inputs.Core.V1.PersistentVolumeClaimTemplateArgs
                    {
                        Spec = new Kubernetes.Types.Inputs.Core.V1.PersistentVolumeClaimSpecArgs
                        {
                            AccessModes = new[]
                            {
                                "string",
                            },
                            DataSource = new Kubernetes.Types.Inputs.Core.V1.TypedLocalObjectReferenceArgs
                            {
                                Kind = "string",
                                Name = "string",
                                ApiGroup = "string",
                            },
                            DataSourceRef = new Kubernetes.Types.Inputs.Core.V1.TypedObjectReferenceArgs
                            {
                                Kind = "string",
                                Name = "string",
                                ApiGroup = "string",
                                Namespace = "string",
                            },
                            Resources = new Kubernetes.Types.Inputs.Core.V1.VolumeResourceRequirementsArgs
                            {
                                Limits = 
                                {
                                    { "string", "string" },
                                },
                                Requests = 
                                {
                                    { "string", "string" },
                                },
                            },
                            Selector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            StorageClassName = "string",
                            VolumeAttributesClassName = "string",
                            VolumeMode = "string",
                            VolumeName = "string",
                        },
                        Metadata = new Kubernetes.Types.Inputs.Meta.V1.ObjectMetaArgs
                        {
                            Annotations = 
                            {
                                { "string", "string" },
                            },
                            ClusterName = "string",
                            CreationTimestamp = "string",
                            DeletionGracePeriodSeconds = 0,
                            DeletionTimestamp = "string",
                            Finalizers = new[]
                            {
                                "string",
                            },
                            GenerateName = "string",
                            Generation = 0,
                            Labels = 
                            {
                                { "string", "string" },
                            },
                            ManagedFields = new[]
                            {
                                new Kubernetes.Types.Inputs.Meta.V1.ManagedFieldsEntryArgs
                                {
                                    ApiVersion = "string",
                                    FieldsType = "string",
                                    FieldsV1 = "{}",
                                    Manager = "string",
                                    Operation = "string",
                                    Subresource = "string",
                                    Time = "string",
                                },
                            },
                            Name = "string",
                            Namespace = "string",
                            OwnerReferences = new[]
                            {
                                new Kubernetes.Types.Inputs.Meta.V1.OwnerReferenceArgs
                                {
                                    ApiVersion = "string",
                                    Kind = "string",
                                    Name = "string",
                                    Uid = "string",
                                    BlockOwnerDeletion = false,
                                    Controller = false,
                                },
                            },
                            ResourceVersion = "string",
                            SelfLink = "string",
                            Uid = "string",
                        },
                    },
                },
                Fc = new Kubernetes.Types.Inputs.Core.V1.FCVolumeSourceArgs
                {
                    FsType = "string",
                    Lun = 0,
                    ReadOnly = false,
                    TargetWWNs = new[]
                    {
                        "string",
                    },
                    Wwids = new[]
                    {
                        "string",
                    },
                },
                FlexVolume = new Kubernetes.Types.Inputs.Core.V1.FlexVolumeSourceArgs
                {
                    Driver = "string",
                    FsType = "string",
                    Options = 
                    {
                        { "string", "string" },
                    },
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                },
                Flocker = new Kubernetes.Types.Inputs.Core.V1.FlockerVolumeSourceArgs
                {
                    DatasetName = "string",
                    DatasetUUID = "string",
                },
                GcePersistentDisk = new Kubernetes.Types.Inputs.Core.V1.GCEPersistentDiskVolumeSourceArgs
                {
                    PdName = "string",
                    FsType = "string",
                    Partition = 0,
                    ReadOnly = false,
                },
                AwsElasticBlockStore = new Kubernetes.Types.Inputs.Core.V1.AWSElasticBlockStoreVolumeSourceArgs
                {
                    VolumeID = "string",
                    FsType = "string",
                    Partition = 0,
                    ReadOnly = false,
                },
                AzureFile = new Kubernetes.Types.Inputs.Core.V1.AzureFileVolumeSourceArgs
                {
                    SecretName = "string",
                    ShareName = "string",
                    ReadOnly = false,
                },
                Glusterfs = new Kubernetes.Types.Inputs.Core.V1.GlusterfsVolumeSourceArgs
                {
                    Endpoints = "string",
                    Path = "string",
                    ReadOnly = false,
                },
                PortworxVolume = new Kubernetes.Types.Inputs.Core.V1.PortworxVolumeSourceArgs
                {
                    VolumeID = "string",
                    FsType = "string",
                    ReadOnly = false,
                },
                Iscsi = new Kubernetes.Types.Inputs.Core.V1.ISCSIVolumeSourceArgs
                {
                    Iqn = "string",
                    Lun = 0,
                    TargetPortal = "string",
                    ChapAuthDiscovery = false,
                    ChapAuthSession = false,
                    FsType = "string",
                    InitiatorName = "string",
                    IscsiInterface = "string",
                    Portals = new[]
                    {
                        "string",
                    },
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                },
                AzureDisk = new Kubernetes.Types.Inputs.Core.V1.AzureDiskVolumeSourceArgs
                {
                    DiskName = "string",
                    DiskURI = "string",
                    CachingMode = "string",
                    FsType = "string",
                    Kind = "string",
                    ReadOnly = false,
                },
                Nfs = new Kubernetes.Types.Inputs.Core.V1.NFSVolumeSourceArgs
                {
                    Path = "string",
                    Server = "string",
                    ReadOnly = false,
                },
                HostPath = new Kubernetes.Types.Inputs.Core.V1.HostPathVolumeSourceArgs
                {
                    Path = "string",
                    Type = "string",
                },
                PhotonPersistentDisk = new Kubernetes.Types.Inputs.Core.V1.PhotonPersistentDiskVolumeSourceArgs
                {
                    PdID = "string",
                    FsType = "string",
                },
                Image = new Kubernetes.Types.Inputs.Core.V1.ImageVolumeSourceArgs
                {
                    PullPolicy = "string",
                    Reference = "string",
                },
                Projected = new Kubernetes.Types.Inputs.Core.V1.ProjectedVolumeSourceArgs
                {
                    Sources = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.VolumeProjectionArgs
                        {
                            ClusterTrustBundle = new Kubernetes.Types.Inputs.Core.V1.ClusterTrustBundleProjectionArgs
                            {
                                Path = "string",
                                LabelSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                                {
                                    MatchExpressions = new[]
                                    {
                                        new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                        {
                                            Key = "string",
                                            Operator = "string",
                                            Values = new[]
                                            {
                                                "string",
                                            },
                                        },
                                    },
                                    MatchLabels = 
                                    {
                                        { "string", "string" },
                                    },
                                },
                                Name = "string",
                                Optional = false,
                                SignerName = "string",
                            },
                            ConfigMap = new Kubernetes.Types.Inputs.Core.V1.ConfigMapProjectionArgs
                            {
                                Items = new[]
                                {
                                    new Kubernetes.Types.Inputs.Core.V1.KeyToPathArgs
                                    {
                                        Key = "string",
                                        Path = "string",
                                        Mode = 0,
                                    },
                                },
                                Name = "string",
                                Optional = false,
                            },
                            DownwardAPI = new Kubernetes.Types.Inputs.Core.V1.DownwardAPIProjectionArgs
                            {
                                Items = new[]
                                {
                                    new Kubernetes.Types.Inputs.Core.V1.DownwardAPIVolumeFileArgs
                                    {
                                        Path = "string",
                                        FieldRef = new Kubernetes.Types.Inputs.Core.V1.ObjectFieldSelectorArgs
                                        {
                                            FieldPath = "string",
                                            ApiVersion = "string",
                                        },
                                        Mode = 0,
                                        ResourceFieldRef = new Kubernetes.Types.Inputs.Core.V1.ResourceFieldSelectorArgs
                                        {
                                            Resource = "string",
                                            ContainerName = "string",
                                            Divisor = "string",
                                        },
                                    },
                                },
                            },
                            Secret = new Kubernetes.Types.Inputs.Core.V1.SecretProjectionArgs
                            {
                                Items = new[]
                                {
                                    new Kubernetes.Types.Inputs.Core.V1.KeyToPathArgs
                                    {
                                        Key = "string",
                                        Path = "string",
                                        Mode = 0,
                                    },
                                },
                                Name = "string",
                                Optional = false,
                            },
                            ServiceAccountToken = new Kubernetes.Types.Inputs.Core.V1.ServiceAccountTokenProjectionArgs
                            {
                                Path = "string",
                                Audience = "string",
                                ExpirationSeconds = 0,
                            },
                        },
                    },
                    DefaultMode = 0,
                },
                Quobyte = new Kubernetes.Types.Inputs.Core.V1.QuobyteVolumeSourceArgs
                {
                    Registry = "string",
                    Volume = "string",
                    Group = "string",
                    ReadOnly = false,
                    Tenant = "string",
                    User = "string",
                },
                Rbd = new Kubernetes.Types.Inputs.Core.V1.RBDVolumeSourceArgs
                {
                    Image = "string",
                    Monitors = new[]
                    {
                        "string",
                    },
                    FsType = "string",
                    Keyring = "string",
                    Pool = "string",
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    User = "string",
                },
                ScaleIO = new Kubernetes.Types.Inputs.Core.V1.ScaleIOVolumeSourceArgs
                {
                    Gateway = "string",
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    System = "string",
                    FsType = "string",
                    ProtectionDomain = "string",
                    ReadOnly = false,
                    SslEnabled = false,
                    StorageMode = "string",
                    StoragePool = "string",
                    VolumeName = "string",
                },
                Secret = new Kubernetes.Types.Inputs.Core.V1.SecretVolumeSourceArgs
                {
                    DefaultMode = 0,
                    Items = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.KeyToPathArgs
                        {
                            Key = "string",
                            Path = "string",
                            Mode = 0,
                        },
                    },
                    Optional = false,
                    SecretName = "string",
                },
                Storageos = new Kubernetes.Types.Inputs.Core.V1.StorageOSVolumeSourceArgs
                {
                    FsType = "string",
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    VolumeName = "string",
                    VolumeNamespace = "string",
                },
                VsphereVolume = new Kubernetes.Types.Inputs.Core.V1.VsphereVirtualDiskVolumeSourceArgs
                {
                    VolumePath = "string",
                    FsType = "string",
                    StoragePolicyID = "string",
                    StoragePolicyName = "string",
                },
            },
        },
        HealthCheckPath = "string",
        HeathCheckHost = "string",
        HostNetwork = false,
        HostPort = new KubernetesIngressNginx.Inputs.ControllerHostPortArgs
        {
            Enabled = false,
            Ports = new KubernetesIngressNginx.Inputs.ControllerHostPortPortsArgs
            {
                Http = 0,
                Https = 0,
            },
        },
        Hostname = 
        {
            { "string", 
            {
                { "string", "string" },
            } },
        },
        Image = new KubernetesIngressNginx.Inputs.ControllerImageArgs
        {
            AllowPrivilegeEscalation = false,
            Digest = "string",
            Image = "string",
            PullPolicy = "string",
            ReadOnlyRootFilesystem = false,
            Registry = "string",
            Repository = "string",
            RunAsNonRoot = false,
            RunAsUser = "string",
            Tag = "string",
        },
        IngressClassByName = false,
        IngressClassResource = new KubernetesIngressNginx.Inputs.ControllerIngressClassResourceArgs
        {
            ControllerValue = "string",
            Default = false,
            Enabled = false,
            Name = "string",
            Parameters = 
            {
                { "string", 
                {
                    { "string", "string" },
                } },
            },
        },
        Keda = new KubernetesIngressNginx.Inputs.KedaArgs
        {
            ApiVersion = "string",
            Behavior = new KubernetesIngressNginx.Inputs.AutoscalingBehaviorArgs
            {
                ScaleDown = new KubernetesIngressNginx.Inputs.AutoscalingBehaviorScalingArgs
                {
                    Policies = new[]
                    {
                        new KubernetesIngressNginx.Inputs.AutoscalingBehaviorScalingPolicyArgs
                        {
                            PeriodSeconds = 0,
                            Type = "string",
                            Value = 0,
                        },
                    },
                    StabilizationWindowSeconds = 0,
                },
                ScaleUp = new KubernetesIngressNginx.Inputs.AutoscalingBehaviorScalingArgs
                {
                    Policies = new[]
                    {
                        new KubernetesIngressNginx.Inputs.AutoscalingBehaviorScalingPolicyArgs
                        {
                            PeriodSeconds = 0,
                            Type = "string",
                            Value = 0,
                        },
                    },
                    StabilizationWindowSeconds = 0,
                },
            },
            CooldownPeriod = 0,
            Enabled = false,
            MaxReplicas = 0,
            MinReplicas = 0,
            PollingInterval = 0,
            RestoreToOriginalReplicaCount = false,
            ScaledObject = new KubernetesIngressNginx.Inputs.KedaScaledObjectArgs
            {
                Annotations = 
                {
                    { "string", "string" },
                },
            },
            Triggers = new[]
            {
                new KubernetesIngressNginx.Inputs.KedaTriggerArgs
                {
                    Metadata = 
                    {
                        { "string", 
                        {
                            { "string", "string" },
                        } },
                    },
                    Type = "string",
                },
            },
        },
        Kind = "string",
        Lifecycle = new Kubernetes.Types.Inputs.Core.V1.LifecycleArgs
        {
            PostStart = new Kubernetes.Types.Inputs.Core.V1.LifecycleHandlerArgs
            {
                Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
                {
                    Command = new[]
                    {
                        "string",
                    },
                },
                HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
                {
                    Port = 0,
                    Host = "string",
                    HttpHeaders = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                        {
                            Name = "string",
                            Value = "string",
                        },
                    },
                    Path = "string",
                    Scheme = "string",
                },
                Sleep = new Kubernetes.Types.Inputs.Core.V1.SleepActionArgs
                {
                    Seconds = 0,
                },
                TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
                {
                    Port = 0,
                    Host = "string",
                },
            },
            PreStop = new Kubernetes.Types.Inputs.Core.V1.LifecycleHandlerArgs
            {
                Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
                {
                    Command = new[]
                    {
                        "string",
                    },
                },
                HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
                {
                    Port = 0,
                    Host = "string",
                    HttpHeaders = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                        {
                            Name = "string",
                            Value = "string",
                        },
                    },
                    Path = "string",
                    Scheme = "string",
                },
                Sleep = new Kubernetes.Types.Inputs.Core.V1.SleepActionArgs
                {
                    Seconds = 0,
                },
                TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
                {
                    Port = 0,
                    Host = "string",
                },
            },
        },
        LivenessProbe = new Kubernetes.Types.Inputs.Core.V1.ProbeArgs
        {
            Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
            {
                Command = new[]
                {
                    "string",
                },
            },
            FailureThreshold = 0,
            Grpc = new Kubernetes.Types.Inputs.Core.V1.GRPCActionArgs
            {
                Port = 0,
                Service = "string",
            },
            HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
            {
                Port = 0,
                Host = "string",
                HttpHeaders = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                    {
                        Name = "string",
                        Value = "string",
                    },
                },
                Path = "string",
                Scheme = "string",
            },
            InitialDelaySeconds = 0,
            PeriodSeconds = 0,
            SuccessThreshold = 0,
            TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
            {
                Port = 0,
                Host = "string",
            },
            TerminationGracePeriodSeconds = 0,
            TimeoutSeconds = 0,
        },
        MaxmindLicenseKey = "string",
        Metrics = new KubernetesIngressNginx.Inputs.ControllerMetricsArgs
        {
            Enabled = false,
            Port = 0,
            PrometheusRule = new KubernetesIngressNginx.Inputs.ControllerMetricsPrometheusRulesArgs
            {
                AdditionalLabels = 
                {
                    { "string", "string" },
                },
                Enabled = false,
                Namespace = "string",
                Rules = new[]
                {
                    
                    {
                        { "string", "string" },
                    },
                },
            },
            Service = new KubernetesIngressNginx.Inputs.ControllerMetricsServiceArgs
            {
                Annotations = 
                {
                    { "string", "string" },
                },
                ClusterIP = "string",
                ExternalIPs = new[]
                {
                    "string",
                },
                ExternalTrafficPolicy = "string",
                LoadBalancerIPs = "string",
                LoadBalancerSourceRanges = new[]
                {
                    "string",
                },
                NodePort = "string",
                ServicePort = 0,
                Type = "string",
            },
            ServiceMonitor = new KubernetesIngressNginx.Inputs.ControllerMetricsServiceMonitorArgs
            {
                AdditionalLabels = 
                {
                    { "string", "string" },
                },
                Enabled = false,
                HonorLabels = false,
                JobLabel = "string",
                MetricRelabelings = new[]
                {
                    "string",
                },
                Namespace = "string",
                NamespaceSelector = 
                {
                    { "string", 
                    {
                        { "string", "string" },
                    } },
                },
                ScrapeInterval = "string",
                TargetLabels = new[]
                {
                    "string",
                },
            },
        },
        MinAvailable = 0,
        MinReadySeconds = 0,
        Name = "string",
        NodeSelector = 
        {
            { "string", "string" },
        },
        PodAnnotations = 
        {
            { "string", "string" },
        },
        PodLabels = 
        {
            { "string", "string" },
        },
        PodSecurityContext = new Kubernetes.Types.Inputs.Core.V1.PodSecurityContextArgs
        {
            AppArmorProfile = new Kubernetes.Types.Inputs.Core.V1.AppArmorProfileArgs
            {
                Type = "string",
                LocalhostProfile = "string",
            },
            FsGroup = 0,
            FsGroupChangePolicy = "string",
            RunAsGroup = 0,
            RunAsNonRoot = false,
            RunAsUser = 0,
            SeLinuxChangePolicy = "string",
            SeLinuxOptions = new Kubernetes.Types.Inputs.Core.V1.SELinuxOptionsArgs
            {
                Level = "string",
                Role = "string",
                Type = "string",
                User = "string",
            },
            SeccompProfile = new Kubernetes.Types.Inputs.Core.V1.SeccompProfileArgs
            {
                Type = "string",
                LocalhostProfile = "string",
            },
            SupplementalGroups = new[]
            {
                0,
            },
            SupplementalGroupsPolicy = "string",
            Sysctls = new[]
            {
                new Kubernetes.Types.Inputs.Core.V1.SysctlArgs
                {
                    Name = "string",
                    Value = "string",
                },
            },
            WindowsOptions = new Kubernetes.Types.Inputs.Core.V1.WindowsSecurityContextOptionsArgs
            {
                GmsaCredentialSpec = "string",
                GmsaCredentialSpecName = "string",
                HostProcess = false,
                RunAsUserName = "string",
            },
        },
        PriorityClassName = "string",
        ProxySetHeaders = 
        {
            { "string", 
            {
                { "string", "string" },
            } },
        },
        PublishService = new KubernetesIngressNginx.Inputs.ControllerPublishServiceArgs
        {
            Enabled = false,
            PathOverride = "string",
        },
        ReadinessProbe = new Kubernetes.Types.Inputs.Core.V1.ProbeArgs
        {
            Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
            {
                Command = new[]
                {
                    "string",
                },
            },
            FailureThreshold = 0,
            Grpc = new Kubernetes.Types.Inputs.Core.V1.GRPCActionArgs
            {
                Port = 0,
                Service = "string",
            },
            HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
            {
                Port = 0,
                Host = "string",
                HttpHeaders = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                    {
                        Name = "string",
                        Value = "string",
                    },
                },
                Path = "string",
                Scheme = "string",
            },
            InitialDelaySeconds = 0,
            PeriodSeconds = 0,
            SuccessThreshold = 0,
            TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
            {
                Port = 0,
                Host = "string",
            },
            TerminationGracePeriodSeconds = 0,
            TimeoutSeconds = 0,
        },
        ReplicaCount = 0,
        ReportNodeInternalIp = false,
        Resources = new Kubernetes.Types.Inputs.Core.V1.ResourceRequirementsArgs
        {
            Claims = new[]
            {
                new Kubernetes.Types.Inputs.Core.V1.ResourceClaimArgs
                {
                    Name = "string",
                    Request = "string",
                },
            },
            Limits = 
            {
                { "string", "string" },
            },
            Requests = 
            {
                { "string", "string" },
            },
        },
        Scope = new KubernetesIngressNginx.Inputs.ControllerScopeArgs
        {
            Enabled = false,
            Namespace = "string",
        },
        Service = new KubernetesIngressNginx.Inputs.ControllerServiceArgs
        {
            Annotations = 
            {
                { "string", "string" },
            },
            ClusterIP = "string",
            EnableHttp = false,
            EnableHttps = false,
            Enabled = false,
            ExternalIPs = new[]
            {
                "string",
            },
            ExternalTrafficPolicy = "string",
            HealthCheckNodePort = 0,
            Internal = new KubernetesIngressNginx.Inputs.ControllerServiceInternalArgs
            {
                Annotations = 
                {
                    { "string", "string" },
                },
                Enabled = false,
                ExternalTrafficPolicy = "string",
                Labels = 
                {
                    { "string", "string" },
                },
                LoadBalancerIPs = "string",
                LoadBalancerSourceRanges = new[]
                {
                    "string",
                },
            },
            Labels = 
            {
                { "string", "string" },
            },
            LoadBalancerIP = "string",
            LoadBalancerIPs = "string",
            LoadBalancerSourceRanges = new[]
            {
                "string",
            },
            NodePorts = new KubernetesIngressNginx.Inputs.ControllerServiceNodePortsArgs
            {
                Http = "string",
                Https = "string",
                Tcp = 
                {
                    { "string", 
                    {
                        { "string", "string" },
                    } },
                },
                Udp = 
                {
                    { "string", 
                    {
                        { "string", "string" },
                    } },
                },
            },
            Ports = new KubernetesIngressNginx.Inputs.ControllerPortArgs
            {
                Http = 0,
                Https = 0,
            },
            SessionAffinity = "string",
            TargetPorts = new KubernetesIngressNginx.Inputs.ControllerPortArgs
            {
                Http = 0,
                Https = 0,
            },
            Type = "string",
        },
        StartupProbe = new Kubernetes.Types.Inputs.Core.V1.ProbeArgs
        {
            Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
            {
                Command = new[]
                {
                    "string",
                },
            },
            FailureThreshold = 0,
            Grpc = new Kubernetes.Types.Inputs.Core.V1.GRPCActionArgs
            {
                Port = 0,
                Service = "string",
            },
            HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
            {
                Port = 0,
                Host = "string",
                HttpHeaders = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                    {
                        Name = "string",
                        Value = "string",
                    },
                },
                Path = "string",
                Scheme = "string",
            },
            InitialDelaySeconds = 0,
            PeriodSeconds = 0,
            SuccessThreshold = 0,
            TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
            {
                Port = 0,
                Host = "string",
            },
            TerminationGracePeriodSeconds = 0,
            TimeoutSeconds = 0,
        },
        Sysctls = 
        {
            { "string", 
            {
                { "string", "string" },
            } },
        },
        Tcp = new KubernetesIngressNginx.Inputs.ControllerTcpArgs
        {
            Annotations = 
            {
                { "string", "string" },
            },
            ConfigMapNamespace = "string",
        },
        TerminateGracePeriodSeconds = 0,
        Tolerations = new Kubernetes.Types.Inputs.Core.V1.TolerationArgs
        {
            Effect = "string",
            Key = "string",
            Operator = "string",
            TolerationSeconds = 0,
            Value = "string",
        },
        TopologySpreadConstraints = new[]
        {
            new Kubernetes.Types.Inputs.Core.V1.TopologySpreadConstraintArgs
            {
                MaxSkew = 0,
                TopologyKey = "string",
                WhenUnsatisfiable = "string",
                LabelSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                {
                    MatchExpressions = new[]
                    {
                        new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                        {
                            Key = "string",
                            Operator = "string",
                            Values = new[]
                            {
                                "string",
                            },
                        },
                    },
                    MatchLabels = 
                    {
                        { "string", "string" },
                    },
                },
                MatchLabelKeys = new[]
                {
                    "string",
                },
                MinDomains = 0,
                NodeAffinityPolicy = "string",
                NodeTaintsPolicy = "string",
            },
        },
        Udp = new KubernetesIngressNginx.Inputs.ControllerUdpArgs
        {
            Annotations = 
            {
                { "string", "string" },
            },
            ConfigMapNamespace = "string",
        },
        UpdateStrategy = new KubernetesIngressNginx.Inputs.ControllerUpdateStrategyArgs
        {
            RollingUpdate = new KubernetesIngressNginx.Inputs.ControllerRollingUpdateArgs
            {
                MaxUnavailable = 0,
            },
            Type = "string",
        },
        WatchIngressWithoutClass = false,
    },
    DefaultBackend = new KubernetesIngressNginx.Inputs.ControllerDefaultBackendArgs
    {
        Affinity = new Kubernetes.Types.Inputs.Core.V1.AffinityArgs
        {
            NodeAffinity = new Kubernetes.Types.Inputs.Core.V1.NodeAffinityArgs
            {
                PreferredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.PreferredSchedulingTermArgs
                    {
                        Preference = new Kubernetes.Types.Inputs.Core.V1.NodeSelectorTermArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Types.Inputs.Core.V1.NodeSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchFields = new[]
                            {
                                new Kubernetes.Types.Inputs.Core.V1.NodeSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                        },
                        Weight = 0,
                    },
                },
                RequiredDuringSchedulingIgnoredDuringExecution = new Kubernetes.Types.Inputs.Core.V1.NodeSelectorArgs
                {
                    NodeSelectorTerms = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.NodeSelectorTermArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Types.Inputs.Core.V1.NodeSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchFields = new[]
                            {
                                new Kubernetes.Types.Inputs.Core.V1.NodeSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                        },
                    },
                },
            },
            PodAffinity = new Kubernetes.Types.Inputs.Core.V1.PodAffinityArgs
            {
                PreferredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.WeightedPodAffinityTermArgs
                    {
                        PodAffinityTerm = new Kubernetes.Types.Inputs.Core.V1.PodAffinityTermArgs
                        {
                            TopologyKey = "string",
                            LabelSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            MatchLabelKeys = new[]
                            {
                                "string",
                            },
                            MismatchLabelKeys = new[]
                            {
                                "string",
                            },
                            NamespaceSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            Namespaces = new[]
                            {
                                "string",
                            },
                        },
                        Weight = 0,
                    },
                },
                RequiredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.PodAffinityTermArgs
                    {
                        TopologyKey = "string",
                        LabelSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                        MatchLabelKeys = new[]
                        {
                            "string",
                        },
                        MismatchLabelKeys = new[]
                        {
                            "string",
                        },
                        NamespaceSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                        Namespaces = new[]
                        {
                            "string",
                        },
                    },
                },
            },
            PodAntiAffinity = new Kubernetes.Types.Inputs.Core.V1.PodAntiAffinityArgs
            {
                PreferredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.WeightedPodAffinityTermArgs
                    {
                        PodAffinityTerm = new Kubernetes.Types.Inputs.Core.V1.PodAffinityTermArgs
                        {
                            TopologyKey = "string",
                            LabelSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            MatchLabelKeys = new[]
                            {
                                "string",
                            },
                            MismatchLabelKeys = new[]
                            {
                                "string",
                            },
                            NamespaceSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            Namespaces = new[]
                            {
                                "string",
                            },
                        },
                        Weight = 0,
                    },
                },
                RequiredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.PodAffinityTermArgs
                    {
                        TopologyKey = "string",
                        LabelSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                        MatchLabelKeys = new[]
                        {
                            "string",
                        },
                        MismatchLabelKeys = new[]
                        {
                            "string",
                        },
                        NamespaceSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                        Namespaces = new[]
                        {
                            "string",
                        },
                    },
                },
            },
        },
        Autoscaling = new KubernetesIngressNginx.Inputs.AutoscalingArgs
        {
            Annotations = 
            {
                { "string", "string" },
            },
            ControllerAutoscalingBehavior = new KubernetesIngressNginx.Inputs.AutoscalingBehaviorArgs
            {
                ScaleDown = new KubernetesIngressNginx.Inputs.AutoscalingBehaviorScalingArgs
                {
                    Policies = new[]
                    {
                        new KubernetesIngressNginx.Inputs.AutoscalingBehaviorScalingPolicyArgs
                        {
                            PeriodSeconds = 0,
                            Type = "string",
                            Value = 0,
                        },
                    },
                    StabilizationWindowSeconds = 0,
                },
                ScaleUp = new KubernetesIngressNginx.Inputs.AutoscalingBehaviorScalingArgs
                {
                    Policies = new[]
                    {
                        new KubernetesIngressNginx.Inputs.AutoscalingBehaviorScalingPolicyArgs
                        {
                            PeriodSeconds = 0,
                            Type = "string",
                            Value = 0,
                        },
                    },
                    StabilizationWindowSeconds = 0,
                },
            },
            Enabled = false,
            MaxReplicas = 0,
            MinReplicas = 0,
            TargetCPUUtilizationPercentage = 0,
            TargetMemoryUtilizationPercentage = 0,
        },
        Enabled = false,
        ExistingPsp = "string",
        ExtraArgs = 
        {
            { "string", 
            {
                { "string", "string" },
            } },
        },
        ExtraEnvs = new[]
        {
            new Kubernetes.Types.Inputs.Core.V1.EnvVarArgs
            {
                Name = "string",
                Value = "string",
                ValueFrom = new Kubernetes.Types.Inputs.Core.V1.EnvVarSourceArgs
                {
                    ConfigMapKeyRef = new Kubernetes.Types.Inputs.Core.V1.ConfigMapKeySelectorArgs
                    {
                        Key = "string",
                        Name = "string",
                        Optional = false,
                    },
                    FieldRef = new Kubernetes.Types.Inputs.Core.V1.ObjectFieldSelectorArgs
                    {
                        FieldPath = "string",
                        ApiVersion = "string",
                    },
                    ResourceFieldRef = new Kubernetes.Types.Inputs.Core.V1.ResourceFieldSelectorArgs
                    {
                        Resource = "string",
                        ContainerName = "string",
                        Divisor = "string",
                    },
                    SecretKeyRef = new Kubernetes.Types.Inputs.Core.V1.SecretKeySelectorArgs
                    {
                        Key = "string",
                        Name = "string",
                        Optional = false,
                    },
                },
            },
        },
        ExtraVolumeMounts = new[]
        {
            new Kubernetes.Types.Inputs.Core.V1.VolumeMountArgs
            {
                MountPath = "string",
                Name = "string",
                MountPropagation = "string",
                ReadOnly = false,
                RecursiveReadOnly = "string",
                SubPath = "string",
                SubPathExpr = "string",
            },
        },
        ExtraVolumes = new[]
        {
            new Kubernetes.Types.Inputs.Core.V1.VolumeArgs
            {
                Name = "string",
                GitRepo = new Kubernetes.Types.Inputs.Core.V1.GitRepoVolumeSourceArgs
                {
                    Repository = "string",
                    Directory = "string",
                    Revision = "string",
                },
                PersistentVolumeClaim = new Kubernetes.Types.Inputs.Core.V1.PersistentVolumeClaimVolumeSourceArgs
                {
                    ClaimName = "string",
                    ReadOnly = false,
                },
                Cephfs = new Kubernetes.Types.Inputs.Core.V1.CephFSVolumeSourceArgs
                {
                    Monitors = new[]
                    {
                        "string",
                    },
                    Path = "string",
                    ReadOnly = false,
                    SecretFile = "string",
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    User = "string",
                },
                Cinder = new Kubernetes.Types.Inputs.Core.V1.CinderVolumeSourceArgs
                {
                    VolumeID = "string",
                    FsType = "string",
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                },
                ConfigMap = new Kubernetes.Types.Inputs.Core.V1.ConfigMapVolumeSourceArgs
                {
                    DefaultMode = 0,
                    Items = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.KeyToPathArgs
                        {
                            Key = "string",
                            Path = "string",
                            Mode = 0,
                        },
                    },
                    Name = "string",
                    Optional = false,
                },
                Csi = new Kubernetes.Types.Inputs.Core.V1.CSIVolumeSourceArgs
                {
                    Driver = "string",
                    FsType = "string",
                    NodePublishSecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    ReadOnly = false,
                    VolumeAttributes = 
                    {
                        { "string", "string" },
                    },
                },
                DownwardAPI = new Kubernetes.Types.Inputs.Core.V1.DownwardAPIVolumeSourceArgs
                {
                    DefaultMode = 0,
                    Items = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.DownwardAPIVolumeFileArgs
                        {
                            Path = "string",
                            FieldRef = new Kubernetes.Types.Inputs.Core.V1.ObjectFieldSelectorArgs
                            {
                                FieldPath = "string",
                                ApiVersion = "string",
                            },
                            Mode = 0,
                            ResourceFieldRef = new Kubernetes.Types.Inputs.Core.V1.ResourceFieldSelectorArgs
                            {
                                Resource = "string",
                                ContainerName = "string",
                                Divisor = "string",
                            },
                        },
                    },
                },
                EmptyDir = new Kubernetes.Types.Inputs.Core.V1.EmptyDirVolumeSourceArgs
                {
                    Medium = "string",
                    SizeLimit = "string",
                },
                Ephemeral = new Kubernetes.Types.Inputs.Core.V1.EphemeralVolumeSourceArgs
                {
                    ReadOnly = false,
                    VolumeClaimTemplate = new Kubernetes.Types.Inputs.Core.V1.PersistentVolumeClaimTemplateArgs
                    {
                        Spec = new Kubernetes.Types.Inputs.Core.V1.PersistentVolumeClaimSpecArgs
                        {
                            AccessModes = new[]
                            {
                                "string",
                            },
                            DataSource = new Kubernetes.Types.Inputs.Core.V1.TypedLocalObjectReferenceArgs
                            {
                                Kind = "string",
                                Name = "string",
                                ApiGroup = "string",
                            },
                            DataSourceRef = new Kubernetes.Types.Inputs.Core.V1.TypedObjectReferenceArgs
                            {
                                Kind = "string",
                                Name = "string",
                                ApiGroup = "string",
                                Namespace = "string",
                            },
                            Resources = new Kubernetes.Types.Inputs.Core.V1.VolumeResourceRequirementsArgs
                            {
                                Limits = 
                                {
                                    { "string", "string" },
                                },
                                Requests = 
                                {
                                    { "string", "string" },
                                },
                            },
                            Selector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            StorageClassName = "string",
                            VolumeAttributesClassName = "string",
                            VolumeMode = "string",
                            VolumeName = "string",
                        },
                        Metadata = new Kubernetes.Types.Inputs.Meta.V1.ObjectMetaArgs
                        {
                            Annotations = 
                            {
                                { "string", "string" },
                            },
                            ClusterName = "string",
                            CreationTimestamp = "string",
                            DeletionGracePeriodSeconds = 0,
                            DeletionTimestamp = "string",
                            Finalizers = new[]
                            {
                                "string",
                            },
                            GenerateName = "string",
                            Generation = 0,
                            Labels = 
                            {
                                { "string", "string" },
                            },
                            ManagedFields = new[]
                            {
                                new Kubernetes.Types.Inputs.Meta.V1.ManagedFieldsEntryArgs
                                {
                                    ApiVersion = "string",
                                    FieldsType = "string",
                                    FieldsV1 = "{}",
                                    Manager = "string",
                                    Operation = "string",
                                    Subresource = "string",
                                    Time = "string",
                                },
                            },
                            Name = "string",
                            Namespace = "string",
                            OwnerReferences = new[]
                            {
                                new Kubernetes.Types.Inputs.Meta.V1.OwnerReferenceArgs
                                {
                                    ApiVersion = "string",
                                    Kind = "string",
                                    Name = "string",
                                    Uid = "string",
                                    BlockOwnerDeletion = false,
                                    Controller = false,
                                },
                            },
                            ResourceVersion = "string",
                            SelfLink = "string",
                            Uid = "string",
                        },
                    },
                },
                Fc = new Kubernetes.Types.Inputs.Core.V1.FCVolumeSourceArgs
                {
                    FsType = "string",
                    Lun = 0,
                    ReadOnly = false,
                    TargetWWNs = new[]
                    {
                        "string",
                    },
                    Wwids = new[]
                    {
                        "string",
                    },
                },
                FlexVolume = new Kubernetes.Types.Inputs.Core.V1.FlexVolumeSourceArgs
                {
                    Driver = "string",
                    FsType = "string",
                    Options = 
                    {
                        { "string", "string" },
                    },
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                },
                Flocker = new Kubernetes.Types.Inputs.Core.V1.FlockerVolumeSourceArgs
                {
                    DatasetName = "string",
                    DatasetUUID = "string",
                },
                GcePersistentDisk = new Kubernetes.Types.Inputs.Core.V1.GCEPersistentDiskVolumeSourceArgs
                {
                    PdName = "string",
                    FsType = "string",
                    Partition = 0,
                    ReadOnly = false,
                },
                AwsElasticBlockStore = new Kubernetes.Types.Inputs.Core.V1.AWSElasticBlockStoreVolumeSourceArgs
                {
                    VolumeID = "string",
                    FsType = "string",
                    Partition = 0,
                    ReadOnly = false,
                },
                AzureFile = new Kubernetes.Types.Inputs.Core.V1.AzureFileVolumeSourceArgs
                {
                    SecretName = "string",
                    ShareName = "string",
                    ReadOnly = false,
                },
                Glusterfs = new Kubernetes.Types.Inputs.Core.V1.GlusterfsVolumeSourceArgs
                {
                    Endpoints = "string",
                    Path = "string",
                    ReadOnly = false,
                },
                PortworxVolume = new Kubernetes.Types.Inputs.Core.V1.PortworxVolumeSourceArgs
                {
                    VolumeID = "string",
                    FsType = "string",
                    ReadOnly = false,
                },
                Iscsi = new Kubernetes.Types.Inputs.Core.V1.ISCSIVolumeSourceArgs
                {
                    Iqn = "string",
                    Lun = 0,
                    TargetPortal = "string",
                    ChapAuthDiscovery = false,
                    ChapAuthSession = false,
                    FsType = "string",
                    InitiatorName = "string",
                    IscsiInterface = "string",
                    Portals = new[]
                    {
                        "string",
                    },
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                },
                AzureDisk = new Kubernetes.Types.Inputs.Core.V1.AzureDiskVolumeSourceArgs
                {
                    DiskName = "string",
                    DiskURI = "string",
                    CachingMode = "string",
                    FsType = "string",
                    Kind = "string",
                    ReadOnly = false,
                },
                Nfs = new Kubernetes.Types.Inputs.Core.V1.NFSVolumeSourceArgs
                {
                    Path = "string",
                    Server = "string",
                    ReadOnly = false,
                },
                HostPath = new Kubernetes.Types.Inputs.Core.V1.HostPathVolumeSourceArgs
                {
                    Path = "string",
                    Type = "string",
                },
                PhotonPersistentDisk = new Kubernetes.Types.Inputs.Core.V1.PhotonPersistentDiskVolumeSourceArgs
                {
                    PdID = "string",
                    FsType = "string",
                },
                Image = new Kubernetes.Types.Inputs.Core.V1.ImageVolumeSourceArgs
                {
                    PullPolicy = "string",
                    Reference = "string",
                },
                Projected = new Kubernetes.Types.Inputs.Core.V1.ProjectedVolumeSourceArgs
                {
                    Sources = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.VolumeProjectionArgs
                        {
                            ClusterTrustBundle = new Kubernetes.Types.Inputs.Core.V1.ClusterTrustBundleProjectionArgs
                            {
                                Path = "string",
                                LabelSelector = new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorArgs
                                {
                                    MatchExpressions = new[]
                                    {
                                        new Kubernetes.Types.Inputs.Meta.V1.LabelSelectorRequirementArgs
                                        {
                                            Key = "string",
                                            Operator = "string",
                                            Values = new[]
                                            {
                                                "string",
                                            },
                                        },
                                    },
                                    MatchLabels = 
                                    {
                                        { "string", "string" },
                                    },
                                },
                                Name = "string",
                                Optional = false,
                                SignerName = "string",
                            },
                            ConfigMap = new Kubernetes.Types.Inputs.Core.V1.ConfigMapProjectionArgs
                            {
                                Items = new[]
                                {
                                    new Kubernetes.Types.Inputs.Core.V1.KeyToPathArgs
                                    {
                                        Key = "string",
                                        Path = "string",
                                        Mode = 0,
                                    },
                                },
                                Name = "string",
                                Optional = false,
                            },
                            DownwardAPI = new Kubernetes.Types.Inputs.Core.V1.DownwardAPIProjectionArgs
                            {
                                Items = new[]
                                {
                                    new Kubernetes.Types.Inputs.Core.V1.DownwardAPIVolumeFileArgs
                                    {
                                        Path = "string",
                                        FieldRef = new Kubernetes.Types.Inputs.Core.V1.ObjectFieldSelectorArgs
                                        {
                                            FieldPath = "string",
                                            ApiVersion = "string",
                                        },
                                        Mode = 0,
                                        ResourceFieldRef = new Kubernetes.Types.Inputs.Core.V1.ResourceFieldSelectorArgs
                                        {
                                            Resource = "string",
                                            ContainerName = "string",
                                            Divisor = "string",
                                        },
                                    },
                                },
                            },
                            Secret = new Kubernetes.Types.Inputs.Core.V1.SecretProjectionArgs
                            {
                                Items = new[]
                                {
                                    new Kubernetes.Types.Inputs.Core.V1.KeyToPathArgs
                                    {
                                        Key = "string",
                                        Path = "string",
                                        Mode = 0,
                                    },
                                },
                                Name = "string",
                                Optional = false,
                            },
                            ServiceAccountToken = new Kubernetes.Types.Inputs.Core.V1.ServiceAccountTokenProjectionArgs
                            {
                                Path = "string",
                                Audience = "string",
                                ExpirationSeconds = 0,
                            },
                        },
                    },
                    DefaultMode = 0,
                },
                Quobyte = new Kubernetes.Types.Inputs.Core.V1.QuobyteVolumeSourceArgs
                {
                    Registry = "string",
                    Volume = "string",
                    Group = "string",
                    ReadOnly = false,
                    Tenant = "string",
                    User = "string",
                },
                Rbd = new Kubernetes.Types.Inputs.Core.V1.RBDVolumeSourceArgs
                {
                    Image = "string",
                    Monitors = new[]
                    {
                        "string",
                    },
                    FsType = "string",
                    Keyring = "string",
                    Pool = "string",
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    User = "string",
                },
                ScaleIO = new Kubernetes.Types.Inputs.Core.V1.ScaleIOVolumeSourceArgs
                {
                    Gateway = "string",
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    System = "string",
                    FsType = "string",
                    ProtectionDomain = "string",
                    ReadOnly = false,
                    SslEnabled = false,
                    StorageMode = "string",
                    StoragePool = "string",
                    VolumeName = "string",
                },
                Secret = new Kubernetes.Types.Inputs.Core.V1.SecretVolumeSourceArgs
                {
                    DefaultMode = 0,
                    Items = new[]
                    {
                        new Kubernetes.Types.Inputs.Core.V1.KeyToPathArgs
                        {
                            Key = "string",
                            Path = "string",
                            Mode = 0,
                        },
                    },
                    Optional = false,
                    SecretName = "string",
                },
                Storageos = new Kubernetes.Types.Inputs.Core.V1.StorageOSVolumeSourceArgs
                {
                    FsType = "string",
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    VolumeName = "string",
                    VolumeNamespace = "string",
                },
                VsphereVolume = new Kubernetes.Types.Inputs.Core.V1.VsphereVirtualDiskVolumeSourceArgs
                {
                    VolumePath = "string",
                    FsType = "string",
                    StoragePolicyID = "string",
                    StoragePolicyName = "string",
                },
            },
        },
        Image = new KubernetesIngressNginx.Inputs.ControllerImageArgs
        {
            AllowPrivilegeEscalation = false,
            Digest = "string",
            Image = "string",
            PullPolicy = "string",
            ReadOnlyRootFilesystem = false,
            Registry = "string",
            Repository = "string",
            RunAsNonRoot = false,
            RunAsUser = "string",
            Tag = "string",
        },
        LivenessProbe = new Kubernetes.Types.Inputs.Core.V1.ProbeArgs
        {
            Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
            {
                Command = new[]
                {
                    "string",
                },
            },
            FailureThreshold = 0,
            Grpc = new Kubernetes.Types.Inputs.Core.V1.GRPCActionArgs
            {
                Port = 0,
                Service = "string",
            },
            HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
            {
                Port = 0,
                Host = "string",
                HttpHeaders = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                    {
                        Name = "string",
                        Value = "string",
                    },
                },
                Path = "string",
                Scheme = "string",
            },
            InitialDelaySeconds = 0,
            PeriodSeconds = 0,
            SuccessThreshold = 0,
            TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
            {
                Port = 0,
                Host = "string",
            },
            TerminationGracePeriodSeconds = 0,
            TimeoutSeconds = 0,
        },
        MinAvailable = 0,
        Name = "string",
        NodeSelector = 
        {
            { "string", "string" },
        },
        PodAnnotations = 
        {
            { "string", "string" },
        },
        PodLabels = 
        {
            { "string", "string" },
        },
        PodSecurityContext = new Kubernetes.Types.Inputs.Core.V1.PodSecurityContextArgs
        {
            AppArmorProfile = new Kubernetes.Types.Inputs.Core.V1.AppArmorProfileArgs
            {
                Type = "string",
                LocalhostProfile = "string",
            },
            FsGroup = 0,
            FsGroupChangePolicy = "string",
            RunAsGroup = 0,
            RunAsNonRoot = false,
            RunAsUser = 0,
            SeLinuxChangePolicy = "string",
            SeLinuxOptions = new Kubernetes.Types.Inputs.Core.V1.SELinuxOptionsArgs
            {
                Level = "string",
                Role = "string",
                Type = "string",
                User = "string",
            },
            SeccompProfile = new Kubernetes.Types.Inputs.Core.V1.SeccompProfileArgs
            {
                Type = "string",
                LocalhostProfile = "string",
            },
            SupplementalGroups = new[]
            {
                0,
            },
            SupplementalGroupsPolicy = "string",
            Sysctls = new[]
            {
                new Kubernetes.Types.Inputs.Core.V1.SysctlArgs
                {
                    Name = "string",
                    Value = "string",
                },
            },
            WindowsOptions = new Kubernetes.Types.Inputs.Core.V1.WindowsSecurityContextOptionsArgs
            {
                GmsaCredentialSpec = "string",
                GmsaCredentialSpecName = "string",
                HostProcess = false,
                RunAsUserName = "string",
            },
        },
        Port = 0,
        PriorityClassName = "string",
        ReadinessProbe = new Kubernetes.Types.Inputs.Core.V1.ProbeArgs
        {
            Exec = new Kubernetes.Types.Inputs.Core.V1.ExecActionArgs
            {
                Command = new[]
                {
                    "string",
                },
            },
            FailureThreshold = 0,
            Grpc = new Kubernetes.Types.Inputs.Core.V1.GRPCActionArgs
            {
                Port = 0,
                Service = "string",
            },
            HttpGet = new Kubernetes.Types.Inputs.Core.V1.HTTPGetActionArgs
            {
                Port = 0,
                Host = "string",
                HttpHeaders = new[]
                {
                    new Kubernetes.Types.Inputs.Core.V1.HTTPHeaderArgs
                    {
                        Name = "string",
                        Value = "string",
                    },
                },
                Path = "string",
                Scheme = "string",
            },
            InitialDelaySeconds = 0,
            PeriodSeconds = 0,
            SuccessThreshold = 0,
            TcpSocket = new Kubernetes.Types.Inputs.Core.V1.TCPSocketActionArgs
            {
                Port = 0,
                Host = "string",
            },
            TerminationGracePeriodSeconds = 0,
            TimeoutSeconds = 0,
        },
        ReplicaCount = 0,
        Resources = new Kubernetes.Types.Inputs.Core.V1.ResourceRequirementsArgs
        {
            Claims = new[]
            {
                new Kubernetes.Types.Inputs.Core.V1.ResourceClaimArgs
                {
                    Name = "string",
                    Request = "string",
                },
            },
            Limits = 
            {
                { "string", "string" },
            },
            Requests = 
            {
                { "string", "string" },
            },
        },
        Service = new KubernetesIngressNginx.Inputs.ControllerDefaultBackendServiceArgs
        {
            Annotations = 
            {
                { "string", "string" },
            },
            ClusterIP = "string",
            ExternalIPs = new[]
            {
                "string",
            },
            LoadBalancerIP = "string",
            LoadBalancerSourceRanges = new[]
            {
                "string",
            },
            ServicePort = 0,
            Type = "string",
        },
        ServiceAccount = new KubernetesIngressNginx.Inputs.ControllerServiceAccountArgs
        {
            AutomountServiceAccountToken = false,
            Create = false,
            Name = "string",
        },
        Tolerations = new[]
        {
            new Kubernetes.Types.Inputs.Core.V1.TolerationArgs
            {
                Effect = "string",
                Key = "string",
                Operator = "string",
                TolerationSeconds = 0,
                Value = "string",
            },
        },
    },
    DhParam = "string",
    FullnameOverride = "string",
    HelmOptions = new KubernetesIngressNginx.Inputs.ReleaseArgs
    {
        Atomic = false,
        Chart = "string",
        CleanupOnFail = false,
        CreateNamespace = false,
        DependencyUpdate = false,
        Description = "string",
        Devel = false,
        DisableCRDHooks = false,
        DisableOpenapiValidation = false,
        DisableWebhooks = false,
        ForceUpdate = false,
        Keyring = "string",
        Lint = false,
        Manifest = 
        {
            { "string", "any" },
        },
        MaxHistory = 0,
        Name = "string",
        Namespace = "string",
        Postrender = "string",
        RecreatePods = false,
        RenderSubchartNotes = false,
        Replace = false,
        RepositoryOpts = new KubernetesIngressNginx.Inputs.RepositoryOptsArgs
        {
            CaFile = "string",
            CertFile = "string",
            KeyFile = "string",
            Password = "string",
            Repo = "string",
            Username = "string",
        },
        ResetValues = false,
        ResourceNames = 
        {
            { "string", new[]
            {
                "string",
            } },
        },
        ReuseValues = false,
        SkipAwait = false,
        SkipCrds = false,
        Timeout = 0,
        ValueYamlFiles = new[]
        {
            new StringAsset("content"),
        },
        Values = 
        {
            { "string", "any" },
        },
        Verify = false,
        Version = "string",
        WaitForJobs = false,
    },
    ImagePullSecrets = new[]
    {
        new Kubernetes.Types.Inputs.Core.V1.LocalObjectReferenceArgs
        {
            Name = "string",
        },
    },
    NameOverride = "string",
    PodSecurityPolicy = new KubernetesIngressNginx.Inputs.ControllerPodSecurityPolicyArgs
    {
        Enabled = false,
    },
    Rbac = new KubernetesIngressNginx.Inputs.ControllerRBACArgs
    {
        Create = false,
        Scope = false,
    },
    RevisionHistoryLimit = 0,
    ServiceAccount = new KubernetesIngressNginx.Inputs.ControllerServiceAccountArgs
    {
        AutomountServiceAccountToken = false,
        Create = false,
        Name = "string",
    },
    Tcp = 
    {
        { "string", 
        {
            { "string", "string" },
        } },
    },
    Udp = 
    {
        { "string", 
        {
            { "string", "string" },
        } },
    },
});
example, err := kubernetesingressnginx.NewIngressController(ctx, "ingressControllerResource", &kubernetesingressnginx.IngressControllerArgs{
	Controller: &kubernetesingressnginx.ControllerArgs{
		AddHeaders: pulumi.StringMapMap{
			"string": pulumi.StringMap{
				"string": pulumi.String("string"),
			},
		},
		AdmissionWebhooks: &kubernetesingressnginx.ContollerAdmissionWebhooksArgs{
			Annotations: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			Certificate: pulumi.String("string"),
			CreateSecretJob: &kubernetesingressnginx.ControllerAdmissionWebhooksCreateSecretJobArgs{
				Resources: &corev1.ResourceRequirementsArgs{
					Claims: corev1.ResourceClaimArray{
						&corev1.ResourceClaimArgs{
							Name:    pulumi.String("string"),
							Request: pulumi.String("string"),
						},
					},
					Limits: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
					Requests: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
				},
			},
			Enabled:       pulumi.Bool(false),
			ExistingPsp:   pulumi.String("string"),
			FailurePolicy: pulumi.String("string"),
			Key:           pulumi.String("string"),
			NamespaceSelector: pulumi.StringMapMap{
				"string": pulumi.StringMap{
					"string": pulumi.String("string"),
				},
			},
			ObjectSelector: pulumi.StringMapMap{
				"string": pulumi.StringMap{
					"string": pulumi.String("string"),
				},
			},
			Patch: &kubernetesingressnginx.ControllerAdmissionWebhooksPatchArgs{
				Enabled: pulumi.Bool(false),
				Image: &kubernetesingressnginx.ControllerImageArgs{
					AllowPrivilegeEscalation: pulumi.Bool(false),
					Digest:                   pulumi.String("string"),
					Image:                    pulumi.String("string"),
					PullPolicy:               pulumi.String("string"),
					ReadOnlyRootFilesystem:   pulumi.Bool(false),
					Registry:                 pulumi.String("string"),
					Repository:               pulumi.String("string"),
					RunAsNonRoot:             pulumi.Bool(false),
					RunAsUser:                pulumi.String("string"),
					Tag:                      pulumi.String("string"),
				},
				NodeSelector: pulumi.StringMap{
					"string": pulumi.String("string"),
				},
				PodAnnotations: pulumi.StringMap{
					"string": pulumi.String("string"),
				},
				PriorityClassName: pulumi.String("string"),
				RunAsUser:         pulumi.Int(0),
				Tolerations: corev1.TolerationArray{
					&corev1.TolerationArgs{
						Effect:            pulumi.String("string"),
						Key:               pulumi.String("string"),
						Operator:          pulumi.String("string"),
						TolerationSeconds: pulumi.Int(0),
						Value:             pulumi.String("string"),
					},
				},
			},
			PatchWebhookJob: &kubernetesingressnginx.ControllerAdmissionWebhooksPatchWebhbookJobArgs{
				Resources: &corev1.ResourceRequirementsArgs{
					Claims: corev1.ResourceClaimArray{
						&corev1.ResourceClaimArgs{
							Name:    pulumi.String("string"),
							Request: pulumi.String("string"),
						},
					},
					Limits: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
					Requests: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
				},
			},
			Port: pulumi.Int(0),
			Service: &kubernetesingressnginx.ControllerAdmissionWebhooksServiceArgs{
				Annotations: pulumi.StringMap{
					"string": pulumi.String("string"),
				},
				ClusterIP: pulumi.String("string"),
				ExternalIPs: pulumi.StringArray{
					pulumi.String("string"),
				},
				LoadBalancerIPs: pulumi.String("string"),
				LoadBalancerSourceRanges: pulumi.StringArray{
					pulumi.String("string"),
				},
				ServicePort: pulumi.Int(0),
				Type:        pulumi.String("string"),
			},
			TimeoutSeconds: pulumi.Int(0),
		},
		Affinity: &corev1.AffinityArgs{
			NodeAffinity: &corev1.NodeAffinityArgs{
				PreferredDuringSchedulingIgnoredDuringExecution: corev1.PreferredSchedulingTermArray{
					&corev1.PreferredSchedulingTermArgs{
						Preference: &corev1.NodeSelectorTermArgs{
							MatchExpressions: corev1.NodeSelectorRequirementArray{
								&corev1.NodeSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
							MatchFields: corev1.NodeSelectorRequirementArray{
								&corev1.NodeSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
						},
						Weight: pulumi.Int(0),
					},
				},
				RequiredDuringSchedulingIgnoredDuringExecution: &corev1.NodeSelectorArgs{
					NodeSelectorTerms: corev1.NodeSelectorTermArray{
						&corev1.NodeSelectorTermArgs{
							MatchExpressions: corev1.NodeSelectorRequirementArray{
								&corev1.NodeSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
							MatchFields: corev1.NodeSelectorRequirementArray{
								&corev1.NodeSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
						},
					},
				},
			},
			PodAffinity: &corev1.PodAffinityArgs{
				PreferredDuringSchedulingIgnoredDuringExecution: corev1.WeightedPodAffinityTermArray{
					&corev1.WeightedPodAffinityTermArgs{
						PodAffinityTerm: &corev1.PodAffinityTermArgs{
							TopologyKey: pulumi.String("string"),
							LabelSelector: &metav1.LabelSelectorArgs{
								MatchExpressions: metav1.LabelSelectorRequirementArray{
									&metav1.LabelSelectorRequirementArgs{
										Key:      pulumi.String("string"),
										Operator: pulumi.String("string"),
										Values: pulumi.StringArray{
											pulumi.String("string"),
										},
									},
								},
								MatchLabels: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
							},
							MatchLabelKeys: pulumi.StringArray{
								pulumi.String("string"),
							},
							MismatchLabelKeys: pulumi.StringArray{
								pulumi.String("string"),
							},
							NamespaceSelector: &metav1.LabelSelectorArgs{
								MatchExpressions: metav1.LabelSelectorRequirementArray{
									&metav1.LabelSelectorRequirementArgs{
										Key:      pulumi.String("string"),
										Operator: pulumi.String("string"),
										Values: pulumi.StringArray{
											pulumi.String("string"),
										},
									},
								},
								MatchLabels: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
							},
							Namespaces: pulumi.StringArray{
								pulumi.String("string"),
							},
						},
						Weight: pulumi.Int(0),
					},
				},
				RequiredDuringSchedulingIgnoredDuringExecution: corev1.PodAffinityTermArray{
					&corev1.PodAffinityTermArgs{
						TopologyKey: pulumi.String("string"),
						LabelSelector: &metav1.LabelSelectorArgs{
							MatchExpressions: metav1.LabelSelectorRequirementArray{
								&metav1.LabelSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
							MatchLabels: pulumi.StringMap{
								"string": pulumi.String("string"),
							},
						},
						MatchLabelKeys: pulumi.StringArray{
							pulumi.String("string"),
						},
						MismatchLabelKeys: pulumi.StringArray{
							pulumi.String("string"),
						},
						NamespaceSelector: &metav1.LabelSelectorArgs{
							MatchExpressions: metav1.LabelSelectorRequirementArray{
								&metav1.LabelSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
							MatchLabels: pulumi.StringMap{
								"string": pulumi.String("string"),
							},
						},
						Namespaces: pulumi.StringArray{
							pulumi.String("string"),
						},
					},
				},
			},
			PodAntiAffinity: &corev1.PodAntiAffinityArgs{
				PreferredDuringSchedulingIgnoredDuringExecution: corev1.WeightedPodAffinityTermArray{
					&corev1.WeightedPodAffinityTermArgs{
						PodAffinityTerm: &corev1.PodAffinityTermArgs{
							TopologyKey: pulumi.String("string"),
							LabelSelector: &metav1.LabelSelectorArgs{
								MatchExpressions: metav1.LabelSelectorRequirementArray{
									&metav1.LabelSelectorRequirementArgs{
										Key:      pulumi.String("string"),
										Operator: pulumi.String("string"),
										Values: pulumi.StringArray{
											pulumi.String("string"),
										},
									},
								},
								MatchLabels: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
							},
							MatchLabelKeys: pulumi.StringArray{
								pulumi.String("string"),
							},
							MismatchLabelKeys: pulumi.StringArray{
								pulumi.String("string"),
							},
							NamespaceSelector: &metav1.LabelSelectorArgs{
								MatchExpressions: metav1.LabelSelectorRequirementArray{
									&metav1.LabelSelectorRequirementArgs{
										Key:      pulumi.String("string"),
										Operator: pulumi.String("string"),
										Values: pulumi.StringArray{
											pulumi.String("string"),
										},
									},
								},
								MatchLabels: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
							},
							Namespaces: pulumi.StringArray{
								pulumi.String("string"),
							},
						},
						Weight: pulumi.Int(0),
					},
				},
				RequiredDuringSchedulingIgnoredDuringExecution: corev1.PodAffinityTermArray{
					&corev1.PodAffinityTermArgs{
						TopologyKey: pulumi.String("string"),
						LabelSelector: &metav1.LabelSelectorArgs{
							MatchExpressions: metav1.LabelSelectorRequirementArray{
								&metav1.LabelSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
							MatchLabels: pulumi.StringMap{
								"string": pulumi.String("string"),
							},
						},
						MatchLabelKeys: pulumi.StringArray{
							pulumi.String("string"),
						},
						MismatchLabelKeys: pulumi.StringArray{
							pulumi.String("string"),
						},
						NamespaceSelector: &metav1.LabelSelectorArgs{
							MatchExpressions: metav1.LabelSelectorRequirementArray{
								&metav1.LabelSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
							MatchLabels: pulumi.StringMap{
								"string": pulumi.String("string"),
							},
						},
						Namespaces: pulumi.StringArray{
							pulumi.String("string"),
						},
					},
				},
			},
		},
		AllowSnippetAnnotations: pulumi.Bool(false),
		Annotations: pulumi.StringMap{
			"string": pulumi.String("string"),
		},
		Autoscaling: &kubernetesingressnginx.AutoscalingArgs{
			Annotations: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			ControllerAutoscalingBehavior: &kubernetesingressnginx.AutoscalingBehaviorArgs{
				ScaleDown: &kubernetesingressnginx.AutoscalingBehaviorScalingArgs{
					Policies: kubernetesingressnginx.AutoscalingBehaviorScalingPolicyArray{
						&kubernetesingressnginx.AutoscalingBehaviorScalingPolicyArgs{
							PeriodSeconds: pulumi.Int(0),
							Type:          pulumi.String("string"),
							Value:         pulumi.Int(0),
						},
					},
					StabilizationWindowSeconds: pulumi.Int(0),
				},
				ScaleUp: &kubernetesingressnginx.AutoscalingBehaviorScalingArgs{
					Policies: kubernetesingressnginx.AutoscalingBehaviorScalingPolicyArray{
						&kubernetesingressnginx.AutoscalingBehaviorScalingPolicyArgs{
							PeriodSeconds: pulumi.Int(0),
							Type:          pulumi.String("string"),
							Value:         pulumi.Int(0),
						},
					},
					StabilizationWindowSeconds: pulumi.Int(0),
				},
			},
			Enabled:                           pulumi.Bool(false),
			MaxReplicas:                       pulumi.Int(0),
			MinReplicas:                       pulumi.Int(0),
			TargetCPUUtilizationPercentage:    pulumi.Int(0),
			TargetMemoryUtilizationPercentage: pulumi.Int(0),
		},
		AutoscalingTemplate: kubernetesingressnginx.AutoscalingTemplateArray{
			&kubernetesingressnginx.AutoscalingTemplateArgs{
				Pods: &kubernetesingressnginx.AutoscalingTemplatePodsArgs{
					Metric: &kubernetesingressnginx.AutoscalingTemplatePodsMetricArgs{
						Name: pulumi.String("string"),
					},
					Target: &kubernetesingressnginx.AutoscalingTemplatePodsTargetArgs{
						AverageValue: pulumi.String("string"),
						Type:         pulumi.String("string"),
					},
				},
				Type: pulumi.String("string"),
			},
		},
		Config: pulumi.StringMap{
			"string": pulumi.String("string"),
		},
		ConfigAnnotations: pulumi.StringMap{
			"string": pulumi.String("string"),
		},
		ConfigMapNamespace: pulumi.String("string"),
		ContainerName:      pulumi.String("string"),
		ContainerPort: &kubernetesingressnginx.ControllerPortArgs{
			Http:  pulumi.Int(0),
			Https: pulumi.Int(0),
		},
		CustomTemplate: &kubernetesingressnginx.ControllerCustomTemplateArgs{
			ConfigMapKey:  pulumi.String("string"),
			ConfigMapName: pulumi.String("string"),
		},
		DnsConfig: pulumi.StringMap{
			"string": pulumi.String("string"),
		},
		DnsPolicy:      pulumi.String("string"),
		ElectionID:     pulumi.String("string"),
		EnableMimalloc: pulumi.Bool(false),
		ExistingPsp:    pulumi.String("string"),
		ExtraArgs: pulumi.StringMap{
			"string": pulumi.String("string"),
		},
		ExtraContainers: corev1.ContainerArray{
			&corev1.ContainerArgs{
				Name: pulumi.String("string"),
				Resources: &corev1.ResourceRequirementsArgs{
					Claims: corev1.ResourceClaimArray{
						&corev1.ResourceClaimArgs{
							Name:    pulumi.String("string"),
							Request: pulumi.String("string"),
						},
					},
					Limits: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
					Requests: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
				},
				Ports: corev1.ContainerPortArray{
					&corev1.ContainerPortArgs{
						ContainerPort: pulumi.Int(0),
						HostIP:        pulumi.String("string"),
						HostPort:      pulumi.Int(0),
						Name:          pulumi.String("string"),
						Protocol:      pulumi.String("string"),
					},
				},
				EnvFrom: corev1.EnvFromSourceArray{
					&corev1.EnvFromSourceArgs{
						ConfigMapRef: &corev1.ConfigMapEnvSourceArgs{
							Name:     pulumi.String("string"),
							Optional: pulumi.Bool(false),
						},
						Prefix: pulumi.String("string"),
						SecretRef: &corev1.SecretEnvSourceArgs{
							Name:     pulumi.String("string"),
							Optional: pulumi.Bool(false),
						},
					},
				},
				Image:           pulumi.String("string"),
				ImagePullPolicy: pulumi.String("string"),
				Lifecycle: &corev1.LifecycleArgs{
					PostStart: &corev1.LifecycleHandlerArgs{
						Exec: &corev1.ExecActionArgs{
							Command: pulumi.StringArray{
								pulumi.String("string"),
							},
						},
						HttpGet: &corev1.HTTPGetActionArgs{
							Port: pulumi.Any(0),
							Host: pulumi.String("string"),
							HttpHeaders: corev1.HTTPHeaderArray{
								&corev1.HTTPHeaderArgs{
									Name:  pulumi.String("string"),
									Value: pulumi.String("string"),
								},
							},
							Path:   pulumi.String("string"),
							Scheme: pulumi.String("string"),
						},
						Sleep: &corev1.SleepActionArgs{
							Seconds: pulumi.Int(0),
						},
						TcpSocket: &corev1.TCPSocketActionArgs{
							Port: pulumi.Any(0),
							Host: pulumi.String("string"),
						},
					},
					PreStop: &corev1.LifecycleHandlerArgs{
						Exec: &corev1.ExecActionArgs{
							Command: pulumi.StringArray{
								pulumi.String("string"),
							},
						},
						HttpGet: &corev1.HTTPGetActionArgs{
							Port: pulumi.Any(0),
							Host: pulumi.String("string"),
							HttpHeaders: corev1.HTTPHeaderArray{
								&corev1.HTTPHeaderArgs{
									Name:  pulumi.String("string"),
									Value: pulumi.String("string"),
								},
							},
							Path:   pulumi.String("string"),
							Scheme: pulumi.String("string"),
						},
						Sleep: &corev1.SleepActionArgs{
							Seconds: pulumi.Int(0),
						},
						TcpSocket: &corev1.TCPSocketActionArgs{
							Port: pulumi.Any(0),
							Host: pulumi.String("string"),
						},
					},
				},
				LivenessProbe: &corev1.ProbeArgs{
					Exec: &corev1.ExecActionArgs{
						Command: pulumi.StringArray{
							pulumi.String("string"),
						},
					},
					FailureThreshold: pulumi.Int(0),
					Grpc: &corev1.GRPCActionArgs{
						Port:    pulumi.Int(0),
						Service: pulumi.String("string"),
					},
					HttpGet: &corev1.HTTPGetActionArgs{
						Port: pulumi.Any(0),
						Host: pulumi.String("string"),
						HttpHeaders: corev1.HTTPHeaderArray{
							&corev1.HTTPHeaderArgs{
								Name:  pulumi.String("string"),
								Value: pulumi.String("string"),
							},
						},
						Path:   pulumi.String("string"),
						Scheme: pulumi.String("string"),
					},
					InitialDelaySeconds: pulumi.Int(0),
					PeriodSeconds:       pulumi.Int(0),
					SuccessThreshold:    pulumi.Int(0),
					TcpSocket: &corev1.TCPSocketActionArgs{
						Port: pulumi.Any(0),
						Host: pulumi.String("string"),
					},
					TerminationGracePeriodSeconds: pulumi.Int(0),
					TimeoutSeconds:                pulumi.Int(0),
				},
				RestartPolicy: pulumi.String("string"),
				Args: pulumi.StringArray{
					pulumi.String("string"),
				},
				ReadinessProbe: &corev1.ProbeArgs{
					Exec: &corev1.ExecActionArgs{
						Command: pulumi.StringArray{
							pulumi.String("string"),
						},
					},
					FailureThreshold: pulumi.Int(0),
					Grpc: &corev1.GRPCActionArgs{
						Port:    pulumi.Int(0),
						Service: pulumi.String("string"),
					},
					HttpGet: &corev1.HTTPGetActionArgs{
						Port: pulumi.Any(0),
						Host: pulumi.String("string"),
						HttpHeaders: corev1.HTTPHeaderArray{
							&corev1.HTTPHeaderArgs{
								Name:  pulumi.String("string"),
								Value: pulumi.String("string"),
							},
						},
						Path:   pulumi.String("string"),
						Scheme: pulumi.String("string"),
					},
					InitialDelaySeconds: pulumi.Int(0),
					PeriodSeconds:       pulumi.Int(0),
					SuccessThreshold:    pulumi.Int(0),
					TcpSocket: &corev1.TCPSocketActionArgs{
						Port: pulumi.Any(0),
						Host: pulumi.String("string"),
					},
					TerminationGracePeriodSeconds: pulumi.Int(0),
					TimeoutSeconds:                pulumi.Int(0),
				},
				Env: corev1.EnvVarArray{
					&corev1.EnvVarArgs{
						Name:  pulumi.String("string"),
						Value: pulumi.String("string"),
						ValueFrom: &corev1.EnvVarSourceArgs{
							ConfigMapKeyRef: &corev1.ConfigMapKeySelectorArgs{
								Key:      pulumi.String("string"),
								Name:     pulumi.String("string"),
								Optional: pulumi.Bool(false),
							},
							FieldRef: &corev1.ObjectFieldSelectorArgs{
								FieldPath:  pulumi.String("string"),
								ApiVersion: pulumi.String("string"),
							},
							ResourceFieldRef: &corev1.ResourceFieldSelectorArgs{
								Resource:      pulumi.String("string"),
								ContainerName: pulumi.String("string"),
								Divisor:       pulumi.String("string"),
							},
							SecretKeyRef: &corev1.SecretKeySelectorArgs{
								Key:      pulumi.String("string"),
								Name:     pulumi.String("string"),
								Optional: pulumi.Bool(false),
							},
						},
					},
				},
				ResizePolicy: corev1.ContainerResizePolicyArray{
					&corev1.ContainerResizePolicyArgs{
						ResourceName:  pulumi.String("string"),
						RestartPolicy: pulumi.String("string"),
					},
				},
				Command: pulumi.StringArray{
					pulumi.String("string"),
				},
				SecurityContext: &corev1.SecurityContextArgs{
					AllowPrivilegeEscalation: pulumi.Bool(false),
					AppArmorProfile: &corev1.AppArmorProfileArgs{
						Type:             pulumi.String("string"),
						LocalhostProfile: pulumi.String("string"),
					},
					Capabilities: &corev1.CapabilitiesArgs{
						Add: pulumi.StringArray{
							pulumi.String("string"),
						},
						Drop: pulumi.StringArray{
							pulumi.String("string"),
						},
					},
					Privileged:             pulumi.Bool(false),
					ProcMount:              pulumi.String("string"),
					ReadOnlyRootFilesystem: pulumi.Bool(false),
					RunAsGroup:             pulumi.Int(0),
					RunAsNonRoot:           pulumi.Bool(false),
					RunAsUser:              pulumi.Int(0),
					SeLinuxOptions: &corev1.SELinuxOptionsArgs{
						Level: pulumi.String("string"),
						Role:  pulumi.String("string"),
						Type:  pulumi.String("string"),
						User:  pulumi.String("string"),
					},
					SeccompProfile: &corev1.SeccompProfileArgs{
						Type:             pulumi.String("string"),
						LocalhostProfile: pulumi.String("string"),
					},
					WindowsOptions: &corev1.WindowsSecurityContextOptionsArgs{
						GmsaCredentialSpec:     pulumi.String("string"),
						GmsaCredentialSpecName: pulumi.String("string"),
						HostProcess:            pulumi.Bool(false),
						RunAsUserName:          pulumi.String("string"),
					},
				},
				StartupProbe: &corev1.ProbeArgs{
					Exec: &corev1.ExecActionArgs{
						Command: pulumi.StringArray{
							pulumi.String("string"),
						},
					},
					FailureThreshold: pulumi.Int(0),
					Grpc: &corev1.GRPCActionArgs{
						Port:    pulumi.Int(0),
						Service: pulumi.String("string"),
					},
					HttpGet: &corev1.HTTPGetActionArgs{
						Port: pulumi.Any(0),
						Host: pulumi.String("string"),
						HttpHeaders: corev1.HTTPHeaderArray{
							&corev1.HTTPHeaderArgs{
								Name:  pulumi.String("string"),
								Value: pulumi.String("string"),
							},
						},
						Path:   pulumi.String("string"),
						Scheme: pulumi.String("string"),
					},
					InitialDelaySeconds: pulumi.Int(0),
					PeriodSeconds:       pulumi.Int(0),
					SuccessThreshold:    pulumi.Int(0),
					TcpSocket: &corev1.TCPSocketActionArgs{
						Port: pulumi.Any(0),
						Host: pulumi.String("string"),
					},
					TerminationGracePeriodSeconds: pulumi.Int(0),
					TimeoutSeconds:                pulumi.Int(0),
				},
				Stdin:                    pulumi.Bool(false),
				StdinOnce:                pulumi.Bool(false),
				TerminationMessagePath:   pulumi.String("string"),
				TerminationMessagePolicy: pulumi.String("string"),
				Tty:                      pulumi.Bool(false),
				VolumeDevices: corev1.VolumeDeviceArray{
					&corev1.VolumeDeviceArgs{
						DevicePath: pulumi.String("string"),
						Name:       pulumi.String("string"),
					},
				},
				VolumeMounts: corev1.VolumeMountArray{
					&corev1.VolumeMountArgs{
						MountPath:         pulumi.String("string"),
						Name:              pulumi.String("string"),
						MountPropagation:  pulumi.String("string"),
						ReadOnly:          pulumi.Bool(false),
						RecursiveReadOnly: pulumi.String("string"),
						SubPath:           pulumi.String("string"),
						SubPathExpr:       pulumi.String("string"),
					},
				},
				WorkingDir: pulumi.String("string"),
			},
		},
		ExtraEnvs: corev1.EnvVarArray{
			&corev1.EnvVarArgs{
				Name:  pulumi.String("string"),
				Value: pulumi.String("string"),
				ValueFrom: &corev1.EnvVarSourceArgs{
					ConfigMapKeyRef: &corev1.ConfigMapKeySelectorArgs{
						Key:      pulumi.String("string"),
						Name:     pulumi.String("string"),
						Optional: pulumi.Bool(false),
					},
					FieldRef: &corev1.ObjectFieldSelectorArgs{
						FieldPath:  pulumi.String("string"),
						ApiVersion: pulumi.String("string"),
					},
					ResourceFieldRef: &corev1.ResourceFieldSelectorArgs{
						Resource:      pulumi.String("string"),
						ContainerName: pulumi.String("string"),
						Divisor:       pulumi.String("string"),
					},
					SecretKeyRef: &corev1.SecretKeySelectorArgs{
						Key:      pulumi.String("string"),
						Name:     pulumi.String("string"),
						Optional: pulumi.Bool(false),
					},
				},
			},
		},
		ExtraInitContainers: corev1.ContainerArray{
			&corev1.ContainerArgs{
				Name: pulumi.String("string"),
				Resources: &corev1.ResourceRequirementsArgs{
					Claims: corev1.ResourceClaimArray{
						&corev1.ResourceClaimArgs{
							Name:    pulumi.String("string"),
							Request: pulumi.String("string"),
						},
					},
					Limits: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
					Requests: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
				},
				Ports: corev1.ContainerPortArray{
					&corev1.ContainerPortArgs{
						ContainerPort: pulumi.Int(0),
						HostIP:        pulumi.String("string"),
						HostPort:      pulumi.Int(0),
						Name:          pulumi.String("string"),
						Protocol:      pulumi.String("string"),
					},
				},
				EnvFrom: corev1.EnvFromSourceArray{
					&corev1.EnvFromSourceArgs{
						ConfigMapRef: &corev1.ConfigMapEnvSourceArgs{
							Name:     pulumi.String("string"),
							Optional: pulumi.Bool(false),
						},
						Prefix: pulumi.String("string"),
						SecretRef: &corev1.SecretEnvSourceArgs{
							Name:     pulumi.String("string"),
							Optional: pulumi.Bool(false),
						},
					},
				},
				Image:           pulumi.String("string"),
				ImagePullPolicy: pulumi.String("string"),
				Lifecycle: &corev1.LifecycleArgs{
					PostStart: &corev1.LifecycleHandlerArgs{
						Exec: &corev1.ExecActionArgs{
							Command: pulumi.StringArray{
								pulumi.String("string"),
							},
						},
						HttpGet: &corev1.HTTPGetActionArgs{
							Port: pulumi.Any(0),
							Host: pulumi.String("string"),
							HttpHeaders: corev1.HTTPHeaderArray{
								&corev1.HTTPHeaderArgs{
									Name:  pulumi.String("string"),
									Value: pulumi.String("string"),
								},
							},
							Path:   pulumi.String("string"),
							Scheme: pulumi.String("string"),
						},
						Sleep: &corev1.SleepActionArgs{
							Seconds: pulumi.Int(0),
						},
						TcpSocket: &corev1.TCPSocketActionArgs{
							Port: pulumi.Any(0),
							Host: pulumi.String("string"),
						},
					},
					PreStop: &corev1.LifecycleHandlerArgs{
						Exec: &corev1.ExecActionArgs{
							Command: pulumi.StringArray{
								pulumi.String("string"),
							},
						},
						HttpGet: &corev1.HTTPGetActionArgs{
							Port: pulumi.Any(0),
							Host: pulumi.String("string"),
							HttpHeaders: corev1.HTTPHeaderArray{
								&corev1.HTTPHeaderArgs{
									Name:  pulumi.String("string"),
									Value: pulumi.String("string"),
								},
							},
							Path:   pulumi.String("string"),
							Scheme: pulumi.String("string"),
						},
						Sleep: &corev1.SleepActionArgs{
							Seconds: pulumi.Int(0),
						},
						TcpSocket: &corev1.TCPSocketActionArgs{
							Port: pulumi.Any(0),
							Host: pulumi.String("string"),
						},
					},
				},
				LivenessProbe: &corev1.ProbeArgs{
					Exec: &corev1.ExecActionArgs{
						Command: pulumi.StringArray{
							pulumi.String("string"),
						},
					},
					FailureThreshold: pulumi.Int(0),
					Grpc: &corev1.GRPCActionArgs{
						Port:    pulumi.Int(0),
						Service: pulumi.String("string"),
					},
					HttpGet: &corev1.HTTPGetActionArgs{
						Port: pulumi.Any(0),
						Host: pulumi.String("string"),
						HttpHeaders: corev1.HTTPHeaderArray{
							&corev1.HTTPHeaderArgs{
								Name:  pulumi.String("string"),
								Value: pulumi.String("string"),
							},
						},
						Path:   pulumi.String("string"),
						Scheme: pulumi.String("string"),
					},
					InitialDelaySeconds: pulumi.Int(0),
					PeriodSeconds:       pulumi.Int(0),
					SuccessThreshold:    pulumi.Int(0),
					TcpSocket: &corev1.TCPSocketActionArgs{
						Port: pulumi.Any(0),
						Host: pulumi.String("string"),
					},
					TerminationGracePeriodSeconds: pulumi.Int(0),
					TimeoutSeconds:                pulumi.Int(0),
				},
				RestartPolicy: pulumi.String("string"),
				Args: pulumi.StringArray{
					pulumi.String("string"),
				},
				ReadinessProbe: &corev1.ProbeArgs{
					Exec: &corev1.ExecActionArgs{
						Command: pulumi.StringArray{
							pulumi.String("string"),
						},
					},
					FailureThreshold: pulumi.Int(0),
					Grpc: &corev1.GRPCActionArgs{
						Port:    pulumi.Int(0),
						Service: pulumi.String("string"),
					},
					HttpGet: &corev1.HTTPGetActionArgs{
						Port: pulumi.Any(0),
						Host: pulumi.String("string"),
						HttpHeaders: corev1.HTTPHeaderArray{
							&corev1.HTTPHeaderArgs{
								Name:  pulumi.String("string"),
								Value: pulumi.String("string"),
							},
						},
						Path:   pulumi.String("string"),
						Scheme: pulumi.String("string"),
					},
					InitialDelaySeconds: pulumi.Int(0),
					PeriodSeconds:       pulumi.Int(0),
					SuccessThreshold:    pulumi.Int(0),
					TcpSocket: &corev1.TCPSocketActionArgs{
						Port: pulumi.Any(0),
						Host: pulumi.String("string"),
					},
					TerminationGracePeriodSeconds: pulumi.Int(0),
					TimeoutSeconds:                pulumi.Int(0),
				},
				Env: corev1.EnvVarArray{
					&corev1.EnvVarArgs{
						Name:  pulumi.String("string"),
						Value: pulumi.String("string"),
						ValueFrom: &corev1.EnvVarSourceArgs{
							ConfigMapKeyRef: &corev1.ConfigMapKeySelectorArgs{
								Key:      pulumi.String("string"),
								Name:     pulumi.String("string"),
								Optional: pulumi.Bool(false),
							},
							FieldRef: &corev1.ObjectFieldSelectorArgs{
								FieldPath:  pulumi.String("string"),
								ApiVersion: pulumi.String("string"),
							},
							ResourceFieldRef: &corev1.ResourceFieldSelectorArgs{
								Resource:      pulumi.String("string"),
								ContainerName: pulumi.String("string"),
								Divisor:       pulumi.String("string"),
							},
							SecretKeyRef: &corev1.SecretKeySelectorArgs{
								Key:      pulumi.String("string"),
								Name:     pulumi.String("string"),
								Optional: pulumi.Bool(false),
							},
						},
					},
				},
				ResizePolicy: corev1.ContainerResizePolicyArray{
					&corev1.ContainerResizePolicyArgs{
						ResourceName:  pulumi.String("string"),
						RestartPolicy: pulumi.String("string"),
					},
				},
				Command: pulumi.StringArray{
					pulumi.String("string"),
				},
				SecurityContext: &corev1.SecurityContextArgs{
					AllowPrivilegeEscalation: pulumi.Bool(false),
					AppArmorProfile: &corev1.AppArmorProfileArgs{
						Type:             pulumi.String("string"),
						LocalhostProfile: pulumi.String("string"),
					},
					Capabilities: &corev1.CapabilitiesArgs{
						Add: pulumi.StringArray{
							pulumi.String("string"),
						},
						Drop: pulumi.StringArray{
							pulumi.String("string"),
						},
					},
					Privileged:             pulumi.Bool(false),
					ProcMount:              pulumi.String("string"),
					ReadOnlyRootFilesystem: pulumi.Bool(false),
					RunAsGroup:             pulumi.Int(0),
					RunAsNonRoot:           pulumi.Bool(false),
					RunAsUser:              pulumi.Int(0),
					SeLinuxOptions: &corev1.SELinuxOptionsArgs{
						Level: pulumi.String("string"),
						Role:  pulumi.String("string"),
						Type:  pulumi.String("string"),
						User:  pulumi.String("string"),
					},
					SeccompProfile: &corev1.SeccompProfileArgs{
						Type:             pulumi.String("string"),
						LocalhostProfile: pulumi.String("string"),
					},
					WindowsOptions: &corev1.WindowsSecurityContextOptionsArgs{
						GmsaCredentialSpec:     pulumi.String("string"),
						GmsaCredentialSpecName: pulumi.String("string"),
						HostProcess:            pulumi.Bool(false),
						RunAsUserName:          pulumi.String("string"),
					},
				},
				StartupProbe: &corev1.ProbeArgs{
					Exec: &corev1.ExecActionArgs{
						Command: pulumi.StringArray{
							pulumi.String("string"),
						},
					},
					FailureThreshold: pulumi.Int(0),
					Grpc: &corev1.GRPCActionArgs{
						Port:    pulumi.Int(0),
						Service: pulumi.String("string"),
					},
					HttpGet: &corev1.HTTPGetActionArgs{
						Port: pulumi.Any(0),
						Host: pulumi.String("string"),
						HttpHeaders: corev1.HTTPHeaderArray{
							&corev1.HTTPHeaderArgs{
								Name:  pulumi.String("string"),
								Value: pulumi.String("string"),
							},
						},
						Path:   pulumi.String("string"),
						Scheme: pulumi.String("string"),
					},
					InitialDelaySeconds: pulumi.Int(0),
					PeriodSeconds:       pulumi.Int(0),
					SuccessThreshold:    pulumi.Int(0),
					TcpSocket: &corev1.TCPSocketActionArgs{
						Port: pulumi.Any(0),
						Host: pulumi.String("string"),
					},
					TerminationGracePeriodSeconds: pulumi.Int(0),
					TimeoutSeconds:                pulumi.Int(0),
				},
				Stdin:                    pulumi.Bool(false),
				StdinOnce:                pulumi.Bool(false),
				TerminationMessagePath:   pulumi.String("string"),
				TerminationMessagePolicy: pulumi.String("string"),
				Tty:                      pulumi.Bool(false),
				VolumeDevices: corev1.VolumeDeviceArray{
					&corev1.VolumeDeviceArgs{
						DevicePath: pulumi.String("string"),
						Name:       pulumi.String("string"),
					},
				},
				VolumeMounts: corev1.VolumeMountArray{
					&corev1.VolumeMountArgs{
						MountPath:         pulumi.String("string"),
						Name:              pulumi.String("string"),
						MountPropagation:  pulumi.String("string"),
						ReadOnly:          pulumi.Bool(false),
						RecursiveReadOnly: pulumi.String("string"),
						SubPath:           pulumi.String("string"),
						SubPathExpr:       pulumi.String("string"),
					},
				},
				WorkingDir: pulumi.String("string"),
			},
		},
		ExtraVolumeMounts: corev1.VolumeMountArray{
			&corev1.VolumeMountArgs{
				MountPath:         pulumi.String("string"),
				Name:              pulumi.String("string"),
				MountPropagation:  pulumi.String("string"),
				ReadOnly:          pulumi.Bool(false),
				RecursiveReadOnly: pulumi.String("string"),
				SubPath:           pulumi.String("string"),
				SubPathExpr:       pulumi.String("string"),
			},
		},
		ExtraVolumes: corev1.VolumeArray{
			&corev1.VolumeArgs{
				Name: pulumi.String("string"),
				GitRepo: &corev1.GitRepoVolumeSourceArgs{
					Repository: pulumi.String("string"),
					Directory:  pulumi.String("string"),
					Revision:   pulumi.String("string"),
				},
				PersistentVolumeClaim: &corev1.PersistentVolumeClaimVolumeSourceArgs{
					ClaimName: pulumi.String("string"),
					ReadOnly:  pulumi.Bool(false),
				},
				Cephfs: &corev1.CephFSVolumeSourceArgs{
					Monitors: pulumi.StringArray{
						pulumi.String("string"),
					},
					Path:       pulumi.String("string"),
					ReadOnly:   pulumi.Bool(false),
					SecretFile: pulumi.String("string"),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
					User: pulumi.String("string"),
				},
				Cinder: &corev1.CinderVolumeSourceArgs{
					VolumeID: pulumi.String("string"),
					FsType:   pulumi.String("string"),
					ReadOnly: pulumi.Bool(false),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
				},
				ConfigMap: &corev1.ConfigMapVolumeSourceArgs{
					DefaultMode: pulumi.Int(0),
					Items: corev1.KeyToPathArray{
						&corev1.KeyToPathArgs{
							Key:  pulumi.String("string"),
							Path: pulumi.String("string"),
							Mode: pulumi.Int(0),
						},
					},
					Name:     pulumi.String("string"),
					Optional: pulumi.Bool(false),
				},
				Csi: &corev1.CSIVolumeSourceArgs{
					Driver: pulumi.String("string"),
					FsType: pulumi.String("string"),
					NodePublishSecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
					ReadOnly: pulumi.Bool(false),
					VolumeAttributes: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
				},
				DownwardAPI: &corev1.DownwardAPIVolumeSourceArgs{
					DefaultMode: pulumi.Int(0),
					Items: corev1.DownwardAPIVolumeFileArray{
						&corev1.DownwardAPIVolumeFileArgs{
							Path: pulumi.String("string"),
							FieldRef: &corev1.ObjectFieldSelectorArgs{
								FieldPath:  pulumi.String("string"),
								ApiVersion: pulumi.String("string"),
							},
							Mode: pulumi.Int(0),
							ResourceFieldRef: &corev1.ResourceFieldSelectorArgs{
								Resource:      pulumi.String("string"),
								ContainerName: pulumi.String("string"),
								Divisor:       pulumi.String("string"),
							},
						},
					},
				},
				EmptyDir: &corev1.EmptyDirVolumeSourceArgs{
					Medium:    pulumi.String("string"),
					SizeLimit: pulumi.String("string"),
				},
				Ephemeral: &corev1.EphemeralVolumeSourceArgs{
					ReadOnly: pulumi.Bool(false),
					VolumeClaimTemplate: &corev1.PersistentVolumeClaimTemplateArgs{
						Spec: &corev1.PersistentVolumeClaimSpecArgs{
							AccessModes: pulumi.StringArray{
								pulumi.String("string"),
							},
							DataSource: &corev1.TypedLocalObjectReferenceArgs{
								Kind:     pulumi.String("string"),
								Name:     pulumi.String("string"),
								ApiGroup: pulumi.String("string"),
							},
							DataSourceRef: &corev1.TypedObjectReferenceArgs{
								Kind:      pulumi.String("string"),
								Name:      pulumi.String("string"),
								ApiGroup:  pulumi.String("string"),
								Namespace: pulumi.String("string"),
							},
							Resources: &corev1.VolumeResourceRequirementsArgs{
								Limits: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
								Requests: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
							},
							Selector: &metav1.LabelSelectorArgs{
								MatchExpressions: metav1.LabelSelectorRequirementArray{
									&metav1.LabelSelectorRequirementArgs{
										Key:      pulumi.String("string"),
										Operator: pulumi.String("string"),
										Values: pulumi.StringArray{
											pulumi.String("string"),
										},
									},
								},
								MatchLabels: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
							},
							StorageClassName:          pulumi.String("string"),
							VolumeAttributesClassName: pulumi.String("string"),
							VolumeMode:                pulumi.String("string"),
							VolumeName:                pulumi.String("string"),
						},
						Metadata: &metav1.ObjectMetaArgs{
							Annotations: pulumi.StringMap{
								"string": pulumi.String("string"),
							},
							ClusterName:                pulumi.String("string"),
							CreationTimestamp:          pulumi.String("string"),
							DeletionGracePeriodSeconds: pulumi.Int(0),
							DeletionTimestamp:          pulumi.String("string"),
							Finalizers: pulumi.StringArray{
								pulumi.String("string"),
							},
							GenerateName: pulumi.String("string"),
							Generation:   pulumi.Int(0),
							Labels: pulumi.StringMap{
								"string": pulumi.String("string"),
							},
							ManagedFields: metav1.ManagedFieldsEntryArray{
								&metav1.ManagedFieldsEntryArgs{
									ApiVersion:  pulumi.String("string"),
									FieldsType:  pulumi.String("string"),
									FieldsV1:    pulumi.Any("{}"),
									Manager:     pulumi.String("string"),
									Operation:   pulumi.String("string"),
									Subresource: pulumi.String("string"),
									Time:        pulumi.String("string"),
								},
							},
							Name:      pulumi.String("string"),
							Namespace: pulumi.String("string"),
							OwnerReferences: metav1.OwnerReferenceArray{
								&metav1.OwnerReferenceArgs{
									ApiVersion:         pulumi.String("string"),
									Kind:               pulumi.String("string"),
									Name:               pulumi.String("string"),
									Uid:                pulumi.String("string"),
									BlockOwnerDeletion: pulumi.Bool(false),
									Controller:         pulumi.Bool(false),
								},
							},
							ResourceVersion: pulumi.String("string"),
							SelfLink:        pulumi.String("string"),
							Uid:             pulumi.String("string"),
						},
					},
				},
				Fc: &corev1.FCVolumeSourceArgs{
					FsType:   pulumi.String("string"),
					Lun:      pulumi.Int(0),
					ReadOnly: pulumi.Bool(false),
					TargetWWNs: pulumi.StringArray{
						pulumi.String("string"),
					},
					Wwids: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
				FlexVolume: &corev1.FlexVolumeSourceArgs{
					Driver: pulumi.String("string"),
					FsType: pulumi.String("string"),
					Options: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
					ReadOnly: pulumi.Bool(false),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
				},
				Flocker: &corev1.FlockerVolumeSourceArgs{
					DatasetName: pulumi.String("string"),
					DatasetUUID: pulumi.String("string"),
				},
				GcePersistentDisk: &corev1.GCEPersistentDiskVolumeSourceArgs{
					PdName:    pulumi.String("string"),
					FsType:    pulumi.String("string"),
					Partition: pulumi.Int(0),
					ReadOnly:  pulumi.Bool(false),
				},
				AwsElasticBlockStore: &corev1.AWSElasticBlockStoreVolumeSourceArgs{
					VolumeID:  pulumi.String("string"),
					FsType:    pulumi.String("string"),
					Partition: pulumi.Int(0),
					ReadOnly:  pulumi.Bool(false),
				},
				AzureFile: &corev1.AzureFileVolumeSourceArgs{
					SecretName: pulumi.String("string"),
					ShareName:  pulumi.String("string"),
					ReadOnly:   pulumi.Bool(false),
				},
				Glusterfs: &corev1.GlusterfsVolumeSourceArgs{
					Endpoints: pulumi.String("string"),
					Path:      pulumi.String("string"),
					ReadOnly:  pulumi.Bool(false),
				},
				PortworxVolume: &corev1.PortworxVolumeSourceArgs{
					VolumeID: pulumi.String("string"),
					FsType:   pulumi.String("string"),
					ReadOnly: pulumi.Bool(false),
				},
				Iscsi: &corev1.ISCSIVolumeSourceArgs{
					Iqn:               pulumi.String("string"),
					Lun:               pulumi.Int(0),
					TargetPortal:      pulumi.String("string"),
					ChapAuthDiscovery: pulumi.Bool(false),
					ChapAuthSession:   pulumi.Bool(false),
					FsType:            pulumi.String("string"),
					InitiatorName:     pulumi.String("string"),
					IscsiInterface:    pulumi.String("string"),
					Portals: pulumi.StringArray{
						pulumi.String("string"),
					},
					ReadOnly: pulumi.Bool(false),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
				},
				AzureDisk: &corev1.AzureDiskVolumeSourceArgs{
					DiskName:    pulumi.String("string"),
					DiskURI:     pulumi.String("string"),
					CachingMode: pulumi.String("string"),
					FsType:      pulumi.String("string"),
					Kind:        pulumi.String("string"),
					ReadOnly:    pulumi.Bool(false),
				},
				Nfs: &corev1.NFSVolumeSourceArgs{
					Path:     pulumi.String("string"),
					Server:   pulumi.String("string"),
					ReadOnly: pulumi.Bool(false),
				},
				HostPath: &corev1.HostPathVolumeSourceArgs{
					Path: pulumi.String("string"),
					Type: pulumi.String("string"),
				},
				PhotonPersistentDisk: &corev1.PhotonPersistentDiskVolumeSourceArgs{
					PdID:   pulumi.String("string"),
					FsType: pulumi.String("string"),
				},
				Image: &corev1.ImageVolumeSourceArgs{
					PullPolicy: pulumi.String("string"),
					Reference:  pulumi.String("string"),
				},
				Projected: &corev1.ProjectedVolumeSourceArgs{
					Sources: corev1.VolumeProjectionArray{
						&corev1.VolumeProjectionArgs{
							ClusterTrustBundle: &corev1.ClusterTrustBundleProjectionArgs{
								Path: pulumi.String("string"),
								LabelSelector: &metav1.LabelSelectorArgs{
									MatchExpressions: metav1.LabelSelectorRequirementArray{
										&metav1.LabelSelectorRequirementArgs{
											Key:      pulumi.String("string"),
											Operator: pulumi.String("string"),
											Values: pulumi.StringArray{
												pulumi.String("string"),
											},
										},
									},
									MatchLabels: pulumi.StringMap{
										"string": pulumi.String("string"),
									},
								},
								Name:       pulumi.String("string"),
								Optional:   pulumi.Bool(false),
								SignerName: pulumi.String("string"),
							},
							ConfigMap: &corev1.ConfigMapProjectionArgs{
								Items: corev1.KeyToPathArray{
									&corev1.KeyToPathArgs{
										Key:  pulumi.String("string"),
										Path: pulumi.String("string"),
										Mode: pulumi.Int(0),
									},
								},
								Name:     pulumi.String("string"),
								Optional: pulumi.Bool(false),
							},
							DownwardAPI: &corev1.DownwardAPIProjectionArgs{
								Items: corev1.DownwardAPIVolumeFileArray{
									&corev1.DownwardAPIVolumeFileArgs{
										Path: pulumi.String("string"),
										FieldRef: &corev1.ObjectFieldSelectorArgs{
											FieldPath:  pulumi.String("string"),
											ApiVersion: pulumi.String("string"),
										},
										Mode: pulumi.Int(0),
										ResourceFieldRef: &corev1.ResourceFieldSelectorArgs{
											Resource:      pulumi.String("string"),
											ContainerName: pulumi.String("string"),
											Divisor:       pulumi.String("string"),
										},
									},
								},
							},
							Secret: &corev1.SecretProjectionArgs{
								Items: corev1.KeyToPathArray{
									&corev1.KeyToPathArgs{
										Key:  pulumi.String("string"),
										Path: pulumi.String("string"),
										Mode: pulumi.Int(0),
									},
								},
								Name:     pulumi.String("string"),
								Optional: pulumi.Bool(false),
							},
							ServiceAccountToken: &corev1.ServiceAccountTokenProjectionArgs{
								Path:              pulumi.String("string"),
								Audience:          pulumi.String("string"),
								ExpirationSeconds: pulumi.Int(0),
							},
						},
					},
					DefaultMode: pulumi.Int(0),
				},
				Quobyte: &corev1.QuobyteVolumeSourceArgs{
					Registry: pulumi.String("string"),
					Volume:   pulumi.String("string"),
					Group:    pulumi.String("string"),
					ReadOnly: pulumi.Bool(false),
					Tenant:   pulumi.String("string"),
					User:     pulumi.String("string"),
				},
				Rbd: &corev1.RBDVolumeSourceArgs{
					Image: pulumi.String("string"),
					Monitors: pulumi.StringArray{
						pulumi.String("string"),
					},
					FsType:   pulumi.String("string"),
					Keyring:  pulumi.String("string"),
					Pool:     pulumi.String("string"),
					ReadOnly: pulumi.Bool(false),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
					User: pulumi.String("string"),
				},
				ScaleIO: &corev1.ScaleIOVolumeSourceArgs{
					Gateway: pulumi.String("string"),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
					System:           pulumi.String("string"),
					FsType:           pulumi.String("string"),
					ProtectionDomain: pulumi.String("string"),
					ReadOnly:         pulumi.Bool(false),
					SslEnabled:       pulumi.Bool(false),
					StorageMode:      pulumi.String("string"),
					StoragePool:      pulumi.String("string"),
					VolumeName:       pulumi.String("string"),
				},
				Secret: &corev1.SecretVolumeSourceArgs{
					DefaultMode: pulumi.Int(0),
					Items: corev1.KeyToPathArray{
						&corev1.KeyToPathArgs{
							Key:  pulumi.String("string"),
							Path: pulumi.String("string"),
							Mode: pulumi.Int(0),
						},
					},
					Optional:   pulumi.Bool(false),
					SecretName: pulumi.String("string"),
				},
				Storageos: &corev1.StorageOSVolumeSourceArgs{
					FsType:   pulumi.String("string"),
					ReadOnly: pulumi.Bool(false),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
					VolumeName:      pulumi.String("string"),
					VolumeNamespace: pulumi.String("string"),
				},
				VsphereVolume: &corev1.VsphereVirtualDiskVolumeSourceArgs{
					VolumePath:        pulumi.String("string"),
					FsType:            pulumi.String("string"),
					StoragePolicyID:   pulumi.String("string"),
					StoragePolicyName: pulumi.String("string"),
				},
			},
		},
		HealthCheckPath: pulumi.String("string"),
		HeathCheckHost:  pulumi.String("string"),
		HostNetwork:     pulumi.Bool(false),
		HostPort: &kubernetesingressnginx.ControllerHostPortArgs{
			Enabled: pulumi.Bool(false),
			Ports: &kubernetesingressnginx.ControllerHostPortPortsArgs{
				Http:  pulumi.Int(0),
				Https: pulumi.Int(0),
			},
		},
		Hostname: pulumi.StringMapMap{
			"string": pulumi.StringMap{
				"string": pulumi.String("string"),
			},
		},
		Image: &kubernetesingressnginx.ControllerImageArgs{
			AllowPrivilegeEscalation: pulumi.Bool(false),
			Digest:                   pulumi.String("string"),
			Image:                    pulumi.String("string"),
			PullPolicy:               pulumi.String("string"),
			ReadOnlyRootFilesystem:   pulumi.Bool(false),
			Registry:                 pulumi.String("string"),
			Repository:               pulumi.String("string"),
			RunAsNonRoot:             pulumi.Bool(false),
			RunAsUser:                pulumi.String("string"),
			Tag:                      pulumi.String("string"),
		},
		IngressClassByName: pulumi.Bool(false),
		IngressClassResource: &kubernetesingressnginx.ControllerIngressClassResourceArgs{
			ControllerValue: pulumi.String("string"),
			Default:         pulumi.Bool(false),
			Enabled:         pulumi.Bool(false),
			Name:            pulumi.String("string"),
			Parameters: pulumi.StringMapMap{
				"string": pulumi.StringMap{
					"string": pulumi.String("string"),
				},
			},
		},
		Keda: &kubernetesingressnginx.KedaArgs{
			ApiVersion: pulumi.String("string"),
			Behavior: &kubernetesingressnginx.AutoscalingBehaviorArgs{
				ScaleDown: &kubernetesingressnginx.AutoscalingBehaviorScalingArgs{
					Policies: kubernetesingressnginx.AutoscalingBehaviorScalingPolicyArray{
						&kubernetesingressnginx.AutoscalingBehaviorScalingPolicyArgs{
							PeriodSeconds: pulumi.Int(0),
							Type:          pulumi.String("string"),
							Value:         pulumi.Int(0),
						},
					},
					StabilizationWindowSeconds: pulumi.Int(0),
				},
				ScaleUp: &kubernetesingressnginx.AutoscalingBehaviorScalingArgs{
					Policies: kubernetesingressnginx.AutoscalingBehaviorScalingPolicyArray{
						&kubernetesingressnginx.AutoscalingBehaviorScalingPolicyArgs{
							PeriodSeconds: pulumi.Int(0),
							Type:          pulumi.String("string"),
							Value:         pulumi.Int(0),
						},
					},
					StabilizationWindowSeconds: pulumi.Int(0),
				},
			},
			CooldownPeriod:                pulumi.Int(0),
			Enabled:                       pulumi.Bool(false),
			MaxReplicas:                   pulumi.Int(0),
			MinReplicas:                   pulumi.Int(0),
			PollingInterval:               pulumi.Int(0),
			RestoreToOriginalReplicaCount: pulumi.Bool(false),
			ScaledObject: &kubernetesingressnginx.KedaScaledObjectArgs{
				Annotations: pulumi.StringMap{
					"string": pulumi.String("string"),
				},
			},
			Triggers: kubernetesingressnginx.KedaTriggerArray{
				&kubernetesingressnginx.KedaTriggerArgs{
					Metadata: pulumi.StringMapMap{
						"string": pulumi.StringMap{
							"string": pulumi.String("string"),
						},
					},
					Type: pulumi.String("string"),
				},
			},
		},
		Kind: pulumi.String("string"),
		Lifecycle: &corev1.LifecycleArgs{
			PostStart: &corev1.LifecycleHandlerArgs{
				Exec: &corev1.ExecActionArgs{
					Command: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
				HttpGet: &corev1.HTTPGetActionArgs{
					Port: pulumi.Any(0),
					Host: pulumi.String("string"),
					HttpHeaders: corev1.HTTPHeaderArray{
						&corev1.HTTPHeaderArgs{
							Name:  pulumi.String("string"),
							Value: pulumi.String("string"),
						},
					},
					Path:   pulumi.String("string"),
					Scheme: pulumi.String("string"),
				},
				Sleep: &corev1.SleepActionArgs{
					Seconds: pulumi.Int(0),
				},
				TcpSocket: &corev1.TCPSocketActionArgs{
					Port: pulumi.Any(0),
					Host: pulumi.String("string"),
				},
			},
			PreStop: &corev1.LifecycleHandlerArgs{
				Exec: &corev1.ExecActionArgs{
					Command: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
				HttpGet: &corev1.HTTPGetActionArgs{
					Port: pulumi.Any(0),
					Host: pulumi.String("string"),
					HttpHeaders: corev1.HTTPHeaderArray{
						&corev1.HTTPHeaderArgs{
							Name:  pulumi.String("string"),
							Value: pulumi.String("string"),
						},
					},
					Path:   pulumi.String("string"),
					Scheme: pulumi.String("string"),
				},
				Sleep: &corev1.SleepActionArgs{
					Seconds: pulumi.Int(0),
				},
				TcpSocket: &corev1.TCPSocketActionArgs{
					Port: pulumi.Any(0),
					Host: pulumi.String("string"),
				},
			},
		},
		LivenessProbe: &corev1.ProbeArgs{
			Exec: &corev1.ExecActionArgs{
				Command: pulumi.StringArray{
					pulumi.String("string"),
				},
			},
			FailureThreshold: pulumi.Int(0),
			Grpc: &corev1.GRPCActionArgs{
				Port:    pulumi.Int(0),
				Service: pulumi.String("string"),
			},
			HttpGet: &corev1.HTTPGetActionArgs{
				Port: pulumi.Any(0),
				Host: pulumi.String("string"),
				HttpHeaders: corev1.HTTPHeaderArray{
					&corev1.HTTPHeaderArgs{
						Name:  pulumi.String("string"),
						Value: pulumi.String("string"),
					},
				},
				Path:   pulumi.String("string"),
				Scheme: pulumi.String("string"),
			},
			InitialDelaySeconds: pulumi.Int(0),
			PeriodSeconds:       pulumi.Int(0),
			SuccessThreshold:    pulumi.Int(0),
			TcpSocket: &corev1.TCPSocketActionArgs{
				Port: pulumi.Any(0),
				Host: pulumi.String("string"),
			},
			TerminationGracePeriodSeconds: pulumi.Int(0),
			TimeoutSeconds:                pulumi.Int(0),
		},
		MaxmindLicenseKey: pulumi.String("string"),
		Metrics: &kubernetesingressnginx.ControllerMetricsArgs{
			Enabled: pulumi.Bool(false),
			Port:    pulumi.Int(0),
			PrometheusRule: &kubernetesingressnginx.ControllerMetricsPrometheusRulesArgs{
				AdditionalLabels: pulumi.StringMap{
					"string": pulumi.String("string"),
				},
				Enabled:   pulumi.Bool(false),
				Namespace: pulumi.String("string"),
				Rules: pulumi.StringMapArray{
					pulumi.StringMap{
						"string": pulumi.String("string"),
					},
				},
			},
			Service: &kubernetesingressnginx.ControllerMetricsServiceArgs{
				Annotations: pulumi.StringMap{
					"string": pulumi.String("string"),
				},
				ClusterIP: pulumi.String("string"),
				ExternalIPs: pulumi.StringArray{
					pulumi.String("string"),
				},
				ExternalTrafficPolicy: pulumi.String("string"),
				LoadBalancerIPs:       pulumi.String("string"),
				LoadBalancerSourceRanges: pulumi.StringArray{
					pulumi.String("string"),
				},
				NodePort:    pulumi.String("string"),
				ServicePort: pulumi.Int(0),
				Type:        pulumi.String("string"),
			},
			ServiceMonitor: &kubernetesingressnginx.ControllerMetricsServiceMonitorArgs{
				AdditionalLabels: pulumi.StringMap{
					"string": pulumi.String("string"),
				},
				Enabled:     pulumi.Bool(false),
				HonorLabels: pulumi.Bool(false),
				JobLabel:    pulumi.String("string"),
				MetricRelabelings: pulumi.StringArray{
					pulumi.String("string"),
				},
				Namespace: pulumi.String("string"),
				NamespaceSelector: pulumi.StringMapMap{
					"string": pulumi.StringMap{
						"string": pulumi.String("string"),
					},
				},
				ScrapeInterval: pulumi.String("string"),
				TargetLabels: pulumi.StringArray{
					pulumi.String("string"),
				},
			},
		},
		MinAvailable:    pulumi.Int(0),
		MinReadySeconds: pulumi.Int(0),
		Name:            pulumi.String("string"),
		NodeSelector: pulumi.StringMap{
			"string": pulumi.String("string"),
		},
		PodAnnotations: pulumi.StringMap{
			"string": pulumi.String("string"),
		},
		PodLabels: pulumi.StringMap{
			"string": pulumi.String("string"),
		},
		PodSecurityContext: &corev1.PodSecurityContextArgs{
			AppArmorProfile: &corev1.AppArmorProfileArgs{
				Type:             pulumi.String("string"),
				LocalhostProfile: pulumi.String("string"),
			},
			FsGroup:             pulumi.Int(0),
			FsGroupChangePolicy: pulumi.String("string"),
			RunAsGroup:          pulumi.Int(0),
			RunAsNonRoot:        pulumi.Bool(false),
			RunAsUser:           pulumi.Int(0),
			SeLinuxChangePolicy: pulumi.String("string"),
			SeLinuxOptions: &corev1.SELinuxOptionsArgs{
				Level: pulumi.String("string"),
				Role:  pulumi.String("string"),
				Type:  pulumi.String("string"),
				User:  pulumi.String("string"),
			},
			SeccompProfile: &corev1.SeccompProfileArgs{
				Type:             pulumi.String("string"),
				LocalhostProfile: pulumi.String("string"),
			},
			SupplementalGroups: pulumi.IntArray{
				pulumi.Int(0),
			},
			SupplementalGroupsPolicy: pulumi.String("string"),
			Sysctls: corev1.SysctlArray{
				&corev1.SysctlArgs{
					Name:  pulumi.String("string"),
					Value: pulumi.String("string"),
				},
			},
			WindowsOptions: &corev1.WindowsSecurityContextOptionsArgs{
				GmsaCredentialSpec:     pulumi.String("string"),
				GmsaCredentialSpecName: pulumi.String("string"),
				HostProcess:            pulumi.Bool(false),
				RunAsUserName:          pulumi.String("string"),
			},
		},
		PriorityClassName: pulumi.String("string"),
		ProxySetHeaders: pulumi.StringMapMap{
			"string": pulumi.StringMap{
				"string": pulumi.String("string"),
			},
		},
		PublishService: &kubernetesingressnginx.ControllerPublishServiceArgs{
			Enabled:      pulumi.Bool(false),
			PathOverride: pulumi.String("string"),
		},
		ReadinessProbe: &corev1.ProbeArgs{
			Exec: &corev1.ExecActionArgs{
				Command: pulumi.StringArray{
					pulumi.String("string"),
				},
			},
			FailureThreshold: pulumi.Int(0),
			Grpc: &corev1.GRPCActionArgs{
				Port:    pulumi.Int(0),
				Service: pulumi.String("string"),
			},
			HttpGet: &corev1.HTTPGetActionArgs{
				Port: pulumi.Any(0),
				Host: pulumi.String("string"),
				HttpHeaders: corev1.HTTPHeaderArray{
					&corev1.HTTPHeaderArgs{
						Name:  pulumi.String("string"),
						Value: pulumi.String("string"),
					},
				},
				Path:   pulumi.String("string"),
				Scheme: pulumi.String("string"),
			},
			InitialDelaySeconds: pulumi.Int(0),
			PeriodSeconds:       pulumi.Int(0),
			SuccessThreshold:    pulumi.Int(0),
			TcpSocket: &corev1.TCPSocketActionArgs{
				Port: pulumi.Any(0),
				Host: pulumi.String("string"),
			},
			TerminationGracePeriodSeconds: pulumi.Int(0),
			TimeoutSeconds:                pulumi.Int(0),
		},
		ReplicaCount:         pulumi.Int(0),
		ReportNodeInternalIp: pulumi.Bool(false),
		Resources: &corev1.ResourceRequirementsArgs{
			Claims: corev1.ResourceClaimArray{
				&corev1.ResourceClaimArgs{
					Name:    pulumi.String("string"),
					Request: pulumi.String("string"),
				},
			},
			Limits: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			Requests: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
		},
		Scope: &kubernetesingressnginx.ControllerScopeArgs{
			Enabled:   pulumi.Bool(false),
			Namespace: pulumi.String("string"),
		},
		Service: &kubernetesingressnginx.ControllerServiceArgs{
			Annotations: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			ClusterIP:   pulumi.String("string"),
			EnableHttp:  pulumi.Bool(false),
			EnableHttps: pulumi.Bool(false),
			Enabled:     pulumi.Bool(false),
			ExternalIPs: pulumi.StringArray{
				pulumi.String("string"),
			},
			ExternalTrafficPolicy: pulumi.String("string"),
			HealthCheckNodePort:   pulumi.Int(0),
			Internal: &kubernetesingressnginx.ControllerServiceInternalArgs{
				Annotations: pulumi.StringMap{
					"string": pulumi.String("string"),
				},
				Enabled:               pulumi.Bool(false),
				ExternalTrafficPolicy: pulumi.String("string"),
				Labels: pulumi.StringMap{
					"string": pulumi.String("string"),
				},
				LoadBalancerIPs: pulumi.String("string"),
				LoadBalancerSourceRanges: pulumi.StringArray{
					pulumi.String("string"),
				},
			},
			Labels: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			LoadBalancerIP:  pulumi.String("string"),
			LoadBalancerIPs: pulumi.String("string"),
			LoadBalancerSourceRanges: pulumi.StringArray{
				pulumi.String("string"),
			},
			NodePorts: &kubernetesingressnginx.ControllerServiceNodePortsArgs{
				Http:  pulumi.String("string"),
				Https: pulumi.String("string"),
				Tcp: pulumi.StringMapMap{
					"string": pulumi.StringMap{
						"string": pulumi.String("string"),
					},
				},
				Udp: pulumi.StringMapMap{
					"string": pulumi.StringMap{
						"string": pulumi.String("string"),
					},
				},
			},
			Ports: &kubernetesingressnginx.ControllerPortArgs{
				Http:  pulumi.Int(0),
				Https: pulumi.Int(0),
			},
			SessionAffinity: pulumi.String("string"),
			TargetPorts: &kubernetesingressnginx.ControllerPortArgs{
				Http:  pulumi.Int(0),
				Https: pulumi.Int(0),
			},
			Type: pulumi.String("string"),
		},
		StartupProbe: &corev1.ProbeArgs{
			Exec: &corev1.ExecActionArgs{
				Command: pulumi.StringArray{
					pulumi.String("string"),
				},
			},
			FailureThreshold: pulumi.Int(0),
			Grpc: &corev1.GRPCActionArgs{
				Port:    pulumi.Int(0),
				Service: pulumi.String("string"),
			},
			HttpGet: &corev1.HTTPGetActionArgs{
				Port: pulumi.Any(0),
				Host: pulumi.String("string"),
				HttpHeaders: corev1.HTTPHeaderArray{
					&corev1.HTTPHeaderArgs{
						Name:  pulumi.String("string"),
						Value: pulumi.String("string"),
					},
				},
				Path:   pulumi.String("string"),
				Scheme: pulumi.String("string"),
			},
			InitialDelaySeconds: pulumi.Int(0),
			PeriodSeconds:       pulumi.Int(0),
			SuccessThreshold:    pulumi.Int(0),
			TcpSocket: &corev1.TCPSocketActionArgs{
				Port: pulumi.Any(0),
				Host: pulumi.String("string"),
			},
			TerminationGracePeriodSeconds: pulumi.Int(0),
			TimeoutSeconds:                pulumi.Int(0),
		},
		Sysctls: pulumi.StringMapMap{
			"string": pulumi.StringMap{
				"string": pulumi.String("string"),
			},
		},
		Tcp: &kubernetesingressnginx.ControllerTcpArgs{
			Annotations: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			ConfigMapNamespace: pulumi.String("string"),
		},
		TerminateGracePeriodSeconds: pulumi.Int(0),
		Tolerations: &corev1.TolerationArgs{
			Effect:            pulumi.String("string"),
			Key:               pulumi.String("string"),
			Operator:          pulumi.String("string"),
			TolerationSeconds: pulumi.Int(0),
			Value:             pulumi.String("string"),
		},
		TopologySpreadConstraints: corev1.TopologySpreadConstraintArray{
			&corev1.TopologySpreadConstraintArgs{
				MaxSkew:           pulumi.Int(0),
				TopologyKey:       pulumi.String("string"),
				WhenUnsatisfiable: pulumi.String("string"),
				LabelSelector: &metav1.LabelSelectorArgs{
					MatchExpressions: metav1.LabelSelectorRequirementArray{
						&metav1.LabelSelectorRequirementArgs{
							Key:      pulumi.String("string"),
							Operator: pulumi.String("string"),
							Values: pulumi.StringArray{
								pulumi.String("string"),
							},
						},
					},
					MatchLabels: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
				},
				MatchLabelKeys: pulumi.StringArray{
					pulumi.String("string"),
				},
				MinDomains:         pulumi.Int(0),
				NodeAffinityPolicy: pulumi.String("string"),
				NodeTaintsPolicy:   pulumi.String("string"),
			},
		},
		Udp: &kubernetesingressnginx.ControllerUdpArgs{
			Annotations: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			ConfigMapNamespace: pulumi.String("string"),
		},
		UpdateStrategy: &kubernetesingressnginx.ControllerUpdateStrategyArgs{
			RollingUpdate: &kubernetesingressnginx.ControllerRollingUpdateArgs{
				MaxUnavailable: pulumi.Int(0),
			},
			Type: pulumi.String("string"),
		},
		WatchIngressWithoutClass: pulumi.Bool(false),
	},
	DefaultBackend: &kubernetesingressnginx.ControllerDefaultBackendArgs{
		Affinity: &corev1.AffinityArgs{
			NodeAffinity: &corev1.NodeAffinityArgs{
				PreferredDuringSchedulingIgnoredDuringExecution: corev1.PreferredSchedulingTermArray{
					&corev1.PreferredSchedulingTermArgs{
						Preference: &corev1.NodeSelectorTermArgs{
							MatchExpressions: corev1.NodeSelectorRequirementArray{
								&corev1.NodeSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
							MatchFields: corev1.NodeSelectorRequirementArray{
								&corev1.NodeSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
						},
						Weight: pulumi.Int(0),
					},
				},
				RequiredDuringSchedulingIgnoredDuringExecution: &corev1.NodeSelectorArgs{
					NodeSelectorTerms: corev1.NodeSelectorTermArray{
						&corev1.NodeSelectorTermArgs{
							MatchExpressions: corev1.NodeSelectorRequirementArray{
								&corev1.NodeSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
							MatchFields: corev1.NodeSelectorRequirementArray{
								&corev1.NodeSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
						},
					},
				},
			},
			PodAffinity: &corev1.PodAffinityArgs{
				PreferredDuringSchedulingIgnoredDuringExecution: corev1.WeightedPodAffinityTermArray{
					&corev1.WeightedPodAffinityTermArgs{
						PodAffinityTerm: &corev1.PodAffinityTermArgs{
							TopologyKey: pulumi.String("string"),
							LabelSelector: &metav1.LabelSelectorArgs{
								MatchExpressions: metav1.LabelSelectorRequirementArray{
									&metav1.LabelSelectorRequirementArgs{
										Key:      pulumi.String("string"),
										Operator: pulumi.String("string"),
										Values: pulumi.StringArray{
											pulumi.String("string"),
										},
									},
								},
								MatchLabels: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
							},
							MatchLabelKeys: pulumi.StringArray{
								pulumi.String("string"),
							},
							MismatchLabelKeys: pulumi.StringArray{
								pulumi.String("string"),
							},
							NamespaceSelector: &metav1.LabelSelectorArgs{
								MatchExpressions: metav1.LabelSelectorRequirementArray{
									&metav1.LabelSelectorRequirementArgs{
										Key:      pulumi.String("string"),
										Operator: pulumi.String("string"),
										Values: pulumi.StringArray{
											pulumi.String("string"),
										},
									},
								},
								MatchLabels: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
							},
							Namespaces: pulumi.StringArray{
								pulumi.String("string"),
							},
						},
						Weight: pulumi.Int(0),
					},
				},
				RequiredDuringSchedulingIgnoredDuringExecution: corev1.PodAffinityTermArray{
					&corev1.PodAffinityTermArgs{
						TopologyKey: pulumi.String("string"),
						LabelSelector: &metav1.LabelSelectorArgs{
							MatchExpressions: metav1.LabelSelectorRequirementArray{
								&metav1.LabelSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
							MatchLabels: pulumi.StringMap{
								"string": pulumi.String("string"),
							},
						},
						MatchLabelKeys: pulumi.StringArray{
							pulumi.String("string"),
						},
						MismatchLabelKeys: pulumi.StringArray{
							pulumi.String("string"),
						},
						NamespaceSelector: &metav1.LabelSelectorArgs{
							MatchExpressions: metav1.LabelSelectorRequirementArray{
								&metav1.LabelSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
							MatchLabels: pulumi.StringMap{
								"string": pulumi.String("string"),
							},
						},
						Namespaces: pulumi.StringArray{
							pulumi.String("string"),
						},
					},
				},
			},
			PodAntiAffinity: &corev1.PodAntiAffinityArgs{
				PreferredDuringSchedulingIgnoredDuringExecution: corev1.WeightedPodAffinityTermArray{
					&corev1.WeightedPodAffinityTermArgs{
						PodAffinityTerm: &corev1.PodAffinityTermArgs{
							TopologyKey: pulumi.String("string"),
							LabelSelector: &metav1.LabelSelectorArgs{
								MatchExpressions: metav1.LabelSelectorRequirementArray{
									&metav1.LabelSelectorRequirementArgs{
										Key:      pulumi.String("string"),
										Operator: pulumi.String("string"),
										Values: pulumi.StringArray{
											pulumi.String("string"),
										},
									},
								},
								MatchLabels: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
							},
							MatchLabelKeys: pulumi.StringArray{
								pulumi.String("string"),
							},
							MismatchLabelKeys: pulumi.StringArray{
								pulumi.String("string"),
							},
							NamespaceSelector: &metav1.LabelSelectorArgs{
								MatchExpressions: metav1.LabelSelectorRequirementArray{
									&metav1.LabelSelectorRequirementArgs{
										Key:      pulumi.String("string"),
										Operator: pulumi.String("string"),
										Values: pulumi.StringArray{
											pulumi.String("string"),
										},
									},
								},
								MatchLabels: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
							},
							Namespaces: pulumi.StringArray{
								pulumi.String("string"),
							},
						},
						Weight: pulumi.Int(0),
					},
				},
				RequiredDuringSchedulingIgnoredDuringExecution: corev1.PodAffinityTermArray{
					&corev1.PodAffinityTermArgs{
						TopologyKey: pulumi.String("string"),
						LabelSelector: &metav1.LabelSelectorArgs{
							MatchExpressions: metav1.LabelSelectorRequirementArray{
								&metav1.LabelSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
							MatchLabels: pulumi.StringMap{
								"string": pulumi.String("string"),
							},
						},
						MatchLabelKeys: pulumi.StringArray{
							pulumi.String("string"),
						},
						MismatchLabelKeys: pulumi.StringArray{
							pulumi.String("string"),
						},
						NamespaceSelector: &metav1.LabelSelectorArgs{
							MatchExpressions: metav1.LabelSelectorRequirementArray{
								&metav1.LabelSelectorRequirementArgs{
									Key:      pulumi.String("string"),
									Operator: pulumi.String("string"),
									Values: pulumi.StringArray{
										pulumi.String("string"),
									},
								},
							},
							MatchLabels: pulumi.StringMap{
								"string": pulumi.String("string"),
							},
						},
						Namespaces: pulumi.StringArray{
							pulumi.String("string"),
						},
					},
				},
			},
		},
		Autoscaling: &kubernetesingressnginx.AutoscalingArgs{
			Annotations: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			ControllerAutoscalingBehavior: &kubernetesingressnginx.AutoscalingBehaviorArgs{
				ScaleDown: &kubernetesingressnginx.AutoscalingBehaviorScalingArgs{
					Policies: kubernetesingressnginx.AutoscalingBehaviorScalingPolicyArray{
						&kubernetesingressnginx.AutoscalingBehaviorScalingPolicyArgs{
							PeriodSeconds: pulumi.Int(0),
							Type:          pulumi.String("string"),
							Value:         pulumi.Int(0),
						},
					},
					StabilizationWindowSeconds: pulumi.Int(0),
				},
				ScaleUp: &kubernetesingressnginx.AutoscalingBehaviorScalingArgs{
					Policies: kubernetesingressnginx.AutoscalingBehaviorScalingPolicyArray{
						&kubernetesingressnginx.AutoscalingBehaviorScalingPolicyArgs{
							PeriodSeconds: pulumi.Int(0),
							Type:          pulumi.String("string"),
							Value:         pulumi.Int(0),
						},
					},
					StabilizationWindowSeconds: pulumi.Int(0),
				},
			},
			Enabled:                           pulumi.Bool(false),
			MaxReplicas:                       pulumi.Int(0),
			MinReplicas:                       pulumi.Int(0),
			TargetCPUUtilizationPercentage:    pulumi.Int(0),
			TargetMemoryUtilizationPercentage: pulumi.Int(0),
		},
		Enabled:     pulumi.Bool(false),
		ExistingPsp: pulumi.String("string"),
		ExtraArgs: pulumi.StringMapMap{
			"string": pulumi.StringMap{
				"string": pulumi.String("string"),
			},
		},
		ExtraEnvs: corev1.EnvVarArray{
			&corev1.EnvVarArgs{
				Name:  pulumi.String("string"),
				Value: pulumi.String("string"),
				ValueFrom: &corev1.EnvVarSourceArgs{
					ConfigMapKeyRef: &corev1.ConfigMapKeySelectorArgs{
						Key:      pulumi.String("string"),
						Name:     pulumi.String("string"),
						Optional: pulumi.Bool(false),
					},
					FieldRef: &corev1.ObjectFieldSelectorArgs{
						FieldPath:  pulumi.String("string"),
						ApiVersion: pulumi.String("string"),
					},
					ResourceFieldRef: &corev1.ResourceFieldSelectorArgs{
						Resource:      pulumi.String("string"),
						ContainerName: pulumi.String("string"),
						Divisor:       pulumi.String("string"),
					},
					SecretKeyRef: &corev1.SecretKeySelectorArgs{
						Key:      pulumi.String("string"),
						Name:     pulumi.String("string"),
						Optional: pulumi.Bool(false),
					},
				},
			},
		},
		ExtraVolumeMounts: corev1.VolumeMountArray{
			&corev1.VolumeMountArgs{
				MountPath:         pulumi.String("string"),
				Name:              pulumi.String("string"),
				MountPropagation:  pulumi.String("string"),
				ReadOnly:          pulumi.Bool(false),
				RecursiveReadOnly: pulumi.String("string"),
				SubPath:           pulumi.String("string"),
				SubPathExpr:       pulumi.String("string"),
			},
		},
		ExtraVolumes: corev1.VolumeArray{
			&corev1.VolumeArgs{
				Name: pulumi.String("string"),
				GitRepo: &corev1.GitRepoVolumeSourceArgs{
					Repository: pulumi.String("string"),
					Directory:  pulumi.String("string"),
					Revision:   pulumi.String("string"),
				},
				PersistentVolumeClaim: &corev1.PersistentVolumeClaimVolumeSourceArgs{
					ClaimName: pulumi.String("string"),
					ReadOnly:  pulumi.Bool(false),
				},
				Cephfs: &corev1.CephFSVolumeSourceArgs{
					Monitors: pulumi.StringArray{
						pulumi.String("string"),
					},
					Path:       pulumi.String("string"),
					ReadOnly:   pulumi.Bool(false),
					SecretFile: pulumi.String("string"),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
					User: pulumi.String("string"),
				},
				Cinder: &corev1.CinderVolumeSourceArgs{
					VolumeID: pulumi.String("string"),
					FsType:   pulumi.String("string"),
					ReadOnly: pulumi.Bool(false),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
				},
				ConfigMap: &corev1.ConfigMapVolumeSourceArgs{
					DefaultMode: pulumi.Int(0),
					Items: corev1.KeyToPathArray{
						&corev1.KeyToPathArgs{
							Key:  pulumi.String("string"),
							Path: pulumi.String("string"),
							Mode: pulumi.Int(0),
						},
					},
					Name:     pulumi.String("string"),
					Optional: pulumi.Bool(false),
				},
				Csi: &corev1.CSIVolumeSourceArgs{
					Driver: pulumi.String("string"),
					FsType: pulumi.String("string"),
					NodePublishSecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
					ReadOnly: pulumi.Bool(false),
					VolumeAttributes: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
				},
				DownwardAPI: &corev1.DownwardAPIVolumeSourceArgs{
					DefaultMode: pulumi.Int(0),
					Items: corev1.DownwardAPIVolumeFileArray{
						&corev1.DownwardAPIVolumeFileArgs{
							Path: pulumi.String("string"),
							FieldRef: &corev1.ObjectFieldSelectorArgs{
								FieldPath:  pulumi.String("string"),
								ApiVersion: pulumi.String("string"),
							},
							Mode: pulumi.Int(0),
							ResourceFieldRef: &corev1.ResourceFieldSelectorArgs{
								Resource:      pulumi.String("string"),
								ContainerName: pulumi.String("string"),
								Divisor:       pulumi.String("string"),
							},
						},
					},
				},
				EmptyDir: &corev1.EmptyDirVolumeSourceArgs{
					Medium:    pulumi.String("string"),
					SizeLimit: pulumi.String("string"),
				},
				Ephemeral: &corev1.EphemeralVolumeSourceArgs{
					ReadOnly: pulumi.Bool(false),
					VolumeClaimTemplate: &corev1.PersistentVolumeClaimTemplateArgs{
						Spec: &corev1.PersistentVolumeClaimSpecArgs{
							AccessModes: pulumi.StringArray{
								pulumi.String("string"),
							},
							DataSource: &corev1.TypedLocalObjectReferenceArgs{
								Kind:     pulumi.String("string"),
								Name:     pulumi.String("string"),
								ApiGroup: pulumi.String("string"),
							},
							DataSourceRef: &corev1.TypedObjectReferenceArgs{
								Kind:      pulumi.String("string"),
								Name:      pulumi.String("string"),
								ApiGroup:  pulumi.String("string"),
								Namespace: pulumi.String("string"),
							},
							Resources: &corev1.VolumeResourceRequirementsArgs{
								Limits: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
								Requests: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
							},
							Selector: &metav1.LabelSelectorArgs{
								MatchExpressions: metav1.LabelSelectorRequirementArray{
									&metav1.LabelSelectorRequirementArgs{
										Key:      pulumi.String("string"),
										Operator: pulumi.String("string"),
										Values: pulumi.StringArray{
											pulumi.String("string"),
										},
									},
								},
								MatchLabels: pulumi.StringMap{
									"string": pulumi.String("string"),
								},
							},
							StorageClassName:          pulumi.String("string"),
							VolumeAttributesClassName: pulumi.String("string"),
							VolumeMode:                pulumi.String("string"),
							VolumeName:                pulumi.String("string"),
						},
						Metadata: &metav1.ObjectMetaArgs{
							Annotations: pulumi.StringMap{
								"string": pulumi.String("string"),
							},
							ClusterName:                pulumi.String("string"),
							CreationTimestamp:          pulumi.String("string"),
							DeletionGracePeriodSeconds: pulumi.Int(0),
							DeletionTimestamp:          pulumi.String("string"),
							Finalizers: pulumi.StringArray{
								pulumi.String("string"),
							},
							GenerateName: pulumi.String("string"),
							Generation:   pulumi.Int(0),
							Labels: pulumi.StringMap{
								"string": pulumi.String("string"),
							},
							ManagedFields: metav1.ManagedFieldsEntryArray{
								&metav1.ManagedFieldsEntryArgs{
									ApiVersion:  pulumi.String("string"),
									FieldsType:  pulumi.String("string"),
									FieldsV1:    pulumi.Any("{}"),
									Manager:     pulumi.String("string"),
									Operation:   pulumi.String("string"),
									Subresource: pulumi.String("string"),
									Time:        pulumi.String("string"),
								},
							},
							Name:      pulumi.String("string"),
							Namespace: pulumi.String("string"),
							OwnerReferences: metav1.OwnerReferenceArray{
								&metav1.OwnerReferenceArgs{
									ApiVersion:         pulumi.String("string"),
									Kind:               pulumi.String("string"),
									Name:               pulumi.String("string"),
									Uid:                pulumi.String("string"),
									BlockOwnerDeletion: pulumi.Bool(false),
									Controller:         pulumi.Bool(false),
								},
							},
							ResourceVersion: pulumi.String("string"),
							SelfLink:        pulumi.String("string"),
							Uid:             pulumi.String("string"),
						},
					},
				},
				Fc: &corev1.FCVolumeSourceArgs{
					FsType:   pulumi.String("string"),
					Lun:      pulumi.Int(0),
					ReadOnly: pulumi.Bool(false),
					TargetWWNs: pulumi.StringArray{
						pulumi.String("string"),
					},
					Wwids: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
				FlexVolume: &corev1.FlexVolumeSourceArgs{
					Driver: pulumi.String("string"),
					FsType: pulumi.String("string"),
					Options: pulumi.StringMap{
						"string": pulumi.String("string"),
					},
					ReadOnly: pulumi.Bool(false),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
				},
				Flocker: &corev1.FlockerVolumeSourceArgs{
					DatasetName: pulumi.String("string"),
					DatasetUUID: pulumi.String("string"),
				},
				GcePersistentDisk: &corev1.GCEPersistentDiskVolumeSourceArgs{
					PdName:    pulumi.String("string"),
					FsType:    pulumi.String("string"),
					Partition: pulumi.Int(0),
					ReadOnly:  pulumi.Bool(false),
				},
				AwsElasticBlockStore: &corev1.AWSElasticBlockStoreVolumeSourceArgs{
					VolumeID:  pulumi.String("string"),
					FsType:    pulumi.String("string"),
					Partition: pulumi.Int(0),
					ReadOnly:  pulumi.Bool(false),
				},
				AzureFile: &corev1.AzureFileVolumeSourceArgs{
					SecretName: pulumi.String("string"),
					ShareName:  pulumi.String("string"),
					ReadOnly:   pulumi.Bool(false),
				},
				Glusterfs: &corev1.GlusterfsVolumeSourceArgs{
					Endpoints: pulumi.String("string"),
					Path:      pulumi.String("string"),
					ReadOnly:  pulumi.Bool(false),
				},
				PortworxVolume: &corev1.PortworxVolumeSourceArgs{
					VolumeID: pulumi.String("string"),
					FsType:   pulumi.String("string"),
					ReadOnly: pulumi.Bool(false),
				},
				Iscsi: &corev1.ISCSIVolumeSourceArgs{
					Iqn:               pulumi.String("string"),
					Lun:               pulumi.Int(0),
					TargetPortal:      pulumi.String("string"),
					ChapAuthDiscovery: pulumi.Bool(false),
					ChapAuthSession:   pulumi.Bool(false),
					FsType:            pulumi.String("string"),
					InitiatorName:     pulumi.String("string"),
					IscsiInterface:    pulumi.String("string"),
					Portals: pulumi.StringArray{
						pulumi.String("string"),
					},
					ReadOnly: pulumi.Bool(false),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
				},
				AzureDisk: &corev1.AzureDiskVolumeSourceArgs{
					DiskName:    pulumi.String("string"),
					DiskURI:     pulumi.String("string"),
					CachingMode: pulumi.String("string"),
					FsType:      pulumi.String("string"),
					Kind:        pulumi.String("string"),
					ReadOnly:    pulumi.Bool(false),
				},
				Nfs: &corev1.NFSVolumeSourceArgs{
					Path:     pulumi.String("string"),
					Server:   pulumi.String("string"),
					ReadOnly: pulumi.Bool(false),
				},
				HostPath: &corev1.HostPathVolumeSourceArgs{
					Path: pulumi.String("string"),
					Type: pulumi.String("string"),
				},
				PhotonPersistentDisk: &corev1.PhotonPersistentDiskVolumeSourceArgs{
					PdID:   pulumi.String("string"),
					FsType: pulumi.String("string"),
				},
				Image: &corev1.ImageVolumeSourceArgs{
					PullPolicy: pulumi.String("string"),
					Reference:  pulumi.String("string"),
				},
				Projected: &corev1.ProjectedVolumeSourceArgs{
					Sources: corev1.VolumeProjectionArray{
						&corev1.VolumeProjectionArgs{
							ClusterTrustBundle: &corev1.ClusterTrustBundleProjectionArgs{
								Path: pulumi.String("string"),
								LabelSelector: &metav1.LabelSelectorArgs{
									MatchExpressions: metav1.LabelSelectorRequirementArray{
										&metav1.LabelSelectorRequirementArgs{
											Key:      pulumi.String("string"),
											Operator: pulumi.String("string"),
											Values: pulumi.StringArray{
												pulumi.String("string"),
											},
										},
									},
									MatchLabels: pulumi.StringMap{
										"string": pulumi.String("string"),
									},
								},
								Name:       pulumi.String("string"),
								Optional:   pulumi.Bool(false),
								SignerName: pulumi.String("string"),
							},
							ConfigMap: &corev1.ConfigMapProjectionArgs{
								Items: corev1.KeyToPathArray{
									&corev1.KeyToPathArgs{
										Key:  pulumi.String("string"),
										Path: pulumi.String("string"),
										Mode: pulumi.Int(0),
									},
								},
								Name:     pulumi.String("string"),
								Optional: pulumi.Bool(false),
							},
							DownwardAPI: &corev1.DownwardAPIProjectionArgs{
								Items: corev1.DownwardAPIVolumeFileArray{
									&corev1.DownwardAPIVolumeFileArgs{
										Path: pulumi.String("string"),
										FieldRef: &corev1.ObjectFieldSelectorArgs{
											FieldPath:  pulumi.String("string"),
											ApiVersion: pulumi.String("string"),
										},
										Mode: pulumi.Int(0),
										ResourceFieldRef: &corev1.ResourceFieldSelectorArgs{
											Resource:      pulumi.String("string"),
											ContainerName: pulumi.String("string"),
											Divisor:       pulumi.String("string"),
										},
									},
								},
							},
							Secret: &corev1.SecretProjectionArgs{
								Items: corev1.KeyToPathArray{
									&corev1.KeyToPathArgs{
										Key:  pulumi.String("string"),
										Path: pulumi.String("string"),
										Mode: pulumi.Int(0),
									},
								},
								Name:     pulumi.String("string"),
								Optional: pulumi.Bool(false),
							},
							ServiceAccountToken: &corev1.ServiceAccountTokenProjectionArgs{
								Path:              pulumi.String("string"),
								Audience:          pulumi.String("string"),
								ExpirationSeconds: pulumi.Int(0),
							},
						},
					},
					DefaultMode: pulumi.Int(0),
				},
				Quobyte: &corev1.QuobyteVolumeSourceArgs{
					Registry: pulumi.String("string"),
					Volume:   pulumi.String("string"),
					Group:    pulumi.String("string"),
					ReadOnly: pulumi.Bool(false),
					Tenant:   pulumi.String("string"),
					User:     pulumi.String("string"),
				},
				Rbd: &corev1.RBDVolumeSourceArgs{
					Image: pulumi.String("string"),
					Monitors: pulumi.StringArray{
						pulumi.String("string"),
					},
					FsType:   pulumi.String("string"),
					Keyring:  pulumi.String("string"),
					Pool:     pulumi.String("string"),
					ReadOnly: pulumi.Bool(false),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
					User: pulumi.String("string"),
				},
				ScaleIO: &corev1.ScaleIOVolumeSourceArgs{
					Gateway: pulumi.String("string"),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
					System:           pulumi.String("string"),
					FsType:           pulumi.String("string"),
					ProtectionDomain: pulumi.String("string"),
					ReadOnly:         pulumi.Bool(false),
					SslEnabled:       pulumi.Bool(false),
					StorageMode:      pulumi.String("string"),
					StoragePool:      pulumi.String("string"),
					VolumeName:       pulumi.String("string"),
				},
				Secret: &corev1.SecretVolumeSourceArgs{
					DefaultMode: pulumi.Int(0),
					Items: corev1.KeyToPathArray{
						&corev1.KeyToPathArgs{
							Key:  pulumi.String("string"),
							Path: pulumi.String("string"),
							Mode: pulumi.Int(0),
						},
					},
					Optional:   pulumi.Bool(false),
					SecretName: pulumi.String("string"),
				},
				Storageos: &corev1.StorageOSVolumeSourceArgs{
					FsType:   pulumi.String("string"),
					ReadOnly: pulumi.Bool(false),
					SecretRef: &corev1.LocalObjectReferenceArgs{
						Name: pulumi.String("string"),
					},
					VolumeName:      pulumi.String("string"),
					VolumeNamespace: pulumi.String("string"),
				},
				VsphereVolume: &corev1.VsphereVirtualDiskVolumeSourceArgs{
					VolumePath:        pulumi.String("string"),
					FsType:            pulumi.String("string"),
					StoragePolicyID:   pulumi.String("string"),
					StoragePolicyName: pulumi.String("string"),
				},
			},
		},
		Image: &kubernetesingressnginx.ControllerImageArgs{
			AllowPrivilegeEscalation: pulumi.Bool(false),
			Digest:                   pulumi.String("string"),
			Image:                    pulumi.String("string"),
			PullPolicy:               pulumi.String("string"),
			ReadOnlyRootFilesystem:   pulumi.Bool(false),
			Registry:                 pulumi.String("string"),
			Repository:               pulumi.String("string"),
			RunAsNonRoot:             pulumi.Bool(false),
			RunAsUser:                pulumi.String("string"),
			Tag:                      pulumi.String("string"),
		},
		LivenessProbe: &corev1.ProbeArgs{
			Exec: &corev1.ExecActionArgs{
				Command: pulumi.StringArray{
					pulumi.String("string"),
				},
			},
			FailureThreshold: pulumi.Int(0),
			Grpc: &corev1.GRPCActionArgs{
				Port:    pulumi.Int(0),
				Service: pulumi.String("string"),
			},
			HttpGet: &corev1.HTTPGetActionArgs{
				Port: pulumi.Any(0),
				Host: pulumi.String("string"),
				HttpHeaders: corev1.HTTPHeaderArray{
					&corev1.HTTPHeaderArgs{
						Name:  pulumi.String("string"),
						Value: pulumi.String("string"),
					},
				},
				Path:   pulumi.String("string"),
				Scheme: pulumi.String("string"),
			},
			InitialDelaySeconds: pulumi.Int(0),
			PeriodSeconds:       pulumi.Int(0),
			SuccessThreshold:    pulumi.Int(0),
			TcpSocket: &corev1.TCPSocketActionArgs{
				Port: pulumi.Any(0),
				Host: pulumi.String("string"),
			},
			TerminationGracePeriodSeconds: pulumi.Int(0),
			TimeoutSeconds:                pulumi.Int(0),
		},
		MinAvailable: pulumi.Int(0),
		Name:         pulumi.String("string"),
		NodeSelector: pulumi.StringMap{
			"string": pulumi.String("string"),
		},
		PodAnnotations: pulumi.StringMap{
			"string": pulumi.String("string"),
		},
		PodLabels: pulumi.StringMap{
			"string": pulumi.String("string"),
		},
		PodSecurityContext: &corev1.PodSecurityContextArgs{
			AppArmorProfile: &corev1.AppArmorProfileArgs{
				Type:             pulumi.String("string"),
				LocalhostProfile: pulumi.String("string"),
			},
			FsGroup:             pulumi.Int(0),
			FsGroupChangePolicy: pulumi.String("string"),
			RunAsGroup:          pulumi.Int(0),
			RunAsNonRoot:        pulumi.Bool(false),
			RunAsUser:           pulumi.Int(0),
			SeLinuxChangePolicy: pulumi.String("string"),
			SeLinuxOptions: &corev1.SELinuxOptionsArgs{
				Level: pulumi.String("string"),
				Role:  pulumi.String("string"),
				Type:  pulumi.String("string"),
				User:  pulumi.String("string"),
			},
			SeccompProfile: &corev1.SeccompProfileArgs{
				Type:             pulumi.String("string"),
				LocalhostProfile: pulumi.String("string"),
			},
			SupplementalGroups: pulumi.IntArray{
				pulumi.Int(0),
			},
			SupplementalGroupsPolicy: pulumi.String("string"),
			Sysctls: corev1.SysctlArray{
				&corev1.SysctlArgs{
					Name:  pulumi.String("string"),
					Value: pulumi.String("string"),
				},
			},
			WindowsOptions: &corev1.WindowsSecurityContextOptionsArgs{
				GmsaCredentialSpec:     pulumi.String("string"),
				GmsaCredentialSpecName: pulumi.String("string"),
				HostProcess:            pulumi.Bool(false),
				RunAsUserName:          pulumi.String("string"),
			},
		},
		Port:              pulumi.Int(0),
		PriorityClassName: pulumi.String("string"),
		ReadinessProbe: &corev1.ProbeArgs{
			Exec: &corev1.ExecActionArgs{
				Command: pulumi.StringArray{
					pulumi.String("string"),
				},
			},
			FailureThreshold: pulumi.Int(0),
			Grpc: &corev1.GRPCActionArgs{
				Port:    pulumi.Int(0),
				Service: pulumi.String("string"),
			},
			HttpGet: &corev1.HTTPGetActionArgs{
				Port: pulumi.Any(0),
				Host: pulumi.String("string"),
				HttpHeaders: corev1.HTTPHeaderArray{
					&corev1.HTTPHeaderArgs{
						Name:  pulumi.String("string"),
						Value: pulumi.String("string"),
					},
				},
				Path:   pulumi.String("string"),
				Scheme: pulumi.String("string"),
			},
			InitialDelaySeconds: pulumi.Int(0),
			PeriodSeconds:       pulumi.Int(0),
			SuccessThreshold:    pulumi.Int(0),
			TcpSocket: &corev1.TCPSocketActionArgs{
				Port: pulumi.Any(0),
				Host: pulumi.String("string"),
			},
			TerminationGracePeriodSeconds: pulumi.Int(0),
			TimeoutSeconds:                pulumi.Int(0),
		},
		ReplicaCount: pulumi.Int(0),
		Resources: &corev1.ResourceRequirementsArgs{
			Claims: corev1.ResourceClaimArray{
				&corev1.ResourceClaimArgs{
					Name:    pulumi.String("string"),
					Request: pulumi.String("string"),
				},
			},
			Limits: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			Requests: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
		},
		Service: &kubernetesingressnginx.ControllerDefaultBackendServiceArgs{
			Annotations: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			ClusterIP: pulumi.String("string"),
			ExternalIPs: pulumi.StringArray{
				pulumi.String("string"),
			},
			LoadBalancerIP: pulumi.String("string"),
			LoadBalancerSourceRanges: pulumi.StringArray{
				pulumi.String("string"),
			},
			ServicePort: pulumi.Int(0),
			Type:        pulumi.String("string"),
		},
		ServiceAccount: &kubernetesingressnginx.ControllerServiceAccountArgs{
			AutomountServiceAccountToken: pulumi.Bool(false),
			Create:                       pulumi.Bool(false),
			Name:                         pulumi.String("string"),
		},
		Tolerations: corev1.TolerationArray{
			&corev1.TolerationArgs{
				Effect:            pulumi.String("string"),
				Key:               pulumi.String("string"),
				Operator:          pulumi.String("string"),
				TolerationSeconds: pulumi.Int(0),
				Value:             pulumi.String("string"),
			},
		},
	},
	DhParam:          pulumi.String("string"),
	FullnameOverride: pulumi.String("string"),
	HelmOptions: &kubernetesingressnginx.ReleaseArgs{
		Atomic:                   pulumi.Bool(false),
		Chart:                    pulumi.String("string"),
		CleanupOnFail:            pulumi.Bool(false),
		CreateNamespace:          pulumi.Bool(false),
		DependencyUpdate:         pulumi.Bool(false),
		Description:              pulumi.String("string"),
		Devel:                    pulumi.Bool(false),
		DisableCRDHooks:          pulumi.Bool(false),
		DisableOpenapiValidation: pulumi.Bool(false),
		DisableWebhooks:          pulumi.Bool(false),
		ForceUpdate:              pulumi.Bool(false),
		Keyring:                  pulumi.String("string"),
		Lint:                     pulumi.Bool(false),
		Manifest: pulumi.Map{
			"string": pulumi.Any("any"),
		},
		MaxHistory:          pulumi.Int(0),
		Name:                pulumi.String("string"),
		Namespace:           pulumi.String("string"),
		Postrender:          pulumi.String("string"),
		RecreatePods:        pulumi.Bool(false),
		RenderSubchartNotes: pulumi.Bool(false),
		Replace:             pulumi.Bool(false),
		RepositoryOpts: &kubernetesingressnginx.RepositoryOptsArgs{
			CaFile:   pulumi.String("string"),
			CertFile: pulumi.String("string"),
			KeyFile:  pulumi.String("string"),
			Password: pulumi.String("string"),
			Repo:     pulumi.String("string"),
			Username: pulumi.String("string"),
		},
		ResetValues: pulumi.Bool(false),
		ResourceNames: pulumi.StringArrayMap{
			"string": pulumi.StringArray{
				pulumi.String("string"),
			},
		},
		ReuseValues: pulumi.Bool(false),
		SkipAwait:   pulumi.Bool(false),
		SkipCrds:    pulumi.Bool(false),
		Timeout:     pulumi.Int(0),
		ValueYamlFiles: pulumi.AssetOrArchiveArray{
			pulumi.NewStringAsset("content"),
		},
		Values: pulumi.Map{
			"string": pulumi.Any("any"),
		},
		Verify:      pulumi.Bool(false),
		Version:     pulumi.String("string"),
		WaitForJobs: pulumi.Bool(false),
	},
	ImagePullSecrets: corev1.LocalObjectReferenceArray{
		&corev1.LocalObjectReferenceArgs{
			Name: pulumi.String("string"),
		},
	},
	NameOverride: pulumi.String("string"),
	PodSecurityPolicy: &kubernetesingressnginx.ControllerPodSecurityPolicyArgs{
		Enabled: pulumi.Bool(false),
	},
	Rbac: &kubernetesingressnginx.ControllerRBACArgs{
		Create: pulumi.Bool(false),
		Scope:  pulumi.Bool(false),
	},
	RevisionHistoryLimit: pulumi.Int(0),
	ServiceAccount: &kubernetesingressnginx.ControllerServiceAccountArgs{
		AutomountServiceAccountToken: pulumi.Bool(false),
		Create:                       pulumi.Bool(false),
		Name:                         pulumi.String("string"),
	},
	Tcp: pulumi.StringMapMap{
		"string": pulumi.StringMap{
			"string": pulumi.String("string"),
		},
	},
	Udp: pulumi.StringMapMap{
		"string": pulumi.StringMap{
			"string": pulumi.String("string"),
		},
	},
})
var ingressControllerResource = new IngressController("ingressControllerResource", IngressControllerArgs.builder()
    .controller(ControllerArgs.builder()
        .addHeaders(Map.of("string", Map.of("string", "string")))
        .admissionWebhooks(ContollerAdmissionWebhooksArgs.builder()
            .annotations(Map.of("string", "string"))
            .certificate("string")
            .createSecretJob(ControllerAdmissionWebhooksCreateSecretJobArgs.builder()
                .resources(ResourceRequirementsArgs.builder()
                    .claims(ResourceClaimArgs.builder()
                        .name("string")
                        .request("string")
                        .build())
                    .limits(Map.of("string", "string"))
                    .requests(Map.of("string", "string"))
                    .build())
                .build())
            .enabled(false)
            .existingPsp("string")
            .failurePolicy("string")
            .key("string")
            .namespaceSelector(Map.of("string", Map.of("string", "string")))
            .objectSelector(Map.of("string", Map.of("string", "string")))
            .patch(ControllerAdmissionWebhooksPatchArgs.builder()
                .enabled(false)
                .image(ControllerImageArgs.builder()
                    .allowPrivilegeEscalation(false)
                    .digest("string")
                    .image("string")
                    .pullPolicy("string")
                    .readOnlyRootFilesystem(false)
                    .registry("string")
                    .repository("string")
                    .runAsNonRoot(false)
                    .runAsUser("string")
                    .tag("string")
                    .build())
                .nodeSelector(Map.of("string", "string"))
                .podAnnotations(Map.of("string", "string"))
                .priorityClassName("string")
                .runAsUser(0)
                .tolerations(TolerationArgs.builder()
                    .effect("string")
                    .key("string")
                    .operator("string")
                    .tolerationSeconds(0)
                    .value("string")
                    .build())
                .build())
            .patchWebhookJob(ControllerAdmissionWebhooksPatchWebhbookJobArgs.builder()
                .resources(ResourceRequirementsArgs.builder()
                    .claims(ResourceClaimArgs.builder()
                        .name("string")
                        .request("string")
                        .build())
                    .limits(Map.of("string", "string"))
                    .requests(Map.of("string", "string"))
                    .build())
                .build())
            .port(0)
            .service(ControllerAdmissionWebhooksServiceArgs.builder()
                .annotations(Map.of("string", "string"))
                .clusterIP("string")
                .externalIPs("string")
                .loadBalancerIPs("string")
                .loadBalancerSourceRanges("string")
                .servicePort(0)
                .type("string")
                .build())
            .timeoutSeconds(0)
            .build())
        .affinity(AffinityArgs.builder()
            .nodeAffinity(NodeAffinityArgs.builder()
                .preferredDuringSchedulingIgnoredDuringExecution(PreferredSchedulingTermArgs.builder()
                    .preference(NodeSelectorTermArgs.builder()
                        .matchExpressions(NodeSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .matchFields(NodeSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .build())
                    .weight(0)
                    .build())
                .requiredDuringSchedulingIgnoredDuringExecution(NodeSelectorArgs.builder()
                    .nodeSelectorTerms(NodeSelectorTermArgs.builder()
                        .matchExpressions(NodeSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .matchFields(NodeSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .build())
                    .build())
                .build())
            .podAffinity(PodAffinityArgs.builder()
                .preferredDuringSchedulingIgnoredDuringExecution(WeightedPodAffinityTermArgs.builder()
                    .podAffinityTerm(PodAffinityTermArgs.builder()
                        .topologyKey("string")
                        .labelSelector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .matchLabelKeys("string")
                        .mismatchLabelKeys("string")
                        .namespaceSelector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .namespaces("string")
                        .build())
                    .weight(0)
                    .build())
                .requiredDuringSchedulingIgnoredDuringExecution(PodAffinityTermArgs.builder()
                    .topologyKey("string")
                    .labelSelector(LabelSelectorArgs.builder()
                        .matchExpressions(LabelSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .matchLabels(Map.of("string", "string"))
                        .build())
                    .matchLabelKeys("string")
                    .mismatchLabelKeys("string")
                    .namespaceSelector(LabelSelectorArgs.builder()
                        .matchExpressions(LabelSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .matchLabels(Map.of("string", "string"))
                        .build())
                    .namespaces("string")
                    .build())
                .build())
            .podAntiAffinity(PodAntiAffinityArgs.builder()
                .preferredDuringSchedulingIgnoredDuringExecution(WeightedPodAffinityTermArgs.builder()
                    .podAffinityTerm(PodAffinityTermArgs.builder()
                        .topologyKey("string")
                        .labelSelector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .matchLabelKeys("string")
                        .mismatchLabelKeys("string")
                        .namespaceSelector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .namespaces("string")
                        .build())
                    .weight(0)
                    .build())
                .requiredDuringSchedulingIgnoredDuringExecution(PodAffinityTermArgs.builder()
                    .topologyKey("string")
                    .labelSelector(LabelSelectorArgs.builder()
                        .matchExpressions(LabelSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .matchLabels(Map.of("string", "string"))
                        .build())
                    .matchLabelKeys("string")
                    .mismatchLabelKeys("string")
                    .namespaceSelector(LabelSelectorArgs.builder()
                        .matchExpressions(LabelSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .matchLabels(Map.of("string", "string"))
                        .build())
                    .namespaces("string")
                    .build())
                .build())
            .build())
        .allowSnippetAnnotations(false)
        .annotations(Map.of("string", "string"))
        .autoscaling(AutoscalingArgs.builder()
            .annotations(Map.of("string", "string"))
            .controllerAutoscalingBehavior(AutoscalingBehaviorArgs.builder()
                .scaleDown(AutoscalingBehaviorScalingArgs.builder()
                    .policies(AutoscalingBehaviorScalingPolicyArgs.builder()
                        .periodSeconds(0)
                        .type("string")
                        .value(0)
                        .build())
                    .stabilizationWindowSeconds(0)
                    .build())
                .scaleUp(AutoscalingBehaviorScalingArgs.builder()
                    .policies(AutoscalingBehaviorScalingPolicyArgs.builder()
                        .periodSeconds(0)
                        .type("string")
                        .value(0)
                        .build())
                    .stabilizationWindowSeconds(0)
                    .build())
                .build())
            .enabled(false)
            .maxReplicas(0)
            .minReplicas(0)
            .targetCPUUtilizationPercentage(0)
            .targetMemoryUtilizationPercentage(0)
            .build())
        .autoscalingTemplate(AutoscalingTemplateArgs.builder()
            .pods(AutoscalingTemplatePodsArgs.builder()
                .metric(AutoscalingTemplatePodsMetricArgs.builder()
                    .name("string")
                    .build())
                .target(AutoscalingTemplatePodsTargetArgs.builder()
                    .averageValue("string")
                    .type("string")
                    .build())
                .build())
            .type("string")
            .build())
        .config(Map.of("string", "string"))
        .configAnnotations(Map.of("string", "string"))
        .configMapNamespace("string")
        .containerName("string")
        .containerPort(ControllerPortArgs.builder()
            .http(0)
            .https(0)
            .build())
        .customTemplate(ControllerCustomTemplateArgs.builder()
            .configMapKey("string")
            .configMapName("string")
            .build())
        .dnsConfig(Map.of("string", "string"))
        .dnsPolicy("string")
        .electionID("string")
        .enableMimalloc(false)
        .existingPsp("string")
        .extraArgs(Map.of("string", "string"))
        .extraContainers(ContainerArgs.builder()
            .name("string")
            .resources(ResourceRequirementsArgs.builder()
                .claims(ResourceClaimArgs.builder()
                    .name("string")
                    .request("string")
                    .build())
                .limits(Map.of("string", "string"))
                .requests(Map.of("string", "string"))
                .build())
            .ports(ContainerPortArgs.builder()
                .containerPort(0)
                .hostIP("string")
                .hostPort(0)
                .name("string")
                .protocol("string")
                .build())
            .envFrom(EnvFromSourceArgs.builder()
                .configMapRef(ConfigMapEnvSourceArgs.builder()
                    .name("string")
                    .optional(false)
                    .build())
                .prefix("string")
                .secretRef(SecretEnvSourceArgs.builder()
                    .name("string")
                    .optional(false)
                    .build())
                .build())
            .image("string")
            .imagePullPolicy("string")
            .lifecycle(LifecycleArgs.builder()
                .postStart(LifecycleHandlerArgs.builder()
                    .exec(ExecActionArgs.builder()
                        .command("string")
                        .build())
                    .httpGet(HTTPGetActionArgs.builder()
                        .port(0)
                        .host("string")
                        .httpHeaders(HTTPHeaderArgs.builder()
                            .name("string")
                            .value("string")
                            .build())
                        .path("string")
                        .scheme("string")
                        .build())
                    .sleep(SleepActionArgs.builder()
                        .seconds(0)
                        .build())
                    .tcpSocket(TCPSocketActionArgs.builder()
                        .port(0)
                        .host("string")
                        .build())
                    .build())
                .preStop(LifecycleHandlerArgs.builder()
                    .exec(ExecActionArgs.builder()
                        .command("string")
                        .build())
                    .httpGet(HTTPGetActionArgs.builder()
                        .port(0)
                        .host("string")
                        .httpHeaders(HTTPHeaderArgs.builder()
                            .name("string")
                            .value("string")
                            .build())
                        .path("string")
                        .scheme("string")
                        .build())
                    .sleep(SleepActionArgs.builder()
                        .seconds(0)
                        .build())
                    .tcpSocket(TCPSocketActionArgs.builder()
                        .port(0)
                        .host("string")
                        .build())
                    .build())
                .build())
            .livenessProbe(ProbeArgs.builder()
                .exec(ExecActionArgs.builder()
                    .command("string")
                    .build())
                .failureThreshold(0)
                .grpc(GRPCActionArgs.builder()
                    .port(0)
                    .service("string")
                    .build())
                .httpGet(HTTPGetActionArgs.builder()
                    .port(0)
                    .host("string")
                    .httpHeaders(HTTPHeaderArgs.builder()
                        .name("string")
                        .value("string")
                        .build())
                    .path("string")
                    .scheme("string")
                    .build())
                .initialDelaySeconds(0)
                .periodSeconds(0)
                .successThreshold(0)
                .tcpSocket(TCPSocketActionArgs.builder()
                    .port(0)
                    .host("string")
                    .build())
                .terminationGracePeriodSeconds(0)
                .timeoutSeconds(0)
                .build())
            .restartPolicy("string")
            .args("string")
            .readinessProbe(ProbeArgs.builder()
                .exec(ExecActionArgs.builder()
                    .command("string")
                    .build())
                .failureThreshold(0)
                .grpc(GRPCActionArgs.builder()
                    .port(0)
                    .service("string")
                    .build())
                .httpGet(HTTPGetActionArgs.builder()
                    .port(0)
                    .host("string")
                    .httpHeaders(HTTPHeaderArgs.builder()
                        .name("string")
                        .value("string")
                        .build())
                    .path("string")
                    .scheme("string")
                    .build())
                .initialDelaySeconds(0)
                .periodSeconds(0)
                .successThreshold(0)
                .tcpSocket(TCPSocketActionArgs.builder()
                    .port(0)
                    .host("string")
                    .build())
                .terminationGracePeriodSeconds(0)
                .timeoutSeconds(0)
                .build())
            .env(EnvVarArgs.builder()
                .name("string")
                .value("string")
                .valueFrom(EnvVarSourceArgs.builder()
                    .configMapKeyRef(ConfigMapKeySelectorArgs.builder()
                        .key("string")
                        .name("string")
                        .optional(false)
                        .build())
                    .fieldRef(ObjectFieldSelectorArgs.builder()
                        .fieldPath("string")
                        .apiVersion("string")
                        .build())
                    .resourceFieldRef(ResourceFieldSelectorArgs.builder()
                        .resource("string")
                        .containerName("string")
                        .divisor("string")
                        .build())
                    .secretKeyRef(SecretKeySelectorArgs.builder()
                        .key("string")
                        .name("string")
                        .optional(false)
                        .build())
                    .build())
                .build())
            .resizePolicy(ContainerResizePolicyArgs.builder()
                .resourceName("string")
                .restartPolicy("string")
                .build())
            .command("string")
            .securityContext(SecurityContextArgs.builder()
                .allowPrivilegeEscalation(false)
                .appArmorProfile(AppArmorProfileArgs.builder()
                    .type("string")
                    .localhostProfile("string")
                    .build())
                .capabilities(CapabilitiesArgs.builder()
                    .add("string")
                    .drop("string")
                    .build())
                .privileged(false)
                .procMount("string")
                .readOnlyRootFilesystem(false)
                .runAsGroup(0)
                .runAsNonRoot(false)
                .runAsUser(0)
                .seLinuxOptions(SELinuxOptionsArgs.builder()
                    .level("string")
                    .role("string")
                    .type("string")
                    .user("string")
                    .build())
                .seccompProfile(SeccompProfileArgs.builder()
                    .type("string")
                    .localhostProfile("string")
                    .build())
                .windowsOptions(WindowsSecurityContextOptionsArgs.builder()
                    .gmsaCredentialSpec("string")
                    .gmsaCredentialSpecName("string")
                    .hostProcess(false)
                    .runAsUserName("string")
                    .build())
                .build())
            .startupProbe(ProbeArgs.builder()
                .exec(ExecActionArgs.builder()
                    .command("string")
                    .build())
                .failureThreshold(0)
                .grpc(GRPCActionArgs.builder()
                    .port(0)
                    .service("string")
                    .build())
                .httpGet(HTTPGetActionArgs.builder()
                    .port(0)
                    .host("string")
                    .httpHeaders(HTTPHeaderArgs.builder()
                        .name("string")
                        .value("string")
                        .build())
                    .path("string")
                    .scheme("string")
                    .build())
                .initialDelaySeconds(0)
                .periodSeconds(0)
                .successThreshold(0)
                .tcpSocket(TCPSocketActionArgs.builder()
                    .port(0)
                    .host("string")
                    .build())
                .terminationGracePeriodSeconds(0)
                .timeoutSeconds(0)
                .build())
            .stdin(false)
            .stdinOnce(false)
            .terminationMessagePath("string")
            .terminationMessagePolicy("string")
            .tty(false)
            .volumeDevices(VolumeDeviceArgs.builder()
                .devicePath("string")
                .name("string")
                .build())
            .volumeMounts(VolumeMountArgs.builder()
                .mountPath("string")
                .name("string")
                .mountPropagation("string")
                .readOnly(false)
                .recursiveReadOnly("string")
                .subPath("string")
                .subPathExpr("string")
                .build())
            .workingDir("string")
            .build())
        .extraEnvs(EnvVarArgs.builder()
            .name("string")
            .value("string")
            .valueFrom(EnvVarSourceArgs.builder()
                .configMapKeyRef(ConfigMapKeySelectorArgs.builder()
                    .key("string")
                    .name("string")
                    .optional(false)
                    .build())
                .fieldRef(ObjectFieldSelectorArgs.builder()
                    .fieldPath("string")
                    .apiVersion("string")
                    .build())
                .resourceFieldRef(ResourceFieldSelectorArgs.builder()
                    .resource("string")
                    .containerName("string")
                    .divisor("string")
                    .build())
                .secretKeyRef(SecretKeySelectorArgs.builder()
                    .key("string")
                    .name("string")
                    .optional(false)
                    .build())
                .build())
            .build())
        .extraInitContainers(ContainerArgs.builder()
            .name("string")
            .resources(ResourceRequirementsArgs.builder()
                .claims(ResourceClaimArgs.builder()
                    .name("string")
                    .request("string")
                    .build())
                .limits(Map.of("string", "string"))
                .requests(Map.of("string", "string"))
                .build())
            .ports(ContainerPortArgs.builder()
                .containerPort(0)
                .hostIP("string")
                .hostPort(0)
                .name("string")
                .protocol("string")
                .build())
            .envFrom(EnvFromSourceArgs.builder()
                .configMapRef(ConfigMapEnvSourceArgs.builder()
                    .name("string")
                    .optional(false)
                    .build())
                .prefix("string")
                .secretRef(SecretEnvSourceArgs.builder()
                    .name("string")
                    .optional(false)
                    .build())
                .build())
            .image("string")
            .imagePullPolicy("string")
            .lifecycle(LifecycleArgs.builder()
                .postStart(LifecycleHandlerArgs.builder()
                    .exec(ExecActionArgs.builder()
                        .command("string")
                        .build())
                    .httpGet(HTTPGetActionArgs.builder()
                        .port(0)
                        .host("string")
                        .httpHeaders(HTTPHeaderArgs.builder()
                            .name("string")
                            .value("string")
                            .build())
                        .path("string")
                        .scheme("string")
                        .build())
                    .sleep(SleepActionArgs.builder()
                        .seconds(0)
                        .build())
                    .tcpSocket(TCPSocketActionArgs.builder()
                        .port(0)
                        .host("string")
                        .build())
                    .build())
                .preStop(LifecycleHandlerArgs.builder()
                    .exec(ExecActionArgs.builder()
                        .command("string")
                        .build())
                    .httpGet(HTTPGetActionArgs.builder()
                        .port(0)
                        .host("string")
                        .httpHeaders(HTTPHeaderArgs.builder()
                            .name("string")
                            .value("string")
                            .build())
                        .path("string")
                        .scheme("string")
                        .build())
                    .sleep(SleepActionArgs.builder()
                        .seconds(0)
                        .build())
                    .tcpSocket(TCPSocketActionArgs.builder()
                        .port(0)
                        .host("string")
                        .build())
                    .build())
                .build())
            .livenessProbe(ProbeArgs.builder()
                .exec(ExecActionArgs.builder()
                    .command("string")
                    .build())
                .failureThreshold(0)
                .grpc(GRPCActionArgs.builder()
                    .port(0)
                    .service("string")
                    .build())
                .httpGet(HTTPGetActionArgs.builder()
                    .port(0)
                    .host("string")
                    .httpHeaders(HTTPHeaderArgs.builder()
                        .name("string")
                        .value("string")
                        .build())
                    .path("string")
                    .scheme("string")
                    .build())
                .initialDelaySeconds(0)
                .periodSeconds(0)
                .successThreshold(0)
                .tcpSocket(TCPSocketActionArgs.builder()
                    .port(0)
                    .host("string")
                    .build())
                .terminationGracePeriodSeconds(0)
                .timeoutSeconds(0)
                .build())
            .restartPolicy("string")
            .args("string")
            .readinessProbe(ProbeArgs.builder()
                .exec(ExecActionArgs.builder()
                    .command("string")
                    .build())
                .failureThreshold(0)
                .grpc(GRPCActionArgs.builder()
                    .port(0)
                    .service("string")
                    .build())
                .httpGet(HTTPGetActionArgs.builder()
                    .port(0)
                    .host("string")
                    .httpHeaders(HTTPHeaderArgs.builder()
                        .name("string")
                        .value("string")
                        .build())
                    .path("string")
                    .scheme("string")
                    .build())
                .initialDelaySeconds(0)
                .periodSeconds(0)
                .successThreshold(0)
                .tcpSocket(TCPSocketActionArgs.builder()
                    .port(0)
                    .host("string")
                    .build())
                .terminationGracePeriodSeconds(0)
                .timeoutSeconds(0)
                .build())
            .env(EnvVarArgs.builder()
                .name("string")
                .value("string")
                .valueFrom(EnvVarSourceArgs.builder()
                    .configMapKeyRef(ConfigMapKeySelectorArgs.builder()
                        .key("string")
                        .name("string")
                        .optional(false)
                        .build())
                    .fieldRef(ObjectFieldSelectorArgs.builder()
                        .fieldPath("string")
                        .apiVersion("string")
                        .build())
                    .resourceFieldRef(ResourceFieldSelectorArgs.builder()
                        .resource("string")
                        .containerName("string")
                        .divisor("string")
                        .build())
                    .secretKeyRef(SecretKeySelectorArgs.builder()
                        .key("string")
                        .name("string")
                        .optional(false)
                        .build())
                    .build())
                .build())
            .resizePolicy(ContainerResizePolicyArgs.builder()
                .resourceName("string")
                .restartPolicy("string")
                .build())
            .command("string")
            .securityContext(SecurityContextArgs.builder()
                .allowPrivilegeEscalation(false)
                .appArmorProfile(AppArmorProfileArgs.builder()
                    .type("string")
                    .localhostProfile("string")
                    .build())
                .capabilities(CapabilitiesArgs.builder()
                    .add("string")
                    .drop("string")
                    .build())
                .privileged(false)
                .procMount("string")
                .readOnlyRootFilesystem(false)
                .runAsGroup(0)
                .runAsNonRoot(false)
                .runAsUser(0)
                .seLinuxOptions(SELinuxOptionsArgs.builder()
                    .level("string")
                    .role("string")
                    .type("string")
                    .user("string")
                    .build())
                .seccompProfile(SeccompProfileArgs.builder()
                    .type("string")
                    .localhostProfile("string")
                    .build())
                .windowsOptions(WindowsSecurityContextOptionsArgs.builder()
                    .gmsaCredentialSpec("string")
                    .gmsaCredentialSpecName("string")
                    .hostProcess(false)
                    .runAsUserName("string")
                    .build())
                .build())
            .startupProbe(ProbeArgs.builder()
                .exec(ExecActionArgs.builder()
                    .command("string")
                    .build())
                .failureThreshold(0)
                .grpc(GRPCActionArgs.builder()
                    .port(0)
                    .service("string")
                    .build())
                .httpGet(HTTPGetActionArgs.builder()
                    .port(0)
                    .host("string")
                    .httpHeaders(HTTPHeaderArgs.builder()
                        .name("string")
                        .value("string")
                        .build())
                    .path("string")
                    .scheme("string")
                    .build())
                .initialDelaySeconds(0)
                .periodSeconds(0)
                .successThreshold(0)
                .tcpSocket(TCPSocketActionArgs.builder()
                    .port(0)
                    .host("string")
                    .build())
                .terminationGracePeriodSeconds(0)
                .timeoutSeconds(0)
                .build())
            .stdin(false)
            .stdinOnce(false)
            .terminationMessagePath("string")
            .terminationMessagePolicy("string")
            .tty(false)
            .volumeDevices(VolumeDeviceArgs.builder()
                .devicePath("string")
                .name("string")
                .build())
            .volumeMounts(VolumeMountArgs.builder()
                .mountPath("string")
                .name("string")
                .mountPropagation("string")
                .readOnly(false)
                .recursiveReadOnly("string")
                .subPath("string")
                .subPathExpr("string")
                .build())
            .workingDir("string")
            .build())
        .extraVolumeMounts(VolumeMountArgs.builder()
            .mountPath("string")
            .name("string")
            .mountPropagation("string")
            .readOnly(false)
            .recursiveReadOnly("string")
            .subPath("string")
            .subPathExpr("string")
            .build())
        .extraVolumes(VolumeArgs.builder()
            .name("string")
            .gitRepo(GitRepoVolumeSourceArgs.builder()
                .repository("string")
                .directory("string")
                .revision("string")
                .build())
            .persistentVolumeClaim(PersistentVolumeClaimVolumeSourceArgs.builder()
                .claimName("string")
                .readOnly(false)
                .build())
            .cephfs(CephFSVolumeSourceArgs.builder()
                .monitors("string")
                .path("string")
                .readOnly(false)
                .secretFile("string")
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .user("string")
                .build())
            .cinder(CinderVolumeSourceArgs.builder()
                .volumeID("string")
                .fsType("string")
                .readOnly(false)
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .build())
            .configMap(ConfigMapVolumeSourceArgs.builder()
                .defaultMode(0)
                .items(KeyToPathArgs.builder()
                    .key("string")
                    .path("string")
                    .mode(0)
                    .build())
                .name("string")
                .optional(false)
                .build())
            .csi(CSIVolumeSourceArgs.builder()
                .driver("string")
                .fsType("string")
                .nodePublishSecretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .readOnly(false)
                .volumeAttributes(Map.of("string", "string"))
                .build())
            .downwardAPI(DownwardAPIVolumeSourceArgs.builder()
                .defaultMode(0)
                .items(DownwardAPIVolumeFileArgs.builder()
                    .path("string")
                    .fieldRef(ObjectFieldSelectorArgs.builder()
                        .fieldPath("string")
                        .apiVersion("string")
                        .build())
                    .mode(0)
                    .resourceFieldRef(ResourceFieldSelectorArgs.builder()
                        .resource("string")
                        .containerName("string")
                        .divisor("string")
                        .build())
                    .build())
                .build())
            .emptyDir(EmptyDirVolumeSourceArgs.builder()
                .medium("string")
                .sizeLimit("string")
                .build())
            .ephemeral(EphemeralVolumeSourceArgs.builder()
                .readOnly(false)
                .volumeClaimTemplate(PersistentVolumeClaimTemplateArgs.builder()
                    .spec(PersistentVolumeClaimSpecArgs.builder()
                        .accessModes("string")
                        .dataSource(TypedLocalObjectReferenceArgs.builder()
                            .kind("string")
                            .name("string")
                            .apiGroup("string")
                            .build())
                        .dataSourceRef(TypedObjectReferenceArgs.builder()
                            .kind("string")
                            .name("string")
                            .apiGroup("string")
                            .namespace("string")
                            .build())
                        .resources(VolumeResourceRequirementsArgs.builder()
                            .limits(Map.of("string", "string"))
                            .requests(Map.of("string", "string"))
                            .build())
                        .selector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .storageClassName("string")
                        .volumeAttributesClassName("string")
                        .volumeMode("string")
                        .volumeName("string")
                        .build())
                    .metadata(ObjectMetaArgs.builder()
                        .annotations(Map.of("string", "string"))
                        .clusterName("string")
                        .creationTimestamp("string")
                        .deletionGracePeriodSeconds(0)
                        .deletionTimestamp("string")
                        .finalizers("string")
                        .generateName("string")
                        .generation(0)
                        .labels(Map.of("string", "string"))
                        .managedFields(ManagedFieldsEntryArgs.builder()
                            .apiVersion("string")
                            .fieldsType("string")
                            .fieldsV1("{}")
                            .manager("string")
                            .operation("string")
                            .subresource("string")
                            .time("string")
                            .build())
                        .name("string")
                        .namespace("string")
                        .ownerReferences(OwnerReferenceArgs.builder()
                            .apiVersion("string")
                            .kind("string")
                            .name("string")
                            .uid("string")
                            .blockOwnerDeletion(false)
                            .controller(false)
                            .build())
                        .resourceVersion("string")
                        .selfLink("string")
                        .uid("string")
                        .build())
                    .build())
                .build())
            .fc(FCVolumeSourceArgs.builder()
                .fsType("string")
                .lun(0)
                .readOnly(false)
                .targetWWNs("string")
                .wwids("string")
                .build())
            .flexVolume(FlexVolumeSourceArgs.builder()
                .driver("string")
                .fsType("string")
                .options(Map.of("string", "string"))
                .readOnly(false)
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .build())
            .flocker(FlockerVolumeSourceArgs.builder()
                .datasetName("string")
                .datasetUUID("string")
                .build())
            .gcePersistentDisk(GCEPersistentDiskVolumeSourceArgs.builder()
                .pdName("string")
                .fsType("string")
                .partition(0)
                .readOnly(false)
                .build())
            .awsElasticBlockStore(AWSElasticBlockStoreVolumeSourceArgs.builder()
                .volumeID("string")
                .fsType("string")
                .partition(0)
                .readOnly(false)
                .build())
            .azureFile(AzureFileVolumeSourceArgs.builder()
                .secretName("string")
                .shareName("string")
                .readOnly(false)
                .build())
            .glusterfs(GlusterfsVolumeSourceArgs.builder()
                .endpoints("string")
                .path("string")
                .readOnly(false)
                .build())
            .portworxVolume(PortworxVolumeSourceArgs.builder()
                .volumeID("string")
                .fsType("string")
                .readOnly(false)
                .build())
            .iscsi(ISCSIVolumeSourceArgs.builder()
                .iqn("string")
                .lun(0)
                .targetPortal("string")
                .chapAuthDiscovery(false)
                .chapAuthSession(false)
                .fsType("string")
                .initiatorName("string")
                .iscsiInterface("string")
                .portals("string")
                .readOnly(false)
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .build())
            .azureDisk(AzureDiskVolumeSourceArgs.builder()
                .diskName("string")
                .diskURI("string")
                .cachingMode("string")
                .fsType("string")
                .kind("string")
                .readOnly(false)
                .build())
            .nfs(NFSVolumeSourceArgs.builder()
                .path("string")
                .server("string")
                .readOnly(false)
                .build())
            .hostPath(HostPathVolumeSourceArgs.builder()
                .path("string")
                .type("string")
                .build())
            .photonPersistentDisk(PhotonPersistentDiskVolumeSourceArgs.builder()
                .pdID("string")
                .fsType("string")
                .build())
            .image(ImageVolumeSourceArgs.builder()
                .pullPolicy("string")
                .reference("string")
                .build())
            .projected(ProjectedVolumeSourceArgs.builder()
                .sources(VolumeProjectionArgs.builder()
                    .clusterTrustBundle(ClusterTrustBundleProjectionArgs.builder()
                        .path("string")
                        .labelSelector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .name("string")
                        .optional(false)
                        .signerName("string")
                        .build())
                    .configMap(ConfigMapProjectionArgs.builder()
                        .items(KeyToPathArgs.builder()
                            .key("string")
                            .path("string")
                            .mode(0)
                            .build())
                        .name("string")
                        .optional(false)
                        .build())
                    .downwardAPI(DownwardAPIProjectionArgs.builder()
                        .items(DownwardAPIVolumeFileArgs.builder()
                            .path("string")
                            .fieldRef(ObjectFieldSelectorArgs.builder()
                                .fieldPath("string")
                                .apiVersion("string")
                                .build())
                            .mode(0)
                            .resourceFieldRef(ResourceFieldSelectorArgs.builder()
                                .resource("string")
                                .containerName("string")
                                .divisor("string")
                                .build())
                            .build())
                        .build())
                    .secret(SecretProjectionArgs.builder()
                        .items(KeyToPathArgs.builder()
                            .key("string")
                            .path("string")
                            .mode(0)
                            .build())
                        .name("string")
                        .optional(false)
                        .build())
                    .serviceAccountToken(ServiceAccountTokenProjectionArgs.builder()
                        .path("string")
                        .audience("string")
                        .expirationSeconds(0)
                        .build())
                    .build())
                .defaultMode(0)
                .build())
            .quobyte(QuobyteVolumeSourceArgs.builder()
                .registry("string")
                .volume("string")
                .group("string")
                .readOnly(false)
                .tenant("string")
                .user("string")
                .build())
            .rbd(RBDVolumeSourceArgs.builder()
                .image("string")
                .monitors("string")
                .fsType("string")
                .keyring("string")
                .pool("string")
                .readOnly(false)
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .user("string")
                .build())
            .scaleIO(ScaleIOVolumeSourceArgs.builder()
                .gateway("string")
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .system("string")
                .fsType("string")
                .protectionDomain("string")
                .readOnly(false)
                .sslEnabled(false)
                .storageMode("string")
                .storagePool("string")
                .volumeName("string")
                .build())
            .secret(SecretVolumeSourceArgs.builder()
                .defaultMode(0)
                .items(KeyToPathArgs.builder()
                    .key("string")
                    .path("string")
                    .mode(0)
                    .build())
                .optional(false)
                .secretName("string")
                .build())
            .storageos(StorageOSVolumeSourceArgs.builder()
                .fsType("string")
                .readOnly(false)
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .volumeName("string")
                .volumeNamespace("string")
                .build())
            .vsphereVolume(VsphereVirtualDiskVolumeSourceArgs.builder()
                .volumePath("string")
                .fsType("string")
                .storagePolicyID("string")
                .storagePolicyName("string")
                .build())
            .build())
        .healthCheckPath("string")
        .heathCheckHost("string")
        .hostNetwork(false)
        .hostPort(ControllerHostPortArgs.builder()
            .enabled(false)
            .ports(ControllerHostPortPortsArgs.builder()
                .http(0)
                .https(0)
                .build())
            .build())
        .hostname(Map.of("string", Map.of("string", "string")))
        .image(ControllerImageArgs.builder()
            .allowPrivilegeEscalation(false)
            .digest("string")
            .image("string")
            .pullPolicy("string")
            .readOnlyRootFilesystem(false)
            .registry("string")
            .repository("string")
            .runAsNonRoot(false)
            .runAsUser("string")
            .tag("string")
            .build())
        .ingressClassByName(false)
        .ingressClassResource(ControllerIngressClassResourceArgs.builder()
            .controllerValue("string")
            .default_(false)
            .enabled(false)
            .name("string")
            .parameters(Map.of("string", Map.of("string", "string")))
            .build())
        .keda(KedaArgs.builder()
            .apiVersion("string")
            .behavior(AutoscalingBehaviorArgs.builder()
                .scaleDown(AutoscalingBehaviorScalingArgs.builder()
                    .policies(AutoscalingBehaviorScalingPolicyArgs.builder()
                        .periodSeconds(0)
                        .type("string")
                        .value(0)
                        .build())
                    .stabilizationWindowSeconds(0)
                    .build())
                .scaleUp(AutoscalingBehaviorScalingArgs.builder()
                    .policies(AutoscalingBehaviorScalingPolicyArgs.builder()
                        .periodSeconds(0)
                        .type("string")
                        .value(0)
                        .build())
                    .stabilizationWindowSeconds(0)
                    .build())
                .build())
            .cooldownPeriod(0)
            .enabled(false)
            .maxReplicas(0)
            .minReplicas(0)
            .pollingInterval(0)
            .restoreToOriginalReplicaCount(false)
            .scaledObject(KedaScaledObjectArgs.builder()
                .annotations(Map.of("string", "string"))
                .build())
            .triggers(KedaTriggerArgs.builder()
                .metadata(Map.of("string", Map.of("string", "string")))
                .type("string")
                .build())
            .build())
        .kind("string")
        .lifecycle(LifecycleArgs.builder()
            .postStart(LifecycleHandlerArgs.builder()
                .exec(ExecActionArgs.builder()
                    .command("string")
                    .build())
                .httpGet(HTTPGetActionArgs.builder()
                    .port(0)
                    .host("string")
                    .httpHeaders(HTTPHeaderArgs.builder()
                        .name("string")
                        .value("string")
                        .build())
                    .path("string")
                    .scheme("string")
                    .build())
                .sleep(SleepActionArgs.builder()
                    .seconds(0)
                    .build())
                .tcpSocket(TCPSocketActionArgs.builder()
                    .port(0)
                    .host("string")
                    .build())
                .build())
            .preStop(LifecycleHandlerArgs.builder()
                .exec(ExecActionArgs.builder()
                    .command("string")
                    .build())
                .httpGet(HTTPGetActionArgs.builder()
                    .port(0)
                    .host("string")
                    .httpHeaders(HTTPHeaderArgs.builder()
                        .name("string")
                        .value("string")
                        .build())
                    .path("string")
                    .scheme("string")
                    .build())
                .sleep(SleepActionArgs.builder()
                    .seconds(0)
                    .build())
                .tcpSocket(TCPSocketActionArgs.builder()
                    .port(0)
                    .host("string")
                    .build())
                .build())
            .build())
        .livenessProbe(ProbeArgs.builder()
            .exec(ExecActionArgs.builder()
                .command("string")
                .build())
            .failureThreshold(0)
            .grpc(GRPCActionArgs.builder()
                .port(0)
                .service("string")
                .build())
            .httpGet(HTTPGetActionArgs.builder()
                .port(0)
                .host("string")
                .httpHeaders(HTTPHeaderArgs.builder()
                    .name("string")
                    .value("string")
                    .build())
                .path("string")
                .scheme("string")
                .build())
            .initialDelaySeconds(0)
            .periodSeconds(0)
            .successThreshold(0)
            .tcpSocket(TCPSocketActionArgs.builder()
                .port(0)
                .host("string")
                .build())
            .terminationGracePeriodSeconds(0)
            .timeoutSeconds(0)
            .build())
        .maxmindLicenseKey("string")
        .metrics(ControllerMetricsArgs.builder()
            .enabled(false)
            .port(0)
            .prometheusRule(ControllerMetricsPrometheusRulesArgs.builder()
                .additionalLabels(Map.of("string", "string"))
                .enabled(false)
                .namespace("string")
                .rules(Map.of("string", "string"))
                .build())
            .service(ControllerMetricsServiceArgs.builder()
                .annotations(Map.of("string", "string"))
                .clusterIP("string")
                .externalIPs("string")
                .externalTrafficPolicy("string")
                .loadBalancerIPs("string")
                .loadBalancerSourceRanges("string")
                .nodePort("string")
                .servicePort(0)
                .type("string")
                .build())
            .serviceMonitor(ControllerMetricsServiceMonitorArgs.builder()
                .additionalLabels(Map.of("string", "string"))
                .enabled(false)
                .honorLabels(false)
                .jobLabel("string")
                .metricRelabelings("string")
                .namespace("string")
                .namespaceSelector(Map.of("string", Map.of("string", "string")))
                .scrapeInterval("string")
                .targetLabels("string")
                .build())
            .build())
        .minAvailable(0)
        .minReadySeconds(0)
        .name("string")
        .nodeSelector(Map.of("string", "string"))
        .podAnnotations(Map.of("string", "string"))
        .podLabels(Map.of("string", "string"))
        .podSecurityContext(PodSecurityContextArgs.builder()
            .appArmorProfile(AppArmorProfileArgs.builder()
                .type("string")
                .localhostProfile("string")
                .build())
            .fsGroup(0)
            .fsGroupChangePolicy("string")
            .runAsGroup(0)
            .runAsNonRoot(false)
            .runAsUser(0)
            .seLinuxChangePolicy("string")
            .seLinuxOptions(SELinuxOptionsArgs.builder()
                .level("string")
                .role("string")
                .type("string")
                .user("string")
                .build())
            .seccompProfile(SeccompProfileArgs.builder()
                .type("string")
                .localhostProfile("string")
                .build())
            .supplementalGroups(0)
            .supplementalGroupsPolicy("string")
            .sysctls(SysctlArgs.builder()
                .name("string")
                .value("string")
                .build())
            .windowsOptions(WindowsSecurityContextOptionsArgs.builder()
                .gmsaCredentialSpec("string")
                .gmsaCredentialSpecName("string")
                .hostProcess(false)
                .runAsUserName("string")
                .build())
            .build())
        .priorityClassName("string")
        .proxySetHeaders(Map.of("string", Map.of("string", "string")))
        .publishService(ControllerPublishServiceArgs.builder()
            .enabled(false)
            .pathOverride("string")
            .build())
        .readinessProbe(ProbeArgs.builder()
            .exec(ExecActionArgs.builder()
                .command("string")
                .build())
            .failureThreshold(0)
            .grpc(GRPCActionArgs.builder()
                .port(0)
                .service("string")
                .build())
            .httpGet(HTTPGetActionArgs.builder()
                .port(0)
                .host("string")
                .httpHeaders(HTTPHeaderArgs.builder()
                    .name("string")
                    .value("string")
                    .build())
                .path("string")
                .scheme("string")
                .build())
            .initialDelaySeconds(0)
            .periodSeconds(0)
            .successThreshold(0)
            .tcpSocket(TCPSocketActionArgs.builder()
                .port(0)
                .host("string")
                .build())
            .terminationGracePeriodSeconds(0)
            .timeoutSeconds(0)
            .build())
        .replicaCount(0)
        .reportNodeInternalIp(false)
        .resources(ResourceRequirementsArgs.builder()
            .claims(ResourceClaimArgs.builder()
                .name("string")
                .request("string")
                .build())
            .limits(Map.of("string", "string"))
            .requests(Map.of("string", "string"))
            .build())
        .scope(ControllerScopeArgs.builder()
            .enabled(false)
            .namespace("string")
            .build())
        .service(ControllerServiceArgs.builder()
            .annotations(Map.of("string", "string"))
            .clusterIP("string")
            .enableHttp(false)
            .enableHttps(false)
            .enabled(false)
            .externalIPs("string")
            .externalTrafficPolicy("string")
            .healthCheckNodePort(0)
            .internal(ControllerServiceInternalArgs.builder()
                .annotations(Map.of("string", "string"))
                .enabled(false)
                .externalTrafficPolicy("string")
                .labels(Map.of("string", "string"))
                .loadBalancerIPs("string")
                .loadBalancerSourceRanges("string")
                .build())
            .labels(Map.of("string", "string"))
            .loadBalancerIP("string")
            .loadBalancerIPs("string")
            .loadBalancerSourceRanges("string")
            .nodePorts(ControllerServiceNodePortsArgs.builder()
                .http("string")
                .https("string")
                .tcp(Map.of("string", Map.of("string", "string")))
                .udp(Map.of("string", Map.of("string", "string")))
                .build())
            .ports(ControllerPortArgs.builder()
                .http(0)
                .https(0)
                .build())
            .sessionAffinity("string")
            .targetPorts(ControllerPortArgs.builder()
                .http(0)
                .https(0)
                .build())
            .type("string")
            .build())
        .startupProbe(ProbeArgs.builder()
            .exec(ExecActionArgs.builder()
                .command("string")
                .build())
            .failureThreshold(0)
            .grpc(GRPCActionArgs.builder()
                .port(0)
                .service("string")
                .build())
            .httpGet(HTTPGetActionArgs.builder()
                .port(0)
                .host("string")
                .httpHeaders(HTTPHeaderArgs.builder()
                    .name("string")
                    .value("string")
                    .build())
                .path("string")
                .scheme("string")
                .build())
            .initialDelaySeconds(0)
            .periodSeconds(0)
            .successThreshold(0)
            .tcpSocket(TCPSocketActionArgs.builder()
                .port(0)
                .host("string")
                .build())
            .terminationGracePeriodSeconds(0)
            .timeoutSeconds(0)
            .build())
        .sysctls(Map.of("string", Map.of("string", "string")))
        .tcp(ControllerTcpArgs.builder()
            .annotations(Map.of("string", "string"))
            .configMapNamespace("string")
            .build())
        .terminateGracePeriodSeconds(0)
        .tolerations(TolerationArgs.builder()
            .effect("string")
            .key("string")
            .operator("string")
            .tolerationSeconds(0)
            .value("string")
            .build())
        .topologySpreadConstraints(TopologySpreadConstraintArgs.builder()
            .maxSkew(0)
            .topologyKey("string")
            .whenUnsatisfiable("string")
            .labelSelector(LabelSelectorArgs.builder()
                .matchExpressions(LabelSelectorRequirementArgs.builder()
                    .key("string")
                    .operator("string")
                    .values("string")
                    .build())
                .matchLabels(Map.of("string", "string"))
                .build())
            .matchLabelKeys("string")
            .minDomains(0)
            .nodeAffinityPolicy("string")
            .nodeTaintsPolicy("string")
            .build())
        .udp(ControllerUdpArgs.builder()
            .annotations(Map.of("string", "string"))
            .configMapNamespace("string")
            .build())
        .updateStrategy(ControllerUpdateStrategyArgs.builder()
            .rollingUpdate(ControllerRollingUpdateArgs.builder()
                .maxUnavailable(0)
                .build())
            .type("string")
            .build())
        .watchIngressWithoutClass(false)
        .build())
    .defaultBackend(ControllerDefaultBackendArgs.builder()
        .affinity(AffinityArgs.builder()
            .nodeAffinity(NodeAffinityArgs.builder()
                .preferredDuringSchedulingIgnoredDuringExecution(PreferredSchedulingTermArgs.builder()
                    .preference(NodeSelectorTermArgs.builder()
                        .matchExpressions(NodeSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .matchFields(NodeSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .build())
                    .weight(0)
                    .build())
                .requiredDuringSchedulingIgnoredDuringExecution(NodeSelectorArgs.builder()
                    .nodeSelectorTerms(NodeSelectorTermArgs.builder()
                        .matchExpressions(NodeSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .matchFields(NodeSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .build())
                    .build())
                .build())
            .podAffinity(PodAffinityArgs.builder()
                .preferredDuringSchedulingIgnoredDuringExecution(WeightedPodAffinityTermArgs.builder()
                    .podAffinityTerm(PodAffinityTermArgs.builder()
                        .topologyKey("string")
                        .labelSelector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .matchLabelKeys("string")
                        .mismatchLabelKeys("string")
                        .namespaceSelector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .namespaces("string")
                        .build())
                    .weight(0)
                    .build())
                .requiredDuringSchedulingIgnoredDuringExecution(PodAffinityTermArgs.builder()
                    .topologyKey("string")
                    .labelSelector(LabelSelectorArgs.builder()
                        .matchExpressions(LabelSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .matchLabels(Map.of("string", "string"))
                        .build())
                    .matchLabelKeys("string")
                    .mismatchLabelKeys("string")
                    .namespaceSelector(LabelSelectorArgs.builder()
                        .matchExpressions(LabelSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .matchLabels(Map.of("string", "string"))
                        .build())
                    .namespaces("string")
                    .build())
                .build())
            .podAntiAffinity(PodAntiAffinityArgs.builder()
                .preferredDuringSchedulingIgnoredDuringExecution(WeightedPodAffinityTermArgs.builder()
                    .podAffinityTerm(PodAffinityTermArgs.builder()
                        .topologyKey("string")
                        .labelSelector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .matchLabelKeys("string")
                        .mismatchLabelKeys("string")
                        .namespaceSelector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .namespaces("string")
                        .build())
                    .weight(0)
                    .build())
                .requiredDuringSchedulingIgnoredDuringExecution(PodAffinityTermArgs.builder()
                    .topologyKey("string")
                    .labelSelector(LabelSelectorArgs.builder()
                        .matchExpressions(LabelSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .matchLabels(Map.of("string", "string"))
                        .build())
                    .matchLabelKeys("string")
                    .mismatchLabelKeys("string")
                    .namespaceSelector(LabelSelectorArgs.builder()
                        .matchExpressions(LabelSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .matchLabels(Map.of("string", "string"))
                        .build())
                    .namespaces("string")
                    .build())
                .build())
            .build())
        .autoscaling(AutoscalingArgs.builder()
            .annotations(Map.of("string", "string"))
            .controllerAutoscalingBehavior(AutoscalingBehaviorArgs.builder()
                .scaleDown(AutoscalingBehaviorScalingArgs.builder()
                    .policies(AutoscalingBehaviorScalingPolicyArgs.builder()
                        .periodSeconds(0)
                        .type("string")
                        .value(0)
                        .build())
                    .stabilizationWindowSeconds(0)
                    .build())
                .scaleUp(AutoscalingBehaviorScalingArgs.builder()
                    .policies(AutoscalingBehaviorScalingPolicyArgs.builder()
                        .periodSeconds(0)
                        .type("string")
                        .value(0)
                        .build())
                    .stabilizationWindowSeconds(0)
                    .build())
                .build())
            .enabled(false)
            .maxReplicas(0)
            .minReplicas(0)
            .targetCPUUtilizationPercentage(0)
            .targetMemoryUtilizationPercentage(0)
            .build())
        .enabled(false)
        .existingPsp("string")
        .extraArgs(Map.of("string", Map.of("string", "string")))
        .extraEnvs(EnvVarArgs.builder()
            .name("string")
            .value("string")
            .valueFrom(EnvVarSourceArgs.builder()
                .configMapKeyRef(ConfigMapKeySelectorArgs.builder()
                    .key("string")
                    .name("string")
                    .optional(false)
                    .build())
                .fieldRef(ObjectFieldSelectorArgs.builder()
                    .fieldPath("string")
                    .apiVersion("string")
                    .build())
                .resourceFieldRef(ResourceFieldSelectorArgs.builder()
                    .resource("string")
                    .containerName("string")
                    .divisor("string")
                    .build())
                .secretKeyRef(SecretKeySelectorArgs.builder()
                    .key("string")
                    .name("string")
                    .optional(false)
                    .build())
                .build())
            .build())
        .extraVolumeMounts(VolumeMountArgs.builder()
            .mountPath("string")
            .name("string")
            .mountPropagation("string")
            .readOnly(false)
            .recursiveReadOnly("string")
            .subPath("string")
            .subPathExpr("string")
            .build())
        .extraVolumes(VolumeArgs.builder()
            .name("string")
            .gitRepo(GitRepoVolumeSourceArgs.builder()
                .repository("string")
                .directory("string")
                .revision("string")
                .build())
            .persistentVolumeClaim(PersistentVolumeClaimVolumeSourceArgs.builder()
                .claimName("string")
                .readOnly(false)
                .build())
            .cephfs(CephFSVolumeSourceArgs.builder()
                .monitors("string")
                .path("string")
                .readOnly(false)
                .secretFile("string")
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .user("string")
                .build())
            .cinder(CinderVolumeSourceArgs.builder()
                .volumeID("string")
                .fsType("string")
                .readOnly(false)
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .build())
            .configMap(ConfigMapVolumeSourceArgs.builder()
                .defaultMode(0)
                .items(KeyToPathArgs.builder()
                    .key("string")
                    .path("string")
                    .mode(0)
                    .build())
                .name("string")
                .optional(false)
                .build())
            .csi(CSIVolumeSourceArgs.builder()
                .driver("string")
                .fsType("string")
                .nodePublishSecretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .readOnly(false)
                .volumeAttributes(Map.of("string", "string"))
                .build())
            .downwardAPI(DownwardAPIVolumeSourceArgs.builder()
                .defaultMode(0)
                .items(DownwardAPIVolumeFileArgs.builder()
                    .path("string")
                    .fieldRef(ObjectFieldSelectorArgs.builder()
                        .fieldPath("string")
                        .apiVersion("string")
                        .build())
                    .mode(0)
                    .resourceFieldRef(ResourceFieldSelectorArgs.builder()
                        .resource("string")
                        .containerName("string")
                        .divisor("string")
                        .build())
                    .build())
                .build())
            .emptyDir(EmptyDirVolumeSourceArgs.builder()
                .medium("string")
                .sizeLimit("string")
                .build())
            .ephemeral(EphemeralVolumeSourceArgs.builder()
                .readOnly(false)
                .volumeClaimTemplate(PersistentVolumeClaimTemplateArgs.builder()
                    .spec(PersistentVolumeClaimSpecArgs.builder()
                        .accessModes("string")
                        .dataSource(TypedLocalObjectReferenceArgs.builder()
                            .kind("string")
                            .name("string")
                            .apiGroup("string")
                            .build())
                        .dataSourceRef(TypedObjectReferenceArgs.builder()
                            .kind("string")
                            .name("string")
                            .apiGroup("string")
                            .namespace("string")
                            .build())
                        .resources(VolumeResourceRequirementsArgs.builder()
                            .limits(Map.of("string", "string"))
                            .requests(Map.of("string", "string"))
                            .build())
                        .selector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .storageClassName("string")
                        .volumeAttributesClassName("string")
                        .volumeMode("string")
                        .volumeName("string")
                        .build())
                    .metadata(ObjectMetaArgs.builder()
                        .annotations(Map.of("string", "string"))
                        .clusterName("string")
                        .creationTimestamp("string")
                        .deletionGracePeriodSeconds(0)
                        .deletionTimestamp("string")
                        .finalizers("string")
                        .generateName("string")
                        .generation(0)
                        .labels(Map.of("string", "string"))
                        .managedFields(ManagedFieldsEntryArgs.builder()
                            .apiVersion("string")
                            .fieldsType("string")
                            .fieldsV1("{}")
                            .manager("string")
                            .operation("string")
                            .subresource("string")
                            .time("string")
                            .build())
                        .name("string")
                        .namespace("string")
                        .ownerReferences(OwnerReferenceArgs.builder()
                            .apiVersion("string")
                            .kind("string")
                            .name("string")
                            .uid("string")
                            .blockOwnerDeletion(false)
                            .controller(false)
                            .build())
                        .resourceVersion("string")
                        .selfLink("string")
                        .uid("string")
                        .build())
                    .build())
                .build())
            .fc(FCVolumeSourceArgs.builder()
                .fsType("string")
                .lun(0)
                .readOnly(false)
                .targetWWNs("string")
                .wwids("string")
                .build())
            .flexVolume(FlexVolumeSourceArgs.builder()
                .driver("string")
                .fsType("string")
                .options(Map.of("string", "string"))
                .readOnly(false)
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .build())
            .flocker(FlockerVolumeSourceArgs.builder()
                .datasetName("string")
                .datasetUUID("string")
                .build())
            .gcePersistentDisk(GCEPersistentDiskVolumeSourceArgs.builder()
                .pdName("string")
                .fsType("string")
                .partition(0)
                .readOnly(false)
                .build())
            .awsElasticBlockStore(AWSElasticBlockStoreVolumeSourceArgs.builder()
                .volumeID("string")
                .fsType("string")
                .partition(0)
                .readOnly(false)
                .build())
            .azureFile(AzureFileVolumeSourceArgs.builder()
                .secretName("string")
                .shareName("string")
                .readOnly(false)
                .build())
            .glusterfs(GlusterfsVolumeSourceArgs.builder()
                .endpoints("string")
                .path("string")
                .readOnly(false)
                .build())
            .portworxVolume(PortworxVolumeSourceArgs.builder()
                .volumeID("string")
                .fsType("string")
                .readOnly(false)
                .build())
            .iscsi(ISCSIVolumeSourceArgs.builder()
                .iqn("string")
                .lun(0)
                .targetPortal("string")
                .chapAuthDiscovery(false)
                .chapAuthSession(false)
                .fsType("string")
                .initiatorName("string")
                .iscsiInterface("string")
                .portals("string")
                .readOnly(false)
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .build())
            .azureDisk(AzureDiskVolumeSourceArgs.builder()
                .diskName("string")
                .diskURI("string")
                .cachingMode("string")
                .fsType("string")
                .kind("string")
                .readOnly(false)
                .build())
            .nfs(NFSVolumeSourceArgs.builder()
                .path("string")
                .server("string")
                .readOnly(false)
                .build())
            .hostPath(HostPathVolumeSourceArgs.builder()
                .path("string")
                .type("string")
                .build())
            .photonPersistentDisk(PhotonPersistentDiskVolumeSourceArgs.builder()
                .pdID("string")
                .fsType("string")
                .build())
            .image(ImageVolumeSourceArgs.builder()
                .pullPolicy("string")
                .reference("string")
                .build())
            .projected(ProjectedVolumeSourceArgs.builder()
                .sources(VolumeProjectionArgs.builder()
                    .clusterTrustBundle(ClusterTrustBundleProjectionArgs.builder()
                        .path("string")
                        .labelSelector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .name("string")
                        .optional(false)
                        .signerName("string")
                        .build())
                    .configMap(ConfigMapProjectionArgs.builder()
                        .items(KeyToPathArgs.builder()
                            .key("string")
                            .path("string")
                            .mode(0)
                            .build())
                        .name("string")
                        .optional(false)
                        .build())
                    .downwardAPI(DownwardAPIProjectionArgs.builder()
                        .items(DownwardAPIVolumeFileArgs.builder()
                            .path("string")
                            .fieldRef(ObjectFieldSelectorArgs.builder()
                                .fieldPath("string")
                                .apiVersion("string")
                                .build())
                            .mode(0)
                            .resourceFieldRef(ResourceFieldSelectorArgs.builder()
                                .resource("string")
                                .containerName("string")
                                .divisor("string")
                                .build())
                            .build())
                        .build())
                    .secret(SecretProjectionArgs.builder()
                        .items(KeyToPathArgs.builder()
                            .key("string")
                            .path("string")
                            .mode(0)
                            .build())
                        .name("string")
                        .optional(false)
                        .build())
                    .serviceAccountToken(ServiceAccountTokenProjectionArgs.builder()
                        .path("string")
                        .audience("string")
                        .expirationSeconds(0)
                        .build())
                    .build())
                .defaultMode(0)
                .build())
            .quobyte(QuobyteVolumeSourceArgs.builder()
                .registry("string")
                .volume("string")
                .group("string")
                .readOnly(false)
                .tenant("string")
                .user("string")
                .build())
            .rbd(RBDVolumeSourceArgs.builder()
                .image("string")
                .monitors("string")
                .fsType("string")
                .keyring("string")
                .pool("string")
                .readOnly(false)
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .user("string")
                .build())
            .scaleIO(ScaleIOVolumeSourceArgs.builder()
                .gateway("string")
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .system("string")
                .fsType("string")
                .protectionDomain("string")
                .readOnly(false)
                .sslEnabled(false)
                .storageMode("string")
                .storagePool("string")
                .volumeName("string")
                .build())
            .secret(SecretVolumeSourceArgs.builder()
                .defaultMode(0)
                .items(KeyToPathArgs.builder()
                    .key("string")
                    .path("string")
                    .mode(0)
                    .build())
                .optional(false)
                .secretName("string")
                .build())
            .storageos(StorageOSVolumeSourceArgs.builder()
                .fsType("string")
                .readOnly(false)
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .volumeName("string")
                .volumeNamespace("string")
                .build())
            .vsphereVolume(VsphereVirtualDiskVolumeSourceArgs.builder()
                .volumePath("string")
                .fsType("string")
                .storagePolicyID("string")
                .storagePolicyName("string")
                .build())
            .build())
        .image(ControllerImageArgs.builder()
            .allowPrivilegeEscalation(false)
            .digest("string")
            .image("string")
            .pullPolicy("string")
            .readOnlyRootFilesystem(false)
            .registry("string")
            .repository("string")
            .runAsNonRoot(false)
            .runAsUser("string")
            .tag("string")
            .build())
        .livenessProbe(ProbeArgs.builder()
            .exec(ExecActionArgs.builder()
                .command("string")
                .build())
            .failureThreshold(0)
            .grpc(GRPCActionArgs.builder()
                .port(0)
                .service("string")
                .build())
            .httpGet(HTTPGetActionArgs.builder()
                .port(0)
                .host("string")
                .httpHeaders(HTTPHeaderArgs.builder()
                    .name("string")
                    .value("string")
                    .build())
                .path("string")
                .scheme("string")
                .build())
            .initialDelaySeconds(0)
            .periodSeconds(0)
            .successThreshold(0)
            .tcpSocket(TCPSocketActionArgs.builder()
                .port(0)
                .host("string")
                .build())
            .terminationGracePeriodSeconds(0)
            .timeoutSeconds(0)
            .build())
        .minAvailable(0)
        .name("string")
        .nodeSelector(Map.of("string", "string"))
        .podAnnotations(Map.of("string", "string"))
        .podLabels(Map.of("string", "string"))
        .podSecurityContext(PodSecurityContextArgs.builder()
            .appArmorProfile(AppArmorProfileArgs.builder()
                .type("string")
                .localhostProfile("string")
                .build())
            .fsGroup(0)
            .fsGroupChangePolicy("string")
            .runAsGroup(0)
            .runAsNonRoot(false)
            .runAsUser(0)
            .seLinuxChangePolicy("string")
            .seLinuxOptions(SELinuxOptionsArgs.builder()
                .level("string")
                .role("string")
                .type("string")
                .user("string")
                .build())
            .seccompProfile(SeccompProfileArgs.builder()
                .type("string")
                .localhostProfile("string")
                .build())
            .supplementalGroups(0)
            .supplementalGroupsPolicy("string")
            .sysctls(SysctlArgs.builder()
                .name("string")
                .value("string")
                .build())
            .windowsOptions(WindowsSecurityContextOptionsArgs.builder()
                .gmsaCredentialSpec("string")
                .gmsaCredentialSpecName("string")
                .hostProcess(false)
                .runAsUserName("string")
                .build())
            .build())
        .port(0)
        .priorityClassName("string")
        .readinessProbe(ProbeArgs.builder()
            .exec(ExecActionArgs.builder()
                .command("string")
                .build())
            .failureThreshold(0)
            .grpc(GRPCActionArgs.builder()
                .port(0)
                .service("string")
                .build())
            .httpGet(HTTPGetActionArgs.builder()
                .port(0)
                .host("string")
                .httpHeaders(HTTPHeaderArgs.builder()
                    .name("string")
                    .value("string")
                    .build())
                .path("string")
                .scheme("string")
                .build())
            .initialDelaySeconds(0)
            .periodSeconds(0)
            .successThreshold(0)
            .tcpSocket(TCPSocketActionArgs.builder()
                .port(0)
                .host("string")
                .build())
            .terminationGracePeriodSeconds(0)
            .timeoutSeconds(0)
            .build())
        .replicaCount(0)
        .resources(ResourceRequirementsArgs.builder()
            .claims(ResourceClaimArgs.builder()
                .name("string")
                .request("string")
                .build())
            .limits(Map.of("string", "string"))
            .requests(Map.of("string", "string"))
            .build())
        .service(ControllerDefaultBackendServiceArgs.builder()
            .annotations(Map.of("string", "string"))
            .clusterIP("string")
            .externalIPs("string")
            .loadBalancerIP("string")
            .loadBalancerSourceRanges("string")
            .servicePort(0)
            .type("string")
            .build())
        .serviceAccount(ControllerServiceAccountArgs.builder()
            .automountServiceAccountToken(false)
            .create(false)
            .name("string")
            .build())
        .tolerations(TolerationArgs.builder()
            .effect("string")
            .key("string")
            .operator("string")
            .tolerationSeconds(0)
            .value("string")
            .build())
        .build())
    .dhParam("string")
    .fullnameOverride("string")
    .helmOptions(ReleaseArgs.builder()
        .atomic(false)
        .chart("string")
        .cleanupOnFail(false)
        .createNamespace(false)
        .dependencyUpdate(false)
        .description("string")
        .devel(false)
        .disableCRDHooks(false)
        .disableOpenapiValidation(false)
        .disableWebhooks(false)
        .forceUpdate(false)
        .keyring("string")
        .lint(false)
        .manifest(Map.of("string", "any"))
        .maxHistory(0)
        .name("string")
        .namespace("string")
        .postrender("string")
        .recreatePods(false)
        .renderSubchartNotes(false)
        .replace(false)
        .repositoryOpts(RepositoryOptsArgs.builder()
            .caFile("string")
            .certFile("string")
            .keyFile("string")
            .password("string")
            .repo("string")
            .username("string")
            .build())
        .resetValues(false)
        .resourceNames(Map.of("string", "string"))
        .reuseValues(false)
        .skipAwait(false)
        .skipCrds(false)
        .timeout(0)
        .valueYamlFiles(new StringAsset("content"))
        .values(Map.of("string", "any"))
        .verify(false)
        .version("string")
        .waitForJobs(false)
        .build())
    .imagePullSecrets(LocalObjectReferenceArgs.builder()
        .name("string")
        .build())
    .nameOverride("string")
    .podSecurityPolicy(ControllerPodSecurityPolicyArgs.builder()
        .enabled(false)
        .build())
    .rbac(ControllerRBACArgs.builder()
        .create(false)
        .scope(false)
        .build())
    .revisionHistoryLimit(0)
    .serviceAccount(ControllerServiceAccountArgs.builder()
        .automountServiceAccountToken(false)
        .create(false)
        .name("string")
        .build())
    .tcp(Map.of("string", Map.of("string", "string")))
    .udp(Map.of("string", Map.of("string", "string")))
    .build());
ingress_controller_resource = kubernetes_ingress_nginx.IngressController("ingressControllerResource",
    controller={
        "add_headers": {
            "string": {
                "string": "string",
            },
        },
        "admission_webhooks": {
            "annotations": {
                "string": "string",
            },
            "certificate": "string",
            "create_secret_job": {
                "resources": {
                    "claims": [{
                        "name": "string",
                        "request": "string",
                    }],
                    "limits": {
                        "string": "string",
                    },
                    "requests": {
                        "string": "string",
                    },
                },
            },
            "enabled": False,
            "existing_psp": "string",
            "failure_policy": "string",
            "key": "string",
            "namespace_selector": {
                "string": {
                    "string": "string",
                },
            },
            "object_selector": {
                "string": {
                    "string": "string",
                },
            },
            "patch": {
                "enabled": False,
                "image": {
                    "allow_privilege_escalation": False,
                    "digest": "string",
                    "image": "string",
                    "pull_policy": "string",
                    "read_only_root_filesystem": False,
                    "registry": "string",
                    "repository": "string",
                    "run_as_non_root": False,
                    "run_as_user": "string",
                    "tag": "string",
                },
                "node_selector": {
                    "string": "string",
                },
                "pod_annotations": {
                    "string": "string",
                },
                "priority_class_name": "string",
                "run_as_user": 0,
                "tolerations": [{
                    "effect": "string",
                    "key": "string",
                    "operator": "string",
                    "toleration_seconds": 0,
                    "value": "string",
                }],
            },
            "patch_webhook_job": {
                "resources": {
                    "claims": [{
                        "name": "string",
                        "request": "string",
                    }],
                    "limits": {
                        "string": "string",
                    },
                    "requests": {
                        "string": "string",
                    },
                },
            },
            "port": 0,
            "service": {
                "annotations": {
                    "string": "string",
                },
                "cluster_ip": "string",
                "external_ips": ["string"],
                "load_balancer_ips": "string",
                "load_balancer_source_ranges": ["string"],
                "service_port": 0,
                "type": "string",
            },
            "timeout_seconds": 0,
        },
        "affinity": {
            "node_affinity": {
                "preferred_during_scheduling_ignored_during_execution": [{
                    "preference": {
                        "match_expressions": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                        "match_fields": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                    },
                    "weight": 0,
                }],
                "required_during_scheduling_ignored_during_execution": {
                    "node_selector_terms": [{
                        "match_expressions": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                        "match_fields": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                    }],
                },
            },
            "pod_affinity": {
                "preferred_during_scheduling_ignored_during_execution": [{
                    "pod_affinity_term": {
                        "topology_key": "string",
                        "label_selector": {
                            "match_expressions": [{
                                "key": "string",
                                "operator": "string",
                                "values": ["string"],
                            }],
                            "match_labels": {
                                "string": "string",
                            },
                        },
                        "match_label_keys": ["string"],
                        "mismatch_label_keys": ["string"],
                        "namespace_selector": {
                            "match_expressions": [{
                                "key": "string",
                                "operator": "string",
                                "values": ["string"],
                            }],
                            "match_labels": {
                                "string": "string",
                            },
                        },
                        "namespaces": ["string"],
                    },
                    "weight": 0,
                }],
                "required_during_scheduling_ignored_during_execution": [{
                    "topology_key": "string",
                    "label_selector": {
                        "match_expressions": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                        "match_labels": {
                            "string": "string",
                        },
                    },
                    "match_label_keys": ["string"],
                    "mismatch_label_keys": ["string"],
                    "namespace_selector": {
                        "match_expressions": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                        "match_labels": {
                            "string": "string",
                        },
                    },
                    "namespaces": ["string"],
                }],
            },
            "pod_anti_affinity": {
                "preferred_during_scheduling_ignored_during_execution": [{
                    "pod_affinity_term": {
                        "topology_key": "string",
                        "label_selector": {
                            "match_expressions": [{
                                "key": "string",
                                "operator": "string",
                                "values": ["string"],
                            }],
                            "match_labels": {
                                "string": "string",
                            },
                        },
                        "match_label_keys": ["string"],
                        "mismatch_label_keys": ["string"],
                        "namespace_selector": {
                            "match_expressions": [{
                                "key": "string",
                                "operator": "string",
                                "values": ["string"],
                            }],
                            "match_labels": {
                                "string": "string",
                            },
                        },
                        "namespaces": ["string"],
                    },
                    "weight": 0,
                }],
                "required_during_scheduling_ignored_during_execution": [{
                    "topology_key": "string",
                    "label_selector": {
                        "match_expressions": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                        "match_labels": {
                            "string": "string",
                        },
                    },
                    "match_label_keys": ["string"],
                    "mismatch_label_keys": ["string"],
                    "namespace_selector": {
                        "match_expressions": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                        "match_labels": {
                            "string": "string",
                        },
                    },
                    "namespaces": ["string"],
                }],
            },
        },
        "allow_snippet_annotations": False,
        "annotations": {
            "string": "string",
        },
        "autoscaling": {
            "annotations": {
                "string": "string",
            },
            "controller_autoscaling_behavior": {
                "scale_down": {
                    "policies": [{
                        "period_seconds": 0,
                        "type": "string",
                        "value": 0,
                    }],
                    "stabilization_window_seconds": 0,
                },
                "scale_up": {
                    "policies": [{
                        "period_seconds": 0,
                        "type": "string",
                        "value": 0,
                    }],
                    "stabilization_window_seconds": 0,
                },
            },
            "enabled": False,
            "max_replicas": 0,
            "min_replicas": 0,
            "target_cpu_utilization_percentage": 0,
            "target_memory_utilization_percentage": 0,
        },
        "autoscaling_template": [{
            "pods": {
                "metric": {
                    "name": "string",
                },
                "target": {
                    "average_value": "string",
                    "type": "string",
                },
            },
            "type": "string",
        }],
        "config": {
            "string": "string",
        },
        "config_annotations": {
            "string": "string",
        },
        "config_map_namespace": "string",
        "container_name": "string",
        "container_port": {
            "http": 0,
            "https": 0,
        },
        "custom_template": {
            "config_map_key": "string",
            "config_map_name": "string",
        },
        "dns_config": {
            "string": "string",
        },
        "dns_policy": "string",
        "election_id": "string",
        "enable_mimalloc": False,
        "existing_psp": "string",
        "extra_args": {
            "string": "string",
        },
        "extra_containers": [{
            "name": "string",
            "resources": {
                "claims": [{
                    "name": "string",
                    "request": "string",
                }],
                "limits": {
                    "string": "string",
                },
                "requests": {
                    "string": "string",
                },
            },
            "ports": [{
                "container_port": 0,
                "host_ip": "string",
                "host_port": 0,
                "name": "string",
                "protocol": "string",
            }],
            "env_from": [{
                "config_map_ref": {
                    "name": "string",
                    "optional": False,
                },
                "prefix": "string",
                "secret_ref": {
                    "name": "string",
                    "optional": False,
                },
            }],
            "image": "string",
            "image_pull_policy": "string",
            "lifecycle": {
                "post_start": {
                    "exec_": {
                        "command": ["string"],
                    },
                    "http_get": {
                        "port": 0,
                        "host": "string",
                        "http_headers": [{
                            "name": "string",
                            "value": "string",
                        }],
                        "path": "string",
                        "scheme": "string",
                    },
                    "sleep": {
                        "seconds": 0,
                    },
                    "tcp_socket": {
                        "port": 0,
                        "host": "string",
                    },
                },
                "pre_stop": {
                    "exec_": {
                        "command": ["string"],
                    },
                    "http_get": {
                        "port": 0,
                        "host": "string",
                        "http_headers": [{
                            "name": "string",
                            "value": "string",
                        }],
                        "path": "string",
                        "scheme": "string",
                    },
                    "sleep": {
                        "seconds": 0,
                    },
                    "tcp_socket": {
                        "port": 0,
                        "host": "string",
                    },
                },
            },
            "liveness_probe": {
                "exec_": {
                    "command": ["string"],
                },
                "failure_threshold": 0,
                "grpc": {
                    "port": 0,
                    "service": "string",
                },
                "http_get": {
                    "port": 0,
                    "host": "string",
                    "http_headers": [{
                        "name": "string",
                        "value": "string",
                    }],
                    "path": "string",
                    "scheme": "string",
                },
                "initial_delay_seconds": 0,
                "period_seconds": 0,
                "success_threshold": 0,
                "tcp_socket": {
                    "port": 0,
                    "host": "string",
                },
                "termination_grace_period_seconds": 0,
                "timeout_seconds": 0,
            },
            "restart_policy": "string",
            "args": ["string"],
            "readiness_probe": {
                "exec_": {
                    "command": ["string"],
                },
                "failure_threshold": 0,
                "grpc": {
                    "port": 0,
                    "service": "string",
                },
                "http_get": {
                    "port": 0,
                    "host": "string",
                    "http_headers": [{
                        "name": "string",
                        "value": "string",
                    }],
                    "path": "string",
                    "scheme": "string",
                },
                "initial_delay_seconds": 0,
                "period_seconds": 0,
                "success_threshold": 0,
                "tcp_socket": {
                    "port": 0,
                    "host": "string",
                },
                "termination_grace_period_seconds": 0,
                "timeout_seconds": 0,
            },
            "env": [{
                "name": "string",
                "value": "string",
                "value_from": {
                    "config_map_key_ref": {
                        "key": "string",
                        "name": "string",
                        "optional": False,
                    },
                    "field_ref": {
                        "field_path": "string",
                        "api_version": "string",
                    },
                    "resource_field_ref": {
                        "resource": "string",
                        "container_name": "string",
                        "divisor": "string",
                    },
                    "secret_key_ref": {
                        "key": "string",
                        "name": "string",
                        "optional": False,
                    },
                },
            }],
            "resize_policy": [{
                "resource_name": "string",
                "restart_policy": "string",
            }],
            "command": ["string"],
            "security_context": {
                "allow_privilege_escalation": False,
                "app_armor_profile": {
                    "type": "string",
                    "localhost_profile": "string",
                },
                "capabilities": {
                    "add": ["string"],
                    "drop": ["string"],
                },
                "privileged": False,
                "proc_mount": "string",
                "read_only_root_filesystem": False,
                "run_as_group": 0,
                "run_as_non_root": False,
                "run_as_user": 0,
                "se_linux_options": {
                    "level": "string",
                    "role": "string",
                    "type": "string",
                    "user": "string",
                },
                "seccomp_profile": {
                    "type": "string",
                    "localhost_profile": "string",
                },
                "windows_options": {
                    "gmsa_credential_spec": "string",
                    "gmsa_credential_spec_name": "string",
                    "host_process": False,
                    "run_as_user_name": "string",
                },
            },
            "startup_probe": {
                "exec_": {
                    "command": ["string"],
                },
                "failure_threshold": 0,
                "grpc": {
                    "port": 0,
                    "service": "string",
                },
                "http_get": {
                    "port": 0,
                    "host": "string",
                    "http_headers": [{
                        "name": "string",
                        "value": "string",
                    }],
                    "path": "string",
                    "scheme": "string",
                },
                "initial_delay_seconds": 0,
                "period_seconds": 0,
                "success_threshold": 0,
                "tcp_socket": {
                    "port": 0,
                    "host": "string",
                },
                "termination_grace_period_seconds": 0,
                "timeout_seconds": 0,
            },
            "stdin": False,
            "stdin_once": False,
            "termination_message_path": "string",
            "termination_message_policy": "string",
            "tty": False,
            "volume_devices": [{
                "device_path": "string",
                "name": "string",
            }],
            "volume_mounts": [{
                "mount_path": "string",
                "name": "string",
                "mount_propagation": "string",
                "read_only": False,
                "recursive_read_only": "string",
                "sub_path": "string",
                "sub_path_expr": "string",
            }],
            "working_dir": "string",
        }],
        "extra_envs": [{
            "name": "string",
            "value": "string",
            "value_from": {
                "config_map_key_ref": {
                    "key": "string",
                    "name": "string",
                    "optional": False,
                },
                "field_ref": {
                    "field_path": "string",
                    "api_version": "string",
                },
                "resource_field_ref": {
                    "resource": "string",
                    "container_name": "string",
                    "divisor": "string",
                },
                "secret_key_ref": {
                    "key": "string",
                    "name": "string",
                    "optional": False,
                },
            },
        }],
        "extra_init_containers": [{
            "name": "string",
            "resources": {
                "claims": [{
                    "name": "string",
                    "request": "string",
                }],
                "limits": {
                    "string": "string",
                },
                "requests": {
                    "string": "string",
                },
            },
            "ports": [{
                "container_port": 0,
                "host_ip": "string",
                "host_port": 0,
                "name": "string",
                "protocol": "string",
            }],
            "env_from": [{
                "config_map_ref": {
                    "name": "string",
                    "optional": False,
                },
                "prefix": "string",
                "secret_ref": {
                    "name": "string",
                    "optional": False,
                },
            }],
            "image": "string",
            "image_pull_policy": "string",
            "lifecycle": {
                "post_start": {
                    "exec_": {
                        "command": ["string"],
                    },
                    "http_get": {
                        "port": 0,
                        "host": "string",
                        "http_headers": [{
                            "name": "string",
                            "value": "string",
                        }],
                        "path": "string",
                        "scheme": "string",
                    },
                    "sleep": {
                        "seconds": 0,
                    },
                    "tcp_socket": {
                        "port": 0,
                        "host": "string",
                    },
                },
                "pre_stop": {
                    "exec_": {
                        "command": ["string"],
                    },
                    "http_get": {
                        "port": 0,
                        "host": "string",
                        "http_headers": [{
                            "name": "string",
                            "value": "string",
                        }],
                        "path": "string",
                        "scheme": "string",
                    },
                    "sleep": {
                        "seconds": 0,
                    },
                    "tcp_socket": {
                        "port": 0,
                        "host": "string",
                    },
                },
            },
            "liveness_probe": {
                "exec_": {
                    "command": ["string"],
                },
                "failure_threshold": 0,
                "grpc": {
                    "port": 0,
                    "service": "string",
                },
                "http_get": {
                    "port": 0,
                    "host": "string",
                    "http_headers": [{
                        "name": "string",
                        "value": "string",
                    }],
                    "path": "string",
                    "scheme": "string",
                },
                "initial_delay_seconds": 0,
                "period_seconds": 0,
                "success_threshold": 0,
                "tcp_socket": {
                    "port": 0,
                    "host": "string",
                },
                "termination_grace_period_seconds": 0,
                "timeout_seconds": 0,
            },
            "restart_policy": "string",
            "args": ["string"],
            "readiness_probe": {
                "exec_": {
                    "command": ["string"],
                },
                "failure_threshold": 0,
                "grpc": {
                    "port": 0,
                    "service": "string",
                },
                "http_get": {
                    "port": 0,
                    "host": "string",
                    "http_headers": [{
                        "name": "string",
                        "value": "string",
                    }],
                    "path": "string",
                    "scheme": "string",
                },
                "initial_delay_seconds": 0,
                "period_seconds": 0,
                "success_threshold": 0,
                "tcp_socket": {
                    "port": 0,
                    "host": "string",
                },
                "termination_grace_period_seconds": 0,
                "timeout_seconds": 0,
            },
            "env": [{
                "name": "string",
                "value": "string",
                "value_from": {
                    "config_map_key_ref": {
                        "key": "string",
                        "name": "string",
                        "optional": False,
                    },
                    "field_ref": {
                        "field_path": "string",
                        "api_version": "string",
                    },
                    "resource_field_ref": {
                        "resource": "string",
                        "container_name": "string",
                        "divisor": "string",
                    },
                    "secret_key_ref": {
                        "key": "string",
                        "name": "string",
                        "optional": False,
                    },
                },
            }],
            "resize_policy": [{
                "resource_name": "string",
                "restart_policy": "string",
            }],
            "command": ["string"],
            "security_context": {
                "allow_privilege_escalation": False,
                "app_armor_profile": {
                    "type": "string",
                    "localhost_profile": "string",
                },
                "capabilities": {
                    "add": ["string"],
                    "drop": ["string"],
                },
                "privileged": False,
                "proc_mount": "string",
                "read_only_root_filesystem": False,
                "run_as_group": 0,
                "run_as_non_root": False,
                "run_as_user": 0,
                "se_linux_options": {
                    "level": "string",
                    "role": "string",
                    "type": "string",
                    "user": "string",
                },
                "seccomp_profile": {
                    "type": "string",
                    "localhost_profile": "string",
                },
                "windows_options": {
                    "gmsa_credential_spec": "string",
                    "gmsa_credential_spec_name": "string",
                    "host_process": False,
                    "run_as_user_name": "string",
                },
            },
            "startup_probe": {
                "exec_": {
                    "command": ["string"],
                },
                "failure_threshold": 0,
                "grpc": {
                    "port": 0,
                    "service": "string",
                },
                "http_get": {
                    "port": 0,
                    "host": "string",
                    "http_headers": [{
                        "name": "string",
                        "value": "string",
                    }],
                    "path": "string",
                    "scheme": "string",
                },
                "initial_delay_seconds": 0,
                "period_seconds": 0,
                "success_threshold": 0,
                "tcp_socket": {
                    "port": 0,
                    "host": "string",
                },
                "termination_grace_period_seconds": 0,
                "timeout_seconds": 0,
            },
            "stdin": False,
            "stdin_once": False,
            "termination_message_path": "string",
            "termination_message_policy": "string",
            "tty": False,
            "volume_devices": [{
                "device_path": "string",
                "name": "string",
            }],
            "volume_mounts": [{
                "mount_path": "string",
                "name": "string",
                "mount_propagation": "string",
                "read_only": False,
                "recursive_read_only": "string",
                "sub_path": "string",
                "sub_path_expr": "string",
            }],
            "working_dir": "string",
        }],
        "extra_volume_mounts": [{
            "mount_path": "string",
            "name": "string",
            "mount_propagation": "string",
            "read_only": False,
            "recursive_read_only": "string",
            "sub_path": "string",
            "sub_path_expr": "string",
        }],
        "extra_volumes": [{
            "name": "string",
            "git_repo": {
                "repository": "string",
                "directory": "string",
                "revision": "string",
            },
            "persistent_volume_claim": {
                "claim_name": "string",
                "read_only": False,
            },
            "cephfs": {
                "monitors": ["string"],
                "path": "string",
                "read_only": False,
                "secret_file": "string",
                "secret_ref": {
                    "name": "string",
                },
                "user": "string",
            },
            "cinder": {
                "volume_id": "string",
                "fs_type": "string",
                "read_only": False,
                "secret_ref": {
                    "name": "string",
                },
            },
            "config_map": {
                "default_mode": 0,
                "items": [{
                    "key": "string",
                    "path": "string",
                    "mode": 0,
                }],
                "name": "string",
                "optional": False,
            },
            "csi": {
                "driver": "string",
                "fs_type": "string",
                "node_publish_secret_ref": {
                    "name": "string",
                },
                "read_only": False,
                "volume_attributes": {
                    "string": "string",
                },
            },
            "downward_api": {
                "default_mode": 0,
                "items": [{
                    "path": "string",
                    "field_ref": {
                        "field_path": "string",
                        "api_version": "string",
                    },
                    "mode": 0,
                    "resource_field_ref": {
                        "resource": "string",
                        "container_name": "string",
                        "divisor": "string",
                    },
                }],
            },
            "empty_dir": {
                "medium": "string",
                "size_limit": "string",
            },
            "ephemeral": {
                "read_only": False,
                "volume_claim_template": {
                    "spec": {
                        "access_modes": ["string"],
                        "data_source": {
                            "kind": "string",
                            "name": "string",
                            "api_group": "string",
                        },
                        "data_source_ref": {
                            "kind": "string",
                            "name": "string",
                            "api_group": "string",
                            "namespace": "string",
                        },
                        "resources": {
                            "limits": {
                                "string": "string",
                            },
                            "requests": {
                                "string": "string",
                            },
                        },
                        "selector": {
                            "match_expressions": [{
                                "key": "string",
                                "operator": "string",
                                "values": ["string"],
                            }],
                            "match_labels": {
                                "string": "string",
                            },
                        },
                        "storage_class_name": "string",
                        "volume_attributes_class_name": "string",
                        "volume_mode": "string",
                        "volume_name": "string",
                    },
                    "metadata": {
                        "annotations": {
                            "string": "string",
                        },
                        "cluster_name": "string",
                        "creation_timestamp": "string",
                        "deletion_grace_period_seconds": 0,
                        "deletion_timestamp": "string",
                        "finalizers": ["string"],
                        "generate_name": "string",
                        "generation": 0,
                        "labels": {
                            "string": "string",
                        },
                        "managed_fields": [{
                            "api_version": "string",
                            "fields_type": "string",
                            "fields_v1": "{}",
                            "manager": "string",
                            "operation": "string",
                            "subresource": "string",
                            "time": "string",
                        }],
                        "name": "string",
                        "namespace": "string",
                        "owner_references": [{
                            "api_version": "string",
                            "kind": "string",
                            "name": "string",
                            "uid": "string",
                            "block_owner_deletion": False,
                            "controller": False,
                        }],
                        "resource_version": "string",
                        "self_link": "string",
                        "uid": "string",
                    },
                },
            },
            "fc": {
                "fs_type": "string",
                "lun": 0,
                "read_only": False,
                "target_wwns": ["string"],
                "wwids": ["string"],
            },
            "flex_volume": {
                "driver": "string",
                "fs_type": "string",
                "options": {
                    "string": "string",
                },
                "read_only": False,
                "secret_ref": {
                    "name": "string",
                },
            },
            "flocker": {
                "dataset_name": "string",
                "dataset_uuid": "string",
            },
            "gce_persistent_disk": {
                "pd_name": "string",
                "fs_type": "string",
                "partition": 0,
                "read_only": False,
            },
            "aws_elastic_block_store": {
                "volume_id": "string",
                "fs_type": "string",
                "partition": 0,
                "read_only": False,
            },
            "azure_file": {
                "secret_name": "string",
                "share_name": "string",
                "read_only": False,
            },
            "glusterfs": {
                "endpoints": "string",
                "path": "string",
                "read_only": False,
            },
            "portworx_volume": {
                "volume_id": "string",
                "fs_type": "string",
                "read_only": False,
            },
            "iscsi": {
                "iqn": "string",
                "lun": 0,
                "target_portal": "string",
                "chap_auth_discovery": False,
                "chap_auth_session": False,
                "fs_type": "string",
                "initiator_name": "string",
                "iscsi_interface": "string",
                "portals": ["string"],
                "read_only": False,
                "secret_ref": {
                    "name": "string",
                },
            },
            "azure_disk": {
                "disk_name": "string",
                "disk_uri": "string",
                "caching_mode": "string",
                "fs_type": "string",
                "kind": "string",
                "read_only": False,
            },
            "nfs": {
                "path": "string",
                "server": "string",
                "read_only": False,
            },
            "host_path": {
                "path": "string",
                "type": "string",
            },
            "photon_persistent_disk": {
                "pd_id": "string",
                "fs_type": "string",
            },
            "image": {
                "pull_policy": "string",
                "reference": "string",
            },
            "projected": {
                "sources": [{
                    "cluster_trust_bundle": {
                        "path": "string",
                        "label_selector": {
                            "match_expressions": [{
                                "key": "string",
                                "operator": "string",
                                "values": ["string"],
                            }],
                            "match_labels": {
                                "string": "string",
                            },
                        },
                        "name": "string",
                        "optional": False,
                        "signer_name": "string",
                    },
                    "config_map": {
                        "items": [{
                            "key": "string",
                            "path": "string",
                            "mode": 0,
                        }],
                        "name": "string",
                        "optional": False,
                    },
                    "downward_api": {
                        "items": [{
                            "path": "string",
                            "field_ref": {
                                "field_path": "string",
                                "api_version": "string",
                            },
                            "mode": 0,
                            "resource_field_ref": {
                                "resource": "string",
                                "container_name": "string",
                                "divisor": "string",
                            },
                        }],
                    },
                    "secret": {
                        "items": [{
                            "key": "string",
                            "path": "string",
                            "mode": 0,
                        }],
                        "name": "string",
                        "optional": False,
                    },
                    "service_account_token": {
                        "path": "string",
                        "audience": "string",
                        "expiration_seconds": 0,
                    },
                }],
                "default_mode": 0,
            },
            "quobyte": {
                "registry": "string",
                "volume": "string",
                "group": "string",
                "read_only": False,
                "tenant": "string",
                "user": "string",
            },
            "rbd": {
                "image": "string",
                "monitors": ["string"],
                "fs_type": "string",
                "keyring": "string",
                "pool": "string",
                "read_only": False,
                "secret_ref": {
                    "name": "string",
                },
                "user": "string",
            },
            "scale_io": {
                "gateway": "string",
                "secret_ref": {
                    "name": "string",
                },
                "system": "string",
                "fs_type": "string",
                "protection_domain": "string",
                "read_only": False,
                "ssl_enabled": False,
                "storage_mode": "string",
                "storage_pool": "string",
                "volume_name": "string",
            },
            "secret": {
                "default_mode": 0,
                "items": [{
                    "key": "string",
                    "path": "string",
                    "mode": 0,
                }],
                "optional": False,
                "secret_name": "string",
            },
            "storageos": {
                "fs_type": "string",
                "read_only": False,
                "secret_ref": {
                    "name": "string",
                },
                "volume_name": "string",
                "volume_namespace": "string",
            },
            "vsphere_volume": {
                "volume_path": "string",
                "fs_type": "string",
                "storage_policy_id": "string",
                "storage_policy_name": "string",
            },
        }],
        "health_check_path": "string",
        "heath_check_host": "string",
        "host_network": False,
        "host_port": {
            "enabled": False,
            "ports": {
                "http": 0,
                "https": 0,
            },
        },
        "hostname": {
            "string": {
                "string": "string",
            },
        },
        "image": {
            "allow_privilege_escalation": False,
            "digest": "string",
            "image": "string",
            "pull_policy": "string",
            "read_only_root_filesystem": False,
            "registry": "string",
            "repository": "string",
            "run_as_non_root": False,
            "run_as_user": "string",
            "tag": "string",
        },
        "ingress_class_by_name": False,
        "ingress_class_resource": {
            "controller_value": "string",
            "default": False,
            "enabled": False,
            "name": "string",
            "parameters": {
                "string": {
                    "string": "string",
                },
            },
        },
        "keda": {
            "api_version": "string",
            "behavior": {
                "scale_down": {
                    "policies": [{
                        "period_seconds": 0,
                        "type": "string",
                        "value": 0,
                    }],
                    "stabilization_window_seconds": 0,
                },
                "scale_up": {
                    "policies": [{
                        "period_seconds": 0,
                        "type": "string",
                        "value": 0,
                    }],
                    "stabilization_window_seconds": 0,
                },
            },
            "cooldown_period": 0,
            "enabled": False,
            "max_replicas": 0,
            "min_replicas": 0,
            "polling_interval": 0,
            "restore_to_original_replica_count": False,
            "scaled_object": {
                "annotations": {
                    "string": "string",
                },
            },
            "triggers": [{
                "metadata": {
                    "string": {
                        "string": "string",
                    },
                },
                "type": "string",
            }],
        },
        "kind": "string",
        "lifecycle": {
            "post_start": {
                "exec_": {
                    "command": ["string"],
                },
                "http_get": {
                    "port": 0,
                    "host": "string",
                    "http_headers": [{
                        "name": "string",
                        "value": "string",
                    }],
                    "path": "string",
                    "scheme": "string",
                },
                "sleep": {
                    "seconds": 0,
                },
                "tcp_socket": {
                    "port": 0,
                    "host": "string",
                },
            },
            "pre_stop": {
                "exec_": {
                    "command": ["string"],
                },
                "http_get": {
                    "port": 0,
                    "host": "string",
                    "http_headers": [{
                        "name": "string",
                        "value": "string",
                    }],
                    "path": "string",
                    "scheme": "string",
                },
                "sleep": {
                    "seconds": 0,
                },
                "tcp_socket": {
                    "port": 0,
                    "host": "string",
                },
            },
        },
        "liveness_probe": {
            "exec_": {
                "command": ["string"],
            },
            "failure_threshold": 0,
            "grpc": {
                "port": 0,
                "service": "string",
            },
            "http_get": {
                "port": 0,
                "host": "string",
                "http_headers": [{
                    "name": "string",
                    "value": "string",
                }],
                "path": "string",
                "scheme": "string",
            },
            "initial_delay_seconds": 0,
            "period_seconds": 0,
            "success_threshold": 0,
            "tcp_socket": {
                "port": 0,
                "host": "string",
            },
            "termination_grace_period_seconds": 0,
            "timeout_seconds": 0,
        },
        "maxmind_license_key": "string",
        "metrics": {
            "enabled": False,
            "port": 0,
            "prometheus_rule": {
                "additional_labels": {
                    "string": "string",
                },
                "enabled": False,
                "namespace": "string",
                "rules": [{
                    "string": "string",
                }],
            },
            "service": {
                "annotations": {
                    "string": "string",
                },
                "cluster_ip": "string",
                "external_ips": ["string"],
                "external_traffic_policy": "string",
                "load_balancer_ips": "string",
                "load_balancer_source_ranges": ["string"],
                "node_port": "string",
                "service_port": 0,
                "type": "string",
            },
            "service_monitor": {
                "additional_labels": {
                    "string": "string",
                },
                "enabled": False,
                "honor_labels": False,
                "job_label": "string",
                "metric_relabelings": ["string"],
                "namespace": "string",
                "namespace_selector": {
                    "string": {
                        "string": "string",
                    },
                },
                "scrape_interval": "string",
                "target_labels": ["string"],
            },
        },
        "min_available": 0,
        "min_ready_seconds": 0,
        "name": "string",
        "node_selector": {
            "string": "string",
        },
        "pod_annotations": {
            "string": "string",
        },
        "pod_labels": {
            "string": "string",
        },
        "pod_security_context": {
            "app_armor_profile": {
                "type": "string",
                "localhost_profile": "string",
            },
            "fs_group": 0,
            "fs_group_change_policy": "string",
            "run_as_group": 0,
            "run_as_non_root": False,
            "run_as_user": 0,
            "se_linux_change_policy": "string",
            "se_linux_options": {
                "level": "string",
                "role": "string",
                "type": "string",
                "user": "string",
            },
            "seccomp_profile": {
                "type": "string",
                "localhost_profile": "string",
            },
            "supplemental_groups": [0],
            "supplemental_groups_policy": "string",
            "sysctls": [{
                "name": "string",
                "value": "string",
            }],
            "windows_options": {
                "gmsa_credential_spec": "string",
                "gmsa_credential_spec_name": "string",
                "host_process": False,
                "run_as_user_name": "string",
            },
        },
        "priority_class_name": "string",
        "proxy_set_headers": {
            "string": {
                "string": "string",
            },
        },
        "publish_service": {
            "enabled": False,
            "path_override": "string",
        },
        "readiness_probe": {
            "exec_": {
                "command": ["string"],
            },
            "failure_threshold": 0,
            "grpc": {
                "port": 0,
                "service": "string",
            },
            "http_get": {
                "port": 0,
                "host": "string",
                "http_headers": [{
                    "name": "string",
                    "value": "string",
                }],
                "path": "string",
                "scheme": "string",
            },
            "initial_delay_seconds": 0,
            "period_seconds": 0,
            "success_threshold": 0,
            "tcp_socket": {
                "port": 0,
                "host": "string",
            },
            "termination_grace_period_seconds": 0,
            "timeout_seconds": 0,
        },
        "replica_count": 0,
        "report_node_internal_ip": False,
        "resources": {
            "claims": [{
                "name": "string",
                "request": "string",
            }],
            "limits": {
                "string": "string",
            },
            "requests": {
                "string": "string",
            },
        },
        "scope": {
            "enabled": False,
            "namespace": "string",
        },
        "service": {
            "annotations": {
                "string": "string",
            },
            "cluster_ip": "string",
            "enable_http": False,
            "enable_https": False,
            "enabled": False,
            "external_ips": ["string"],
            "external_traffic_policy": "string",
            "health_check_node_port": 0,
            "internal": {
                "annotations": {
                    "string": "string",
                },
                "enabled": False,
                "external_traffic_policy": "string",
                "labels": {
                    "string": "string",
                },
                "load_balancer_ips": "string",
                "load_balancer_source_ranges": ["string"],
            },
            "labels": {
                "string": "string",
            },
            "load_balancer_ip": "string",
            "load_balancer_ips": "string",
            "load_balancer_source_ranges": ["string"],
            "node_ports": {
                "http": "string",
                "https": "string",
                "tcp": {
                    "string": {
                        "string": "string",
                    },
                },
                "udp": {
                    "string": {
                        "string": "string",
                    },
                },
            },
            "ports": {
                "http": 0,
                "https": 0,
            },
            "session_affinity": "string",
            "target_ports": {
                "http": 0,
                "https": 0,
            },
            "type": "string",
        },
        "startup_probe": {
            "exec_": {
                "command": ["string"],
            },
            "failure_threshold": 0,
            "grpc": {
                "port": 0,
                "service": "string",
            },
            "http_get": {
                "port": 0,
                "host": "string",
                "http_headers": [{
                    "name": "string",
                    "value": "string",
                }],
                "path": "string",
                "scheme": "string",
            },
            "initial_delay_seconds": 0,
            "period_seconds": 0,
            "success_threshold": 0,
            "tcp_socket": {
                "port": 0,
                "host": "string",
            },
            "termination_grace_period_seconds": 0,
            "timeout_seconds": 0,
        },
        "sysctls": {
            "string": {
                "string": "string",
            },
        },
        "tcp": {
            "annotations": {
                "string": "string",
            },
            "config_map_namespace": "string",
        },
        "terminate_grace_period_seconds": 0,
        "tolerations": {
            "effect": "string",
            "key": "string",
            "operator": "string",
            "toleration_seconds": 0,
            "value": "string",
        },
        "topology_spread_constraints": [{
            "max_skew": 0,
            "topology_key": "string",
            "when_unsatisfiable": "string",
            "label_selector": {
                "match_expressions": [{
                    "key": "string",
                    "operator": "string",
                    "values": ["string"],
                }],
                "match_labels": {
                    "string": "string",
                },
            },
            "match_label_keys": ["string"],
            "min_domains": 0,
            "node_affinity_policy": "string",
            "node_taints_policy": "string",
        }],
        "udp": {
            "annotations": {
                "string": "string",
            },
            "config_map_namespace": "string",
        },
        "update_strategy": {
            "rolling_update": {
                "max_unavailable": 0,
            },
            "type": "string",
        },
        "watch_ingress_without_class": False,
    },
    default_backend={
        "affinity": {
            "node_affinity": {
                "preferred_during_scheduling_ignored_during_execution": [{
                    "preference": {
                        "match_expressions": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                        "match_fields": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                    },
                    "weight": 0,
                }],
                "required_during_scheduling_ignored_during_execution": {
                    "node_selector_terms": [{
                        "match_expressions": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                        "match_fields": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                    }],
                },
            },
            "pod_affinity": {
                "preferred_during_scheduling_ignored_during_execution": [{
                    "pod_affinity_term": {
                        "topology_key": "string",
                        "label_selector": {
                            "match_expressions": [{
                                "key": "string",
                                "operator": "string",
                                "values": ["string"],
                            }],
                            "match_labels": {
                                "string": "string",
                            },
                        },
                        "match_label_keys": ["string"],
                        "mismatch_label_keys": ["string"],
                        "namespace_selector": {
                            "match_expressions": [{
                                "key": "string",
                                "operator": "string",
                                "values": ["string"],
                            }],
                            "match_labels": {
                                "string": "string",
                            },
                        },
                        "namespaces": ["string"],
                    },
                    "weight": 0,
                }],
                "required_during_scheduling_ignored_during_execution": [{
                    "topology_key": "string",
                    "label_selector": {
                        "match_expressions": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                        "match_labels": {
                            "string": "string",
                        },
                    },
                    "match_label_keys": ["string"],
                    "mismatch_label_keys": ["string"],
                    "namespace_selector": {
                        "match_expressions": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                        "match_labels": {
                            "string": "string",
                        },
                    },
                    "namespaces": ["string"],
                }],
            },
            "pod_anti_affinity": {
                "preferred_during_scheduling_ignored_during_execution": [{
                    "pod_affinity_term": {
                        "topology_key": "string",
                        "label_selector": {
                            "match_expressions": [{
                                "key": "string",
                                "operator": "string",
                                "values": ["string"],
                            }],
                            "match_labels": {
                                "string": "string",
                            },
                        },
                        "match_label_keys": ["string"],
                        "mismatch_label_keys": ["string"],
                        "namespace_selector": {
                            "match_expressions": [{
                                "key": "string",
                                "operator": "string",
                                "values": ["string"],
                            }],
                            "match_labels": {
                                "string": "string",
                            },
                        },
                        "namespaces": ["string"],
                    },
                    "weight": 0,
                }],
                "required_during_scheduling_ignored_during_execution": [{
                    "topology_key": "string",
                    "label_selector": {
                        "match_expressions": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                        "match_labels": {
                            "string": "string",
                        },
                    },
                    "match_label_keys": ["string"],
                    "mismatch_label_keys": ["string"],
                    "namespace_selector": {
                        "match_expressions": [{
                            "key": "string",
                            "operator": "string",
                            "values": ["string"],
                        }],
                        "match_labels": {
                            "string": "string",
                        },
                    },
                    "namespaces": ["string"],
                }],
            },
        },
        "autoscaling": {
            "annotations": {
                "string": "string",
            },
            "controller_autoscaling_behavior": {
                "scale_down": {
                    "policies": [{
                        "period_seconds": 0,
                        "type": "string",
                        "value": 0,
                    }],
                    "stabilization_window_seconds": 0,
                },
                "scale_up": {
                    "policies": [{
                        "period_seconds": 0,
                        "type": "string",
                        "value": 0,
                    }],
                    "stabilization_window_seconds": 0,
                },
            },
            "enabled": False,
            "max_replicas": 0,
            "min_replicas": 0,
            "target_cpu_utilization_percentage": 0,
            "target_memory_utilization_percentage": 0,
        },
        "enabled": False,
        "existing_psp": "string",
        "extra_args": {
            "string": {
                "string": "string",
            },
        },
        "extra_envs": [{
            "name": "string",
            "value": "string",
            "value_from": {
                "config_map_key_ref": {
                    "key": "string",
                    "name": "string",
                    "optional": False,
                },
                "field_ref": {
                    "field_path": "string",
                    "api_version": "string",
                },
                "resource_field_ref": {
                    "resource": "string",
                    "container_name": "string",
                    "divisor": "string",
                },
                "secret_key_ref": {
                    "key": "string",
                    "name": "string",
                    "optional": False,
                },
            },
        }],
        "extra_volume_mounts": [{
            "mount_path": "string",
            "name": "string",
            "mount_propagation": "string",
            "read_only": False,
            "recursive_read_only": "string",
            "sub_path": "string",
            "sub_path_expr": "string",
        }],
        "extra_volumes": [{
            "name": "string",
            "git_repo": {
                "repository": "string",
                "directory": "string",
                "revision": "string",
            },
            "persistent_volume_claim": {
                "claim_name": "string",
                "read_only": False,
            },
            "cephfs": {
                "monitors": ["string"],
                "path": "string",
                "read_only": False,
                "secret_file": "string",
                "secret_ref": {
                    "name": "string",
                },
                "user": "string",
            },
            "cinder": {
                "volume_id": "string",
                "fs_type": "string",
                "read_only": False,
                "secret_ref": {
                    "name": "string",
                },
            },
            "config_map": {
                "default_mode": 0,
                "items": [{
                    "key": "string",
                    "path": "string",
                    "mode": 0,
                }],
                "name": "string",
                "optional": False,
            },
            "csi": {
                "driver": "string",
                "fs_type": "string",
                "node_publish_secret_ref": {
                    "name": "string",
                },
                "read_only": False,
                "volume_attributes": {
                    "string": "string",
                },
            },
            "downward_api": {
                "default_mode": 0,
                "items": [{
                    "path": "string",
                    "field_ref": {
                        "field_path": "string",
                        "api_version": "string",
                    },
                    "mode": 0,
                    "resource_field_ref": {
                        "resource": "string",
                        "container_name": "string",
                        "divisor": "string",
                    },
                }],
            },
            "empty_dir": {
                "medium": "string",
                "size_limit": "string",
            },
            "ephemeral": {
                "read_only": False,
                "volume_claim_template": {
                    "spec": {
                        "access_modes": ["string"],
                        "data_source": {
                            "kind": "string",
                            "name": "string",
                            "api_group": "string",
                        },
                        "data_source_ref": {
                            "kind": "string",
                            "name": "string",
                            "api_group": "string",
                            "namespace": "string",
                        },
                        "resources": {
                            "limits": {
                                "string": "string",
                            },
                            "requests": {
                                "string": "string",
                            },
                        },
                        "selector": {
                            "match_expressions": [{
                                "key": "string",
                                "operator": "string",
                                "values": ["string"],
                            }],
                            "match_labels": {
                                "string": "string",
                            },
                        },
                        "storage_class_name": "string",
                        "volume_attributes_class_name": "string",
                        "volume_mode": "string",
                        "volume_name": "string",
                    },
                    "metadata": {
                        "annotations": {
                            "string": "string",
                        },
                        "cluster_name": "string",
                        "creation_timestamp": "string",
                        "deletion_grace_period_seconds": 0,
                        "deletion_timestamp": "string",
                        "finalizers": ["string"],
                        "generate_name": "string",
                        "generation": 0,
                        "labels": {
                            "string": "string",
                        },
                        "managed_fields": [{
                            "api_version": "string",
                            "fields_type": "string",
                            "fields_v1": "{}",
                            "manager": "string",
                            "operation": "string",
                            "subresource": "string",
                            "time": "string",
                        }],
                        "name": "string",
                        "namespace": "string",
                        "owner_references": [{
                            "api_version": "string",
                            "kind": "string",
                            "name": "string",
                            "uid": "string",
                            "block_owner_deletion": False,
                            "controller": False,
                        }],
                        "resource_version": "string",
                        "self_link": "string",
                        "uid": "string",
                    },
                },
            },
            "fc": {
                "fs_type": "string",
                "lun": 0,
                "read_only": False,
                "target_wwns": ["string"],
                "wwids": ["string"],
            },
            "flex_volume": {
                "driver": "string",
                "fs_type": "string",
                "options": {
                    "string": "string",
                },
                "read_only": False,
                "secret_ref": {
                    "name": "string",
                },
            },
            "flocker": {
                "dataset_name": "string",
                "dataset_uuid": "string",
            },
            "gce_persistent_disk": {
                "pd_name": "string",
                "fs_type": "string",
                "partition": 0,
                "read_only": False,
            },
            "aws_elastic_block_store": {
                "volume_id": "string",
                "fs_type": "string",
                "partition": 0,
                "read_only": False,
            },
            "azure_file": {
                "secret_name": "string",
                "share_name": "string",
                "read_only": False,
            },
            "glusterfs": {
                "endpoints": "string",
                "path": "string",
                "read_only": False,
            },
            "portworx_volume": {
                "volume_id": "string",
                "fs_type": "string",
                "read_only": False,
            },
            "iscsi": {
                "iqn": "string",
                "lun": 0,
                "target_portal": "string",
                "chap_auth_discovery": False,
                "chap_auth_session": False,
                "fs_type": "string",
                "initiator_name": "string",
                "iscsi_interface": "string",
                "portals": ["string"],
                "read_only": False,
                "secret_ref": {
                    "name": "string",
                },
            },
            "azure_disk": {
                "disk_name": "string",
                "disk_uri": "string",
                "caching_mode": "string",
                "fs_type": "string",
                "kind": "string",
                "read_only": False,
            },
            "nfs": {
                "path": "string",
                "server": "string",
                "read_only": False,
            },
            "host_path": {
                "path": "string",
                "type": "string",
            },
            "photon_persistent_disk": {
                "pd_id": "string",
                "fs_type": "string",
            },
            "image": {
                "pull_policy": "string",
                "reference": "string",
            },
            "projected": {
                "sources": [{
                    "cluster_trust_bundle": {
                        "path": "string",
                        "label_selector": {
                            "match_expressions": [{
                                "key": "string",
                                "operator": "string",
                                "values": ["string"],
                            }],
                            "match_labels": {
                                "string": "string",
                            },
                        },
                        "name": "string",
                        "optional": False,
                        "signer_name": "string",
                    },
                    "config_map": {
                        "items": [{
                            "key": "string",
                            "path": "string",
                            "mode": 0,
                        }],
                        "name": "string",
                        "optional": False,
                    },
                    "downward_api": {
                        "items": [{
                            "path": "string",
                            "field_ref": {
                                "field_path": "string",
                                "api_version": "string",
                            },
                            "mode": 0,
                            "resource_field_ref": {
                                "resource": "string",
                                "container_name": "string",
                                "divisor": "string",
                            },
                        }],
                    },
                    "secret": {
                        "items": [{
                            "key": "string",
                            "path": "string",
                            "mode": 0,
                        }],
                        "name": "string",
                        "optional": False,
                    },
                    "service_account_token": {
                        "path": "string",
                        "audience": "string",
                        "expiration_seconds": 0,
                    },
                }],
                "default_mode": 0,
            },
            "quobyte": {
                "registry": "string",
                "volume": "string",
                "group": "string",
                "read_only": False,
                "tenant": "string",
                "user": "string",
            },
            "rbd": {
                "image": "string",
                "monitors": ["string"],
                "fs_type": "string",
                "keyring": "string",
                "pool": "string",
                "read_only": False,
                "secret_ref": {
                    "name": "string",
                },
                "user": "string",
            },
            "scale_io": {
                "gateway": "string",
                "secret_ref": {
                    "name": "string",
                },
                "system": "string",
                "fs_type": "string",
                "protection_domain": "string",
                "read_only": False,
                "ssl_enabled": False,
                "storage_mode": "string",
                "storage_pool": "string",
                "volume_name": "string",
            },
            "secret": {
                "default_mode": 0,
                "items": [{
                    "key": "string",
                    "path": "string",
                    "mode": 0,
                }],
                "optional": False,
                "secret_name": "string",
            },
            "storageos": {
                "fs_type": "string",
                "read_only": False,
                "secret_ref": {
                    "name": "string",
                },
                "volume_name": "string",
                "volume_namespace": "string",
            },
            "vsphere_volume": {
                "volume_path": "string",
                "fs_type": "string",
                "storage_policy_id": "string",
                "storage_policy_name": "string",
            },
        }],
        "image": {
            "allow_privilege_escalation": False,
            "digest": "string",
            "image": "string",
            "pull_policy": "string",
            "read_only_root_filesystem": False,
            "registry": "string",
            "repository": "string",
            "run_as_non_root": False,
            "run_as_user": "string",
            "tag": "string",
        },
        "liveness_probe": {
            "exec_": {
                "command": ["string"],
            },
            "failure_threshold": 0,
            "grpc": {
                "port": 0,
                "service": "string",
            },
            "http_get": {
                "port": 0,
                "host": "string",
                "http_headers": [{
                    "name": "string",
                    "value": "string",
                }],
                "path": "string",
                "scheme": "string",
            },
            "initial_delay_seconds": 0,
            "period_seconds": 0,
            "success_threshold": 0,
            "tcp_socket": {
                "port": 0,
                "host": "string",
            },
            "termination_grace_period_seconds": 0,
            "timeout_seconds": 0,
        },
        "min_available": 0,
        "name": "string",
        "node_selector": {
            "string": "string",
        },
        "pod_annotations": {
            "string": "string",
        },
        "pod_labels": {
            "string": "string",
        },
        "pod_security_context": {
            "app_armor_profile": {
                "type": "string",
                "localhost_profile": "string",
            },
            "fs_group": 0,
            "fs_group_change_policy": "string",
            "run_as_group": 0,
            "run_as_non_root": False,
            "run_as_user": 0,
            "se_linux_change_policy": "string",
            "se_linux_options": {
                "level": "string",
                "role": "string",
                "type": "string",
                "user": "string",
            },
            "seccomp_profile": {
                "type": "string",
                "localhost_profile": "string",
            },
            "supplemental_groups": [0],
            "supplemental_groups_policy": "string",
            "sysctls": [{
                "name": "string",
                "value": "string",
            }],
            "windows_options": {
                "gmsa_credential_spec": "string",
                "gmsa_credential_spec_name": "string",
                "host_process": False,
                "run_as_user_name": "string",
            },
        },
        "port": 0,
        "priority_class_name": "string",
        "readiness_probe": {
            "exec_": {
                "command": ["string"],
            },
            "failure_threshold": 0,
            "grpc": {
                "port": 0,
                "service": "string",
            },
            "http_get": {
                "port": 0,
                "host": "string",
                "http_headers": [{
                    "name": "string",
                    "value": "string",
                }],
                "path": "string",
                "scheme": "string",
            },
            "initial_delay_seconds": 0,
            "period_seconds": 0,
            "success_threshold": 0,
            "tcp_socket": {
                "port": 0,
                "host": "string",
            },
            "termination_grace_period_seconds": 0,
            "timeout_seconds": 0,
        },
        "replica_count": 0,
        "resources": {
            "claims": [{
                "name": "string",
                "request": "string",
            }],
            "limits": {
                "string": "string",
            },
            "requests": {
                "string": "string",
            },
        },
        "service": {
            "annotations": {
                "string": "string",
            },
            "cluster_ip": "string",
            "external_ips": ["string"],
            "load_balancer_ip": "string",
            "load_balancer_source_ranges": ["string"],
            "service_port": 0,
            "type": "string",
        },
        "service_account": {
            "automount_service_account_token": False,
            "create": False,
            "name": "string",
        },
        "tolerations": [{
            "effect": "string",
            "key": "string",
            "operator": "string",
            "toleration_seconds": 0,
            "value": "string",
        }],
    },
    dh_param="string",
    fullname_override="string",
    helm_options={
        "atomic": False,
        "chart": "string",
        "cleanup_on_fail": False,
        "create_namespace": False,
        "dependency_update": False,
        "description": "string",
        "devel": False,
        "disable_crd_hooks": False,
        "disable_openapi_validation": False,
        "disable_webhooks": False,
        "force_update": False,
        "keyring": "string",
        "lint": False,
        "manifest": {
            "string": "any",
        },
        "max_history": 0,
        "name": "string",
        "namespace": "string",
        "postrender": "string",
        "recreate_pods": False,
        "render_subchart_notes": False,
        "replace": False,
        "repository_opts": {
            "ca_file": "string",
            "cert_file": "string",
            "key_file": "string",
            "password": "string",
            "repo": "string",
            "username": "string",
        },
        "reset_values": False,
        "resource_names": {
            "string": ["string"],
        },
        "reuse_values": False,
        "skip_await": False,
        "skip_crds": False,
        "timeout": 0,
        "value_yaml_files": [pulumi.StringAsset("content")],
        "values": {
            "string": "any",
        },
        "verify": False,
        "version": "string",
        "wait_for_jobs": False,
    },
    image_pull_secrets=[{
        "name": "string",
    }],
    name_override="string",
    pod_security_policy={
        "enabled": False,
    },
    rbac={
        "create": False,
        "scope": False,
    },
    revision_history_limit=0,
    service_account={
        "automount_service_account_token": False,
        "create": False,
        "name": "string",
    },
    tcp={
        "string": {
            "string": "string",
        },
    },
    udp={
        "string": {
            "string": "string",
        },
    })
const ingressControllerResource = new kubernetes_ingress_nginx.IngressController("ingressControllerResource", {
    controller: {
        addHeaders: {
            string: {
                string: "string",
            },
        },
        admissionWebhooks: {
            annotations: {
                string: "string",
            },
            certificate: "string",
            createSecretJob: {
                resources: {
                    claims: [{
                        name: "string",
                        request: "string",
                    }],
                    limits: {
                        string: "string",
                    },
                    requests: {
                        string: "string",
                    },
                },
            },
            enabled: false,
            existingPsp: "string",
            failurePolicy: "string",
            key: "string",
            namespaceSelector: {
                string: {
                    string: "string",
                },
            },
            objectSelector: {
                string: {
                    string: "string",
                },
            },
            patch: {
                enabled: false,
                image: {
                    allowPrivilegeEscalation: false,
                    digest: "string",
                    image: "string",
                    pullPolicy: "string",
                    readOnlyRootFilesystem: false,
                    registry: "string",
                    repository: "string",
                    runAsNonRoot: false,
                    runAsUser: "string",
                    tag: "string",
                },
                nodeSelector: {
                    string: "string",
                },
                podAnnotations: {
                    string: "string",
                },
                priorityClassName: "string",
                runAsUser: 0,
                tolerations: [{
                    effect: "string",
                    key: "string",
                    operator: "string",
                    tolerationSeconds: 0,
                    value: "string",
                }],
            },
            patchWebhookJob: {
                resources: {
                    claims: [{
                        name: "string",
                        request: "string",
                    }],
                    limits: {
                        string: "string",
                    },
                    requests: {
                        string: "string",
                    },
                },
            },
            port: 0,
            service: {
                annotations: {
                    string: "string",
                },
                clusterIP: "string",
                externalIPs: ["string"],
                loadBalancerIPs: "string",
                loadBalancerSourceRanges: ["string"],
                servicePort: 0,
                type: "string",
            },
            timeoutSeconds: 0,
        },
        affinity: {
            nodeAffinity: {
                preferredDuringSchedulingIgnoredDuringExecution: [{
                    preference: {
                        matchExpressions: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                        matchFields: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                    },
                    weight: 0,
                }],
                requiredDuringSchedulingIgnoredDuringExecution: {
                    nodeSelectorTerms: [{
                        matchExpressions: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                        matchFields: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                    }],
                },
            },
            podAffinity: {
                preferredDuringSchedulingIgnoredDuringExecution: [{
                    podAffinityTerm: {
                        topologyKey: "string",
                        labelSelector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                        matchLabelKeys: ["string"],
                        mismatchLabelKeys: ["string"],
                        namespaceSelector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                        namespaces: ["string"],
                    },
                    weight: 0,
                }],
                requiredDuringSchedulingIgnoredDuringExecution: [{
                    topologyKey: "string",
                    labelSelector: {
                        matchExpressions: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                        matchLabels: {
                            string: "string",
                        },
                    },
                    matchLabelKeys: ["string"],
                    mismatchLabelKeys: ["string"],
                    namespaceSelector: {
                        matchExpressions: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                        matchLabels: {
                            string: "string",
                        },
                    },
                    namespaces: ["string"],
                }],
            },
            podAntiAffinity: {
                preferredDuringSchedulingIgnoredDuringExecution: [{
                    podAffinityTerm: {
                        topologyKey: "string",
                        labelSelector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                        matchLabelKeys: ["string"],
                        mismatchLabelKeys: ["string"],
                        namespaceSelector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                        namespaces: ["string"],
                    },
                    weight: 0,
                }],
                requiredDuringSchedulingIgnoredDuringExecution: [{
                    topologyKey: "string",
                    labelSelector: {
                        matchExpressions: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                        matchLabels: {
                            string: "string",
                        },
                    },
                    matchLabelKeys: ["string"],
                    mismatchLabelKeys: ["string"],
                    namespaceSelector: {
                        matchExpressions: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                        matchLabels: {
                            string: "string",
                        },
                    },
                    namespaces: ["string"],
                }],
            },
        },
        allowSnippetAnnotations: false,
        annotations: {
            string: "string",
        },
        autoscaling: {
            annotations: {
                string: "string",
            },
            controllerAutoscalingBehavior: {
                scaleDown: {
                    policies: [{
                        periodSeconds: 0,
                        type: "string",
                        value: 0,
                    }],
                    stabilizationWindowSeconds: 0,
                },
                scaleUp: {
                    policies: [{
                        periodSeconds: 0,
                        type: "string",
                        value: 0,
                    }],
                    stabilizationWindowSeconds: 0,
                },
            },
            enabled: false,
            maxReplicas: 0,
            minReplicas: 0,
            targetCPUUtilizationPercentage: 0,
            targetMemoryUtilizationPercentage: 0,
        },
        autoscalingTemplate: [{
            pods: {
                metric: {
                    name: "string",
                },
                target: {
                    averageValue: "string",
                    type: "string",
                },
            },
            type: "string",
        }],
        config: {
            string: "string",
        },
        configAnnotations: {
            string: "string",
        },
        configMapNamespace: "string",
        containerName: "string",
        containerPort: {
            http: 0,
            https: 0,
        },
        customTemplate: {
            configMapKey: "string",
            configMapName: "string",
        },
        dnsConfig: {
            string: "string",
        },
        dnsPolicy: "string",
        electionID: "string",
        enableMimalloc: false,
        existingPsp: "string",
        extraArgs: {
            string: "string",
        },
        extraContainers: [{
            name: "string",
            resources: {
                claims: [{
                    name: "string",
                    request: "string",
                }],
                limits: {
                    string: "string",
                },
                requests: {
                    string: "string",
                },
            },
            ports: [{
                containerPort: 0,
                hostIP: "string",
                hostPort: 0,
                name: "string",
                protocol: "string",
            }],
            envFrom: [{
                configMapRef: {
                    name: "string",
                    optional: false,
                },
                prefix: "string",
                secretRef: {
                    name: "string",
                    optional: false,
                },
            }],
            image: "string",
            imagePullPolicy: "string",
            lifecycle: {
                postStart: {
                    exec: {
                        command: ["string"],
                    },
                    httpGet: {
                        port: 0,
                        host: "string",
                        httpHeaders: [{
                            name: "string",
                            value: "string",
                        }],
                        path: "string",
                        scheme: "string",
                    },
                    sleep: {
                        seconds: 0,
                    },
                    tcpSocket: {
                        port: 0,
                        host: "string",
                    },
                },
                preStop: {
                    exec: {
                        command: ["string"],
                    },
                    httpGet: {
                        port: 0,
                        host: "string",
                        httpHeaders: [{
                            name: "string",
                            value: "string",
                        }],
                        path: "string",
                        scheme: "string",
                    },
                    sleep: {
                        seconds: 0,
                    },
                    tcpSocket: {
                        port: 0,
                        host: "string",
                    },
                },
            },
            livenessProbe: {
                exec: {
                    command: ["string"],
                },
                failureThreshold: 0,
                grpc: {
                    port: 0,
                    service: "string",
                },
                httpGet: {
                    port: 0,
                    host: "string",
                    httpHeaders: [{
                        name: "string",
                        value: "string",
                    }],
                    path: "string",
                    scheme: "string",
                },
                initialDelaySeconds: 0,
                periodSeconds: 0,
                successThreshold: 0,
                tcpSocket: {
                    port: 0,
                    host: "string",
                },
                terminationGracePeriodSeconds: 0,
                timeoutSeconds: 0,
            },
            restartPolicy: "string",
            args: ["string"],
            readinessProbe: {
                exec: {
                    command: ["string"],
                },
                failureThreshold: 0,
                grpc: {
                    port: 0,
                    service: "string",
                },
                httpGet: {
                    port: 0,
                    host: "string",
                    httpHeaders: [{
                        name: "string",
                        value: "string",
                    }],
                    path: "string",
                    scheme: "string",
                },
                initialDelaySeconds: 0,
                periodSeconds: 0,
                successThreshold: 0,
                tcpSocket: {
                    port: 0,
                    host: "string",
                },
                terminationGracePeriodSeconds: 0,
                timeoutSeconds: 0,
            },
            env: [{
                name: "string",
                value: "string",
                valueFrom: {
                    configMapKeyRef: {
                        key: "string",
                        name: "string",
                        optional: false,
                    },
                    fieldRef: {
                        fieldPath: "string",
                        apiVersion: "string",
                    },
                    resourceFieldRef: {
                        resource: "string",
                        containerName: "string",
                        divisor: "string",
                    },
                    secretKeyRef: {
                        key: "string",
                        name: "string",
                        optional: false,
                    },
                },
            }],
            resizePolicy: [{
                resourceName: "string",
                restartPolicy: "string",
            }],
            command: ["string"],
            securityContext: {
                allowPrivilegeEscalation: false,
                appArmorProfile: {
                    type: "string",
                    localhostProfile: "string",
                },
                capabilities: {
                    add: ["string"],
                    drop: ["string"],
                },
                privileged: false,
                procMount: "string",
                readOnlyRootFilesystem: false,
                runAsGroup: 0,
                runAsNonRoot: false,
                runAsUser: 0,
                seLinuxOptions: {
                    level: "string",
                    role: "string",
                    type: "string",
                    user: "string",
                },
                seccompProfile: {
                    type: "string",
                    localhostProfile: "string",
                },
                windowsOptions: {
                    gmsaCredentialSpec: "string",
                    gmsaCredentialSpecName: "string",
                    hostProcess: false,
                    runAsUserName: "string",
                },
            },
            startupProbe: {
                exec: {
                    command: ["string"],
                },
                failureThreshold: 0,
                grpc: {
                    port: 0,
                    service: "string",
                },
                httpGet: {
                    port: 0,
                    host: "string",
                    httpHeaders: [{
                        name: "string",
                        value: "string",
                    }],
                    path: "string",
                    scheme: "string",
                },
                initialDelaySeconds: 0,
                periodSeconds: 0,
                successThreshold: 0,
                tcpSocket: {
                    port: 0,
                    host: "string",
                },
                terminationGracePeriodSeconds: 0,
                timeoutSeconds: 0,
            },
            stdin: false,
            stdinOnce: false,
            terminationMessagePath: "string",
            terminationMessagePolicy: "string",
            tty: false,
            volumeDevices: [{
                devicePath: "string",
                name: "string",
            }],
            volumeMounts: [{
                mountPath: "string",
                name: "string",
                mountPropagation: "string",
                readOnly: false,
                recursiveReadOnly: "string",
                subPath: "string",
                subPathExpr: "string",
            }],
            workingDir: "string",
        }],
        extraEnvs: [{
            name: "string",
            value: "string",
            valueFrom: {
                configMapKeyRef: {
                    key: "string",
                    name: "string",
                    optional: false,
                },
                fieldRef: {
                    fieldPath: "string",
                    apiVersion: "string",
                },
                resourceFieldRef: {
                    resource: "string",
                    containerName: "string",
                    divisor: "string",
                },
                secretKeyRef: {
                    key: "string",
                    name: "string",
                    optional: false,
                },
            },
        }],
        extraInitContainers: [{
            name: "string",
            resources: {
                claims: [{
                    name: "string",
                    request: "string",
                }],
                limits: {
                    string: "string",
                },
                requests: {
                    string: "string",
                },
            },
            ports: [{
                containerPort: 0,
                hostIP: "string",
                hostPort: 0,
                name: "string",
                protocol: "string",
            }],
            envFrom: [{
                configMapRef: {
                    name: "string",
                    optional: false,
                },
                prefix: "string",
                secretRef: {
                    name: "string",
                    optional: false,
                },
            }],
            image: "string",
            imagePullPolicy: "string",
            lifecycle: {
                postStart: {
                    exec: {
                        command: ["string"],
                    },
                    httpGet: {
                        port: 0,
                        host: "string",
                        httpHeaders: [{
                            name: "string",
                            value: "string",
                        }],
                        path: "string",
                        scheme: "string",
                    },
                    sleep: {
                        seconds: 0,
                    },
                    tcpSocket: {
                        port: 0,
                        host: "string",
                    },
                },
                preStop: {
                    exec: {
                        command: ["string"],
                    },
                    httpGet: {
                        port: 0,
                        host: "string",
                        httpHeaders: [{
                            name: "string",
                            value: "string",
                        }],
                        path: "string",
                        scheme: "string",
                    },
                    sleep: {
                        seconds: 0,
                    },
                    tcpSocket: {
                        port: 0,
                        host: "string",
                    },
                },
            },
            livenessProbe: {
                exec: {
                    command: ["string"],
                },
                failureThreshold: 0,
                grpc: {
                    port: 0,
                    service: "string",
                },
                httpGet: {
                    port: 0,
                    host: "string",
                    httpHeaders: [{
                        name: "string",
                        value: "string",
                    }],
                    path: "string",
                    scheme: "string",
                },
                initialDelaySeconds: 0,
                periodSeconds: 0,
                successThreshold: 0,
                tcpSocket: {
                    port: 0,
                    host: "string",
                },
                terminationGracePeriodSeconds: 0,
                timeoutSeconds: 0,
            },
            restartPolicy: "string",
            args: ["string"],
            readinessProbe: {
                exec: {
                    command: ["string"],
                },
                failureThreshold: 0,
                grpc: {
                    port: 0,
                    service: "string",
                },
                httpGet: {
                    port: 0,
                    host: "string",
                    httpHeaders: [{
                        name: "string",
                        value: "string",
                    }],
                    path: "string",
                    scheme: "string",
                },
                initialDelaySeconds: 0,
                periodSeconds: 0,
                successThreshold: 0,
                tcpSocket: {
                    port: 0,
                    host: "string",
                },
                terminationGracePeriodSeconds: 0,
                timeoutSeconds: 0,
            },
            env: [{
                name: "string",
                value: "string",
                valueFrom: {
                    configMapKeyRef: {
                        key: "string",
                        name: "string",
                        optional: false,
                    },
                    fieldRef: {
                        fieldPath: "string",
                        apiVersion: "string",
                    },
                    resourceFieldRef: {
                        resource: "string",
                        containerName: "string",
                        divisor: "string",
                    },
                    secretKeyRef: {
                        key: "string",
                        name: "string",
                        optional: false,
                    },
                },
            }],
            resizePolicy: [{
                resourceName: "string",
                restartPolicy: "string",
            }],
            command: ["string"],
            securityContext: {
                allowPrivilegeEscalation: false,
                appArmorProfile: {
                    type: "string",
                    localhostProfile: "string",
                },
                capabilities: {
                    add: ["string"],
                    drop: ["string"],
                },
                privileged: false,
                procMount: "string",
                readOnlyRootFilesystem: false,
                runAsGroup: 0,
                runAsNonRoot: false,
                runAsUser: 0,
                seLinuxOptions: {
                    level: "string",
                    role: "string",
                    type: "string",
                    user: "string",
                },
                seccompProfile: {
                    type: "string",
                    localhostProfile: "string",
                },
                windowsOptions: {
                    gmsaCredentialSpec: "string",
                    gmsaCredentialSpecName: "string",
                    hostProcess: false,
                    runAsUserName: "string",
                },
            },
            startupProbe: {
                exec: {
                    command: ["string"],
                },
                failureThreshold: 0,
                grpc: {
                    port: 0,
                    service: "string",
                },
                httpGet: {
                    port: 0,
                    host: "string",
                    httpHeaders: [{
                        name: "string",
                        value: "string",
                    }],
                    path: "string",
                    scheme: "string",
                },
                initialDelaySeconds: 0,
                periodSeconds: 0,
                successThreshold: 0,
                tcpSocket: {
                    port: 0,
                    host: "string",
                },
                terminationGracePeriodSeconds: 0,
                timeoutSeconds: 0,
            },
            stdin: false,
            stdinOnce: false,
            terminationMessagePath: "string",
            terminationMessagePolicy: "string",
            tty: false,
            volumeDevices: [{
                devicePath: "string",
                name: "string",
            }],
            volumeMounts: [{
                mountPath: "string",
                name: "string",
                mountPropagation: "string",
                readOnly: false,
                recursiveReadOnly: "string",
                subPath: "string",
                subPathExpr: "string",
            }],
            workingDir: "string",
        }],
        extraVolumeMounts: [{
            mountPath: "string",
            name: "string",
            mountPropagation: "string",
            readOnly: false,
            recursiveReadOnly: "string",
            subPath: "string",
            subPathExpr: "string",
        }],
        extraVolumes: [{
            name: "string",
            gitRepo: {
                repository: "string",
                directory: "string",
                revision: "string",
            },
            persistentVolumeClaim: {
                claimName: "string",
                readOnly: false,
            },
            cephfs: {
                monitors: ["string"],
                path: "string",
                readOnly: false,
                secretFile: "string",
                secretRef: {
                    name: "string",
                },
                user: "string",
            },
            cinder: {
                volumeID: "string",
                fsType: "string",
                readOnly: false,
                secretRef: {
                    name: "string",
                },
            },
            configMap: {
                defaultMode: 0,
                items: [{
                    key: "string",
                    path: "string",
                    mode: 0,
                }],
                name: "string",
                optional: false,
            },
            csi: {
                driver: "string",
                fsType: "string",
                nodePublishSecretRef: {
                    name: "string",
                },
                readOnly: false,
                volumeAttributes: {
                    string: "string",
                },
            },
            downwardAPI: {
                defaultMode: 0,
                items: [{
                    path: "string",
                    fieldRef: {
                        fieldPath: "string",
                        apiVersion: "string",
                    },
                    mode: 0,
                    resourceFieldRef: {
                        resource: "string",
                        containerName: "string",
                        divisor: "string",
                    },
                }],
            },
            emptyDir: {
                medium: "string",
                sizeLimit: "string",
            },
            ephemeral: {
                readOnly: false,
                volumeClaimTemplate: {
                    spec: {
                        accessModes: ["string"],
                        dataSource: {
                            kind: "string",
                            name: "string",
                            apiGroup: "string",
                        },
                        dataSourceRef: {
                            kind: "string",
                            name: "string",
                            apiGroup: "string",
                            namespace: "string",
                        },
                        resources: {
                            limits: {
                                string: "string",
                            },
                            requests: {
                                string: "string",
                            },
                        },
                        selector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                        storageClassName: "string",
                        volumeAttributesClassName: "string",
                        volumeMode: "string",
                        volumeName: "string",
                    },
                    metadata: {
                        annotations: {
                            string: "string",
                        },
                        clusterName: "string",
                        creationTimestamp: "string",
                        deletionGracePeriodSeconds: 0,
                        deletionTimestamp: "string",
                        finalizers: ["string"],
                        generateName: "string",
                        generation: 0,
                        labels: {
                            string: "string",
                        },
                        managedFields: [{
                            apiVersion: "string",
                            fieldsType: "string",
                            fieldsV1: "{}",
                            manager: "string",
                            operation: "string",
                            subresource: "string",
                            time: "string",
                        }],
                        name: "string",
                        namespace: "string",
                        ownerReferences: [{
                            apiVersion: "string",
                            kind: "string",
                            name: "string",
                            uid: "string",
                            blockOwnerDeletion: false,
                            controller: false,
                        }],
                        resourceVersion: "string",
                        selfLink: "string",
                        uid: "string",
                    },
                },
            },
            fc: {
                fsType: "string",
                lun: 0,
                readOnly: false,
                targetWWNs: ["string"],
                wwids: ["string"],
            },
            flexVolume: {
                driver: "string",
                fsType: "string",
                options: {
                    string: "string",
                },
                readOnly: false,
                secretRef: {
                    name: "string",
                },
            },
            flocker: {
                datasetName: "string",
                datasetUUID: "string",
            },
            gcePersistentDisk: {
                pdName: "string",
                fsType: "string",
                partition: 0,
                readOnly: false,
            },
            awsElasticBlockStore: {
                volumeID: "string",
                fsType: "string",
                partition: 0,
                readOnly: false,
            },
            azureFile: {
                secretName: "string",
                shareName: "string",
                readOnly: false,
            },
            glusterfs: {
                endpoints: "string",
                path: "string",
                readOnly: false,
            },
            portworxVolume: {
                volumeID: "string",
                fsType: "string",
                readOnly: false,
            },
            iscsi: {
                iqn: "string",
                lun: 0,
                targetPortal: "string",
                chapAuthDiscovery: false,
                chapAuthSession: false,
                fsType: "string",
                initiatorName: "string",
                iscsiInterface: "string",
                portals: ["string"],
                readOnly: false,
                secretRef: {
                    name: "string",
                },
            },
            azureDisk: {
                diskName: "string",
                diskURI: "string",
                cachingMode: "string",
                fsType: "string",
                kind: "string",
                readOnly: false,
            },
            nfs: {
                path: "string",
                server: "string",
                readOnly: false,
            },
            hostPath: {
                path: "string",
                type: "string",
            },
            photonPersistentDisk: {
                pdID: "string",
                fsType: "string",
            },
            image: {
                pullPolicy: "string",
                reference: "string",
            },
            projected: {
                sources: [{
                    clusterTrustBundle: {
                        path: "string",
                        labelSelector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                        name: "string",
                        optional: false,
                        signerName: "string",
                    },
                    configMap: {
                        items: [{
                            key: "string",
                            path: "string",
                            mode: 0,
                        }],
                        name: "string",
                        optional: false,
                    },
                    downwardAPI: {
                        items: [{
                            path: "string",
                            fieldRef: {
                                fieldPath: "string",
                                apiVersion: "string",
                            },
                            mode: 0,
                            resourceFieldRef: {
                                resource: "string",
                                containerName: "string",
                                divisor: "string",
                            },
                        }],
                    },
                    secret: {
                        items: [{
                            key: "string",
                            path: "string",
                            mode: 0,
                        }],
                        name: "string",
                        optional: false,
                    },
                    serviceAccountToken: {
                        path: "string",
                        audience: "string",
                        expirationSeconds: 0,
                    },
                }],
                defaultMode: 0,
            },
            quobyte: {
                registry: "string",
                volume: "string",
                group: "string",
                readOnly: false,
                tenant: "string",
                user: "string",
            },
            rbd: {
                image: "string",
                monitors: ["string"],
                fsType: "string",
                keyring: "string",
                pool: "string",
                readOnly: false,
                secretRef: {
                    name: "string",
                },
                user: "string",
            },
            scaleIO: {
                gateway: "string",
                secretRef: {
                    name: "string",
                },
                system: "string",
                fsType: "string",
                protectionDomain: "string",
                readOnly: false,
                sslEnabled: false,
                storageMode: "string",
                storagePool: "string",
                volumeName: "string",
            },
            secret: {
                defaultMode: 0,
                items: [{
                    key: "string",
                    path: "string",
                    mode: 0,
                }],
                optional: false,
                secretName: "string",
            },
            storageos: {
                fsType: "string",
                readOnly: false,
                secretRef: {
                    name: "string",
                },
                volumeName: "string",
                volumeNamespace: "string",
            },
            vsphereVolume: {
                volumePath: "string",
                fsType: "string",
                storagePolicyID: "string",
                storagePolicyName: "string",
            },
        }],
        healthCheckPath: "string",
        heathCheckHost: "string",
        hostNetwork: false,
        hostPort: {
            enabled: false,
            ports: {
                http: 0,
                https: 0,
            },
        },
        hostname: {
            string: {
                string: "string",
            },
        },
        image: {
            allowPrivilegeEscalation: false,
            digest: "string",
            image: "string",
            pullPolicy: "string",
            readOnlyRootFilesystem: false,
            registry: "string",
            repository: "string",
            runAsNonRoot: false,
            runAsUser: "string",
            tag: "string",
        },
        ingressClassByName: false,
        ingressClassResource: {
            controllerValue: "string",
            "default": false,
            enabled: false,
            name: "string",
            parameters: {
                string: {
                    string: "string",
                },
            },
        },
        keda: {
            apiVersion: "string",
            behavior: {
                scaleDown: {
                    policies: [{
                        periodSeconds: 0,
                        type: "string",
                        value: 0,
                    }],
                    stabilizationWindowSeconds: 0,
                },
                scaleUp: {
                    policies: [{
                        periodSeconds: 0,
                        type: "string",
                        value: 0,
                    }],
                    stabilizationWindowSeconds: 0,
                },
            },
            cooldownPeriod: 0,
            enabled: false,
            maxReplicas: 0,
            minReplicas: 0,
            pollingInterval: 0,
            restoreToOriginalReplicaCount: false,
            scaledObject: {
                annotations: {
                    string: "string",
                },
            },
            triggers: [{
                metadata: {
                    string: {
                        string: "string",
                    },
                },
                type: "string",
            }],
        },
        kind: "string",
        lifecycle: {
            postStart: {
                exec: {
                    command: ["string"],
                },
                httpGet: {
                    port: 0,
                    host: "string",
                    httpHeaders: [{
                        name: "string",
                        value: "string",
                    }],
                    path: "string",
                    scheme: "string",
                },
                sleep: {
                    seconds: 0,
                },
                tcpSocket: {
                    port: 0,
                    host: "string",
                },
            },
            preStop: {
                exec: {
                    command: ["string"],
                },
                httpGet: {
                    port: 0,
                    host: "string",
                    httpHeaders: [{
                        name: "string",
                        value: "string",
                    }],
                    path: "string",
                    scheme: "string",
                },
                sleep: {
                    seconds: 0,
                },
                tcpSocket: {
                    port: 0,
                    host: "string",
                },
            },
        },
        livenessProbe: {
            exec: {
                command: ["string"],
            },
            failureThreshold: 0,
            grpc: {
                port: 0,
                service: "string",
            },
            httpGet: {
                port: 0,
                host: "string",
                httpHeaders: [{
                    name: "string",
                    value: "string",
                }],
                path: "string",
                scheme: "string",
            },
            initialDelaySeconds: 0,
            periodSeconds: 0,
            successThreshold: 0,
            tcpSocket: {
                port: 0,
                host: "string",
            },
            terminationGracePeriodSeconds: 0,
            timeoutSeconds: 0,
        },
        maxmindLicenseKey: "string",
        metrics: {
            enabled: false,
            port: 0,
            prometheusRule: {
                additionalLabels: {
                    string: "string",
                },
                enabled: false,
                namespace: "string",
                rules: [{
                    string: "string",
                }],
            },
            service: {
                annotations: {
                    string: "string",
                },
                clusterIP: "string",
                externalIPs: ["string"],
                externalTrafficPolicy: "string",
                loadBalancerIPs: "string",
                loadBalancerSourceRanges: ["string"],
                nodePort: "string",
                servicePort: 0,
                type: "string",
            },
            serviceMonitor: {
                additionalLabels: {
                    string: "string",
                },
                enabled: false,
                honorLabels: false,
                jobLabel: "string",
                metricRelabelings: ["string"],
                namespace: "string",
                namespaceSelector: {
                    string: {
                        string: "string",
                    },
                },
                scrapeInterval: "string",
                targetLabels: ["string"],
            },
        },
        minAvailable: 0,
        minReadySeconds: 0,
        name: "string",
        nodeSelector: {
            string: "string",
        },
        podAnnotations: {
            string: "string",
        },
        podLabels: {
            string: "string",
        },
        podSecurityContext: {
            appArmorProfile: {
                type: "string",
                localhostProfile: "string",
            },
            fsGroup: 0,
            fsGroupChangePolicy: "string",
            runAsGroup: 0,
            runAsNonRoot: false,
            runAsUser: 0,
            seLinuxChangePolicy: "string",
            seLinuxOptions: {
                level: "string",
                role: "string",
                type: "string",
                user: "string",
            },
            seccompProfile: {
                type: "string",
                localhostProfile: "string",
            },
            supplementalGroups: [0],
            supplementalGroupsPolicy: "string",
            sysctls: [{
                name: "string",
                value: "string",
            }],
            windowsOptions: {
                gmsaCredentialSpec: "string",
                gmsaCredentialSpecName: "string",
                hostProcess: false,
                runAsUserName: "string",
            },
        },
        priorityClassName: "string",
        proxySetHeaders: {
            string: {
                string: "string",
            },
        },
        publishService: {
            enabled: false,
            pathOverride: "string",
        },
        readinessProbe: {
            exec: {
                command: ["string"],
            },
            failureThreshold: 0,
            grpc: {
                port: 0,
                service: "string",
            },
            httpGet: {
                port: 0,
                host: "string",
                httpHeaders: [{
                    name: "string",
                    value: "string",
                }],
                path: "string",
                scheme: "string",
            },
            initialDelaySeconds: 0,
            periodSeconds: 0,
            successThreshold: 0,
            tcpSocket: {
                port: 0,
                host: "string",
            },
            terminationGracePeriodSeconds: 0,
            timeoutSeconds: 0,
        },
        replicaCount: 0,
        reportNodeInternalIp: false,
        resources: {
            claims: [{
                name: "string",
                request: "string",
            }],
            limits: {
                string: "string",
            },
            requests: {
                string: "string",
            },
        },
        scope: {
            enabled: false,
            namespace: "string",
        },
        service: {
            annotations: {
                string: "string",
            },
            clusterIP: "string",
            enableHttp: false,
            enableHttps: false,
            enabled: false,
            externalIPs: ["string"],
            externalTrafficPolicy: "string",
            healthCheckNodePort: 0,
            internal: {
                annotations: {
                    string: "string",
                },
                enabled: false,
                externalTrafficPolicy: "string",
                labels: {
                    string: "string",
                },
                loadBalancerIPs: "string",
                loadBalancerSourceRanges: ["string"],
            },
            labels: {
                string: "string",
            },
            loadBalancerIP: "string",
            loadBalancerIPs: "string",
            loadBalancerSourceRanges: ["string"],
            nodePorts: {
                http: "string",
                https: "string",
                tcp: {
                    string: {
                        string: "string",
                    },
                },
                udp: {
                    string: {
                        string: "string",
                    },
                },
            },
            ports: {
                http: 0,
                https: 0,
            },
            sessionAffinity: "string",
            targetPorts: {
                http: 0,
                https: 0,
            },
            type: "string",
        },
        startupProbe: {
            exec: {
                command: ["string"],
            },
            failureThreshold: 0,
            grpc: {
                port: 0,
                service: "string",
            },
            httpGet: {
                port: 0,
                host: "string",
                httpHeaders: [{
                    name: "string",
                    value: "string",
                }],
                path: "string",
                scheme: "string",
            },
            initialDelaySeconds: 0,
            periodSeconds: 0,
            successThreshold: 0,
            tcpSocket: {
                port: 0,
                host: "string",
            },
            terminationGracePeriodSeconds: 0,
            timeoutSeconds: 0,
        },
        sysctls: {
            string: {
                string: "string",
            },
        },
        tcp: {
            annotations: {
                string: "string",
            },
            configMapNamespace: "string",
        },
        terminateGracePeriodSeconds: 0,
        tolerations: {
            effect: "string",
            key: "string",
            operator: "string",
            tolerationSeconds: 0,
            value: "string",
        },
        topologySpreadConstraints: [{
            maxSkew: 0,
            topologyKey: "string",
            whenUnsatisfiable: "string",
            labelSelector: {
                matchExpressions: [{
                    key: "string",
                    operator: "string",
                    values: ["string"],
                }],
                matchLabels: {
                    string: "string",
                },
            },
            matchLabelKeys: ["string"],
            minDomains: 0,
            nodeAffinityPolicy: "string",
            nodeTaintsPolicy: "string",
        }],
        udp: {
            annotations: {
                string: "string",
            },
            configMapNamespace: "string",
        },
        updateStrategy: {
            rollingUpdate: {
                maxUnavailable: 0,
            },
            type: "string",
        },
        watchIngressWithoutClass: false,
    },
    defaultBackend: {
        affinity: {
            nodeAffinity: {
                preferredDuringSchedulingIgnoredDuringExecution: [{
                    preference: {
                        matchExpressions: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                        matchFields: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                    },
                    weight: 0,
                }],
                requiredDuringSchedulingIgnoredDuringExecution: {
                    nodeSelectorTerms: [{
                        matchExpressions: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                        matchFields: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                    }],
                },
            },
            podAffinity: {
                preferredDuringSchedulingIgnoredDuringExecution: [{
                    podAffinityTerm: {
                        topologyKey: "string",
                        labelSelector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                        matchLabelKeys: ["string"],
                        mismatchLabelKeys: ["string"],
                        namespaceSelector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                        namespaces: ["string"],
                    },
                    weight: 0,
                }],
                requiredDuringSchedulingIgnoredDuringExecution: [{
                    topologyKey: "string",
                    labelSelector: {
                        matchExpressions: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                        matchLabels: {
                            string: "string",
                        },
                    },
                    matchLabelKeys: ["string"],
                    mismatchLabelKeys: ["string"],
                    namespaceSelector: {
                        matchExpressions: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                        matchLabels: {
                            string: "string",
                        },
                    },
                    namespaces: ["string"],
                }],
            },
            podAntiAffinity: {
                preferredDuringSchedulingIgnoredDuringExecution: [{
                    podAffinityTerm: {
                        topologyKey: "string",
                        labelSelector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                        matchLabelKeys: ["string"],
                        mismatchLabelKeys: ["string"],
                        namespaceSelector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                        namespaces: ["string"],
                    },
                    weight: 0,
                }],
                requiredDuringSchedulingIgnoredDuringExecution: [{
                    topologyKey: "string",
                    labelSelector: {
                        matchExpressions: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                        matchLabels: {
                            string: "string",
                        },
                    },
                    matchLabelKeys: ["string"],
                    mismatchLabelKeys: ["string"],
                    namespaceSelector: {
                        matchExpressions: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                        matchLabels: {
                            string: "string",
                        },
                    },
                    namespaces: ["string"],
                }],
            },
        },
        autoscaling: {
            annotations: {
                string: "string",
            },
            controllerAutoscalingBehavior: {
                scaleDown: {
                    policies: [{
                        periodSeconds: 0,
                        type: "string",
                        value: 0,
                    }],
                    stabilizationWindowSeconds: 0,
                },
                scaleUp: {
                    policies: [{
                        periodSeconds: 0,
                        type: "string",
                        value: 0,
                    }],
                    stabilizationWindowSeconds: 0,
                },
            },
            enabled: false,
            maxReplicas: 0,
            minReplicas: 0,
            targetCPUUtilizationPercentage: 0,
            targetMemoryUtilizationPercentage: 0,
        },
        enabled: false,
        existingPsp: "string",
        extraArgs: {
            string: {
                string: "string",
            },
        },
        extraEnvs: [{
            name: "string",
            value: "string",
            valueFrom: {
                configMapKeyRef: {
                    key: "string",
                    name: "string",
                    optional: false,
                },
                fieldRef: {
                    fieldPath: "string",
                    apiVersion: "string",
                },
                resourceFieldRef: {
                    resource: "string",
                    containerName: "string",
                    divisor: "string",
                },
                secretKeyRef: {
                    key: "string",
                    name: "string",
                    optional: false,
                },
            },
        }],
        extraVolumeMounts: [{
            mountPath: "string",
            name: "string",
            mountPropagation: "string",
            readOnly: false,
            recursiveReadOnly: "string",
            subPath: "string",
            subPathExpr: "string",
        }],
        extraVolumes: [{
            name: "string",
            gitRepo: {
                repository: "string",
                directory: "string",
                revision: "string",
            },
            persistentVolumeClaim: {
                claimName: "string",
                readOnly: false,
            },
            cephfs: {
                monitors: ["string"],
                path: "string",
                readOnly: false,
                secretFile: "string",
                secretRef: {
                    name: "string",
                },
                user: "string",
            },
            cinder: {
                volumeID: "string",
                fsType: "string",
                readOnly: false,
                secretRef: {
                    name: "string",
                },
            },
            configMap: {
                defaultMode: 0,
                items: [{
                    key: "string",
                    path: "string",
                    mode: 0,
                }],
                name: "string",
                optional: false,
            },
            csi: {
                driver: "string",
                fsType: "string",
                nodePublishSecretRef: {
                    name: "string",
                },
                readOnly: false,
                volumeAttributes: {
                    string: "string",
                },
            },
            downwardAPI: {
                defaultMode: 0,
                items: [{
                    path: "string",
                    fieldRef: {
                        fieldPath: "string",
                        apiVersion: "string",
                    },
                    mode: 0,
                    resourceFieldRef: {
                        resource: "string",
                        containerName: "string",
                        divisor: "string",
                    },
                }],
            },
            emptyDir: {
                medium: "string",
                sizeLimit: "string",
            },
            ephemeral: {
                readOnly: false,
                volumeClaimTemplate: {
                    spec: {
                        accessModes: ["string"],
                        dataSource: {
                            kind: "string",
                            name: "string",
                            apiGroup: "string",
                        },
                        dataSourceRef: {
                            kind: "string",
                            name: "string",
                            apiGroup: "string",
                            namespace: "string",
                        },
                        resources: {
                            limits: {
                                string: "string",
                            },
                            requests: {
                                string: "string",
                            },
                        },
                        selector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                        storageClassName: "string",
                        volumeAttributesClassName: "string",
                        volumeMode: "string",
                        volumeName: "string",
                    },
                    metadata: {
                        annotations: {
                            string: "string",
                        },
                        clusterName: "string",
                        creationTimestamp: "string",
                        deletionGracePeriodSeconds: 0,
                        deletionTimestamp: "string",
                        finalizers: ["string"],
                        generateName: "string",
                        generation: 0,
                        labels: {
                            string: "string",
                        },
                        managedFields: [{
                            apiVersion: "string",
                            fieldsType: "string",
                            fieldsV1: "{}",
                            manager: "string",
                            operation: "string",
                            subresource: "string",
                            time: "string",
                        }],
                        name: "string",
                        namespace: "string",
                        ownerReferences: [{
                            apiVersion: "string",
                            kind: "string",
                            name: "string",
                            uid: "string",
                            blockOwnerDeletion: false,
                            controller: false,
                        }],
                        resourceVersion: "string",
                        selfLink: "string",
                        uid: "string",
                    },
                },
            },
            fc: {
                fsType: "string",
                lun: 0,
                readOnly: false,
                targetWWNs: ["string"],
                wwids: ["string"],
            },
            flexVolume: {
                driver: "string",
                fsType: "string",
                options: {
                    string: "string",
                },
                readOnly: false,
                secretRef: {
                    name: "string",
                },
            },
            flocker: {
                datasetName: "string",
                datasetUUID: "string",
            },
            gcePersistentDisk: {
                pdName: "string",
                fsType: "string",
                partition: 0,
                readOnly: false,
            },
            awsElasticBlockStore: {
                volumeID: "string",
                fsType: "string",
                partition: 0,
                readOnly: false,
            },
            azureFile: {
                secretName: "string",
                shareName: "string",
                readOnly: false,
            },
            glusterfs: {
                endpoints: "string",
                path: "string",
                readOnly: false,
            },
            portworxVolume: {
                volumeID: "string",
                fsType: "string",
                readOnly: false,
            },
            iscsi: {
                iqn: "string",
                lun: 0,
                targetPortal: "string",
                chapAuthDiscovery: false,
                chapAuthSession: false,
                fsType: "string",
                initiatorName: "string",
                iscsiInterface: "string",
                portals: ["string"],
                readOnly: false,
                secretRef: {
                    name: "string",
                },
            },
            azureDisk: {
                diskName: "string",
                diskURI: "string",
                cachingMode: "string",
                fsType: "string",
                kind: "string",
                readOnly: false,
            },
            nfs: {
                path: "string",
                server: "string",
                readOnly: false,
            },
            hostPath: {
                path: "string",
                type: "string",
            },
            photonPersistentDisk: {
                pdID: "string",
                fsType: "string",
            },
            image: {
                pullPolicy: "string",
                reference: "string",
            },
            projected: {
                sources: [{
                    clusterTrustBundle: {
                        path: "string",
                        labelSelector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                        name: "string",
                        optional: false,
                        signerName: "string",
                    },
                    configMap: {
                        items: [{
                            key: "string",
                            path: "string",
                            mode: 0,
                        }],
                        name: "string",
                        optional: false,
                    },
                    downwardAPI: {
                        items: [{
                            path: "string",
                            fieldRef: {
                                fieldPath: "string",
                                apiVersion: "string",
                            },
                            mode: 0,
                            resourceFieldRef: {
                                resource: "string",
                                containerName: "string",
                                divisor: "string",
                            },
                        }],
                    },
                    secret: {
                        items: [{
                            key: "string",
                            path: "string",
                            mode: 0,
                        }],
                        name: "string",
                        optional: false,
                    },
                    serviceAccountToken: {
                        path: "string",
                        audience: "string",
                        expirationSeconds: 0,
                    },
                }],
                defaultMode: 0,
            },
            quobyte: {
                registry: "string",
                volume: "string",
                group: "string",
                readOnly: false,
                tenant: "string",
                user: "string",
            },
            rbd: {
                image: "string",
                monitors: ["string"],
                fsType: "string",
                keyring: "string",
                pool: "string",
                readOnly: false,
                secretRef: {
                    name: "string",
                },
                user: "string",
            },
            scaleIO: {
                gateway: "string",
                secretRef: {
                    name: "string",
                },
                system: "string",
                fsType: "string",
                protectionDomain: "string",
                readOnly: false,
                sslEnabled: false,
                storageMode: "string",
                storagePool: "string",
                volumeName: "string",
            },
            secret: {
                defaultMode: 0,
                items: [{
                    key: "string",
                    path: "string",
                    mode: 0,
                }],
                optional: false,
                secretName: "string",
            },
            storageos: {
                fsType: "string",
                readOnly: false,
                secretRef: {
                    name: "string",
                },
                volumeName: "string",
                volumeNamespace: "string",
            },
            vsphereVolume: {
                volumePath: "string",
                fsType: "string",
                storagePolicyID: "string",
                storagePolicyName: "string",
            },
        }],
        image: {
            allowPrivilegeEscalation: false,
            digest: "string",
            image: "string",
            pullPolicy: "string",
            readOnlyRootFilesystem: false,
            registry: "string",
            repository: "string",
            runAsNonRoot: false,
            runAsUser: "string",
            tag: "string",
        },
        livenessProbe: {
            exec: {
                command: ["string"],
            },
            failureThreshold: 0,
            grpc: {
                port: 0,
                service: "string",
            },
            httpGet: {
                port: 0,
                host: "string",
                httpHeaders: [{
                    name: "string",
                    value: "string",
                }],
                path: "string",
                scheme: "string",
            },
            initialDelaySeconds: 0,
            periodSeconds: 0,
            successThreshold: 0,
            tcpSocket: {
                port: 0,
                host: "string",
            },
            terminationGracePeriodSeconds: 0,
            timeoutSeconds: 0,
        },
        minAvailable: 0,
        name: "string",
        nodeSelector: {
            string: "string",
        },
        podAnnotations: {
            string: "string",
        },
        podLabels: {
            string: "string",
        },
        podSecurityContext: {
            appArmorProfile: {
                type: "string",
                localhostProfile: "string",
            },
            fsGroup: 0,
            fsGroupChangePolicy: "string",
            runAsGroup: 0,
            runAsNonRoot: false,
            runAsUser: 0,
            seLinuxChangePolicy: "string",
            seLinuxOptions: {
                level: "string",
                role: "string",
                type: "string",
                user: "string",
            },
            seccompProfile: {
                type: "string",
                localhostProfile: "string",
            },
            supplementalGroups: [0],
            supplementalGroupsPolicy: "string",
            sysctls: [{
                name: "string",
                value: "string",
            }],
            windowsOptions: {
                gmsaCredentialSpec: "string",
                gmsaCredentialSpecName: "string",
                hostProcess: false,
                runAsUserName: "string",
            },
        },
        port: 0,
        priorityClassName: "string",
        readinessProbe: {
            exec: {
                command: ["string"],
            },
            failureThreshold: 0,
            grpc: {
                port: 0,
                service: "string",
            },
            httpGet: {
                port: 0,
                host: "string",
                httpHeaders: [{
                    name: "string",
                    value: "string",
                }],
                path: "string",
                scheme: "string",
            },
            initialDelaySeconds: 0,
            periodSeconds: 0,
            successThreshold: 0,
            tcpSocket: {
                port: 0,
                host: "string",
            },
            terminationGracePeriodSeconds: 0,
            timeoutSeconds: 0,
        },
        replicaCount: 0,
        resources: {
            claims: [{
                name: "string",
                request: "string",
            }],
            limits: {
                string: "string",
            },
            requests: {
                string: "string",
            },
        },
        service: {
            annotations: {
                string: "string",
            },
            clusterIP: "string",
            externalIPs: ["string"],
            loadBalancerIP: "string",
            loadBalancerSourceRanges: ["string"],
            servicePort: 0,
            type: "string",
        },
        serviceAccount: {
            automountServiceAccountToken: false,
            create: false,
            name: "string",
        },
        tolerations: [{
            effect: "string",
            key: "string",
            operator: "string",
            tolerationSeconds: 0,
            value: "string",
        }],
    },
    dhParam: "string",
    fullnameOverride: "string",
    helmOptions: {
        atomic: false,
        chart: "string",
        cleanupOnFail: false,
        createNamespace: false,
        dependencyUpdate: false,
        description: "string",
        devel: false,
        disableCRDHooks: false,
        disableOpenapiValidation: false,
        disableWebhooks: false,
        forceUpdate: false,
        keyring: "string",
        lint: false,
        manifest: {
            string: "any",
        },
        maxHistory: 0,
        name: "string",
        namespace: "string",
        postrender: "string",
        recreatePods: false,
        renderSubchartNotes: false,
        replace: false,
        repositoryOpts: {
            caFile: "string",
            certFile: "string",
            keyFile: "string",
            password: "string",
            repo: "string",
            username: "string",
        },
        resetValues: false,
        resourceNames: {
            string: ["string"],
        },
        reuseValues: false,
        skipAwait: false,
        skipCrds: false,
        timeout: 0,
        valueYamlFiles: [new pulumi.asset.StringAsset("content")],
        values: {
            string: "any",
        },
        verify: false,
        version: "string",
        waitForJobs: false,
    },
    imagePullSecrets: [{
        name: "string",
    }],
    nameOverride: "string",
    podSecurityPolicy: {
        enabled: false,
    },
    rbac: {
        create: false,
        scope: false,
    },
    revisionHistoryLimit: 0,
    serviceAccount: {
        automountServiceAccountToken: false,
        create: false,
        name: "string",
    },
    tcp: {
        string: {
            string: "string",
        },
    },
    udp: {
        string: {
            string: "string",
        },
    },
});
type: kubernetes-ingress-nginx:IngressController
properties:
    controller:
        addHeaders:
            string:
                string: string
        admissionWebhooks:
            annotations:
                string: string
            certificate: string
            createSecretJob:
                resources:
                    claims:
                        - name: string
                          request: string
                    limits:
                        string: string
                    requests:
                        string: string
            enabled: false
            existingPsp: string
            failurePolicy: string
            key: string
            namespaceSelector:
                string:
                    string: string
            objectSelector:
                string:
                    string: string
            patch:
                enabled: false
                image:
                    allowPrivilegeEscalation: false
                    digest: string
                    image: string
                    pullPolicy: string
                    readOnlyRootFilesystem: false
                    registry: string
                    repository: string
                    runAsNonRoot: false
                    runAsUser: string
                    tag: string
                nodeSelector:
                    string: string
                podAnnotations:
                    string: string
                priorityClassName: string
                runAsUser: 0
                tolerations:
                    - effect: string
                      key: string
                      operator: string
                      tolerationSeconds: 0
                      value: string
            patchWebhookJob:
                resources:
                    claims:
                        - name: string
                          request: string
                    limits:
                        string: string
                    requests:
                        string: string
            port: 0
            service:
                annotations:
                    string: string
                clusterIP: string
                externalIPs:
                    - string
                loadBalancerIPs: string
                loadBalancerSourceRanges:
                    - string
                servicePort: 0
                type: string
            timeoutSeconds: 0
        affinity:
            nodeAffinity:
                preferredDuringSchedulingIgnoredDuringExecution:
                    - preference:
                        matchExpressions:
                            - key: string
                              operator: string
                              values:
                                - string
                        matchFields:
                            - key: string
                              operator: string
                              values:
                                - string
                      weight: 0
                requiredDuringSchedulingIgnoredDuringExecution:
                    nodeSelectorTerms:
                        - matchExpressions:
                            - key: string
                              operator: string
                              values:
                                - string
                          matchFields:
                            - key: string
                              operator: string
                              values:
                                - string
            podAffinity:
                preferredDuringSchedulingIgnoredDuringExecution:
                    - podAffinityTerm:
                        labelSelector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                        matchLabelKeys:
                            - string
                        mismatchLabelKeys:
                            - string
                        namespaceSelector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                        namespaces:
                            - string
                        topologyKey: string
                      weight: 0
                requiredDuringSchedulingIgnoredDuringExecution:
                    - labelSelector:
                        matchExpressions:
                            - key: string
                              operator: string
                              values:
                                - string
                        matchLabels:
                            string: string
                      matchLabelKeys:
                        - string
                      mismatchLabelKeys:
                        - string
                      namespaceSelector:
                        matchExpressions:
                            - key: string
                              operator: string
                              values:
                                - string
                        matchLabels:
                            string: string
                      namespaces:
                        - string
                      topologyKey: string
            podAntiAffinity:
                preferredDuringSchedulingIgnoredDuringExecution:
                    - podAffinityTerm:
                        labelSelector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                        matchLabelKeys:
                            - string
                        mismatchLabelKeys:
                            - string
                        namespaceSelector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                        namespaces:
                            - string
                        topologyKey: string
                      weight: 0
                requiredDuringSchedulingIgnoredDuringExecution:
                    - labelSelector:
                        matchExpressions:
                            - key: string
                              operator: string
                              values:
                                - string
                        matchLabels:
                            string: string
                      matchLabelKeys:
                        - string
                      mismatchLabelKeys:
                        - string
                      namespaceSelector:
                        matchExpressions:
                            - key: string
                              operator: string
                              values:
                                - string
                        matchLabels:
                            string: string
                      namespaces:
                        - string
                      topologyKey: string
        allowSnippetAnnotations: false
        annotations:
            string: string
        autoscaling:
            annotations:
                string: string
            controllerAutoscalingBehavior:
                scaleDown:
                    policies:
                        - periodSeconds: 0
                          type: string
                          value: 0
                    stabilizationWindowSeconds: 0
                scaleUp:
                    policies:
                        - periodSeconds: 0
                          type: string
                          value: 0
                    stabilizationWindowSeconds: 0
            enabled: false
            maxReplicas: 0
            minReplicas: 0
            targetCPUUtilizationPercentage: 0
            targetMemoryUtilizationPercentage: 0
        autoscalingTemplate:
            - pods:
                metric:
                    name: string
                target:
                    averageValue: string
                    type: string
              type: string
        config:
            string: string
        configAnnotations:
            string: string
        configMapNamespace: string
        containerName: string
        containerPort:
            http: 0
            https: 0
        customTemplate:
            configMapKey: string
            configMapName: string
        dnsConfig:
            string: string
        dnsPolicy: string
        electionID: string
        enableMimalloc: false
        existingPsp: string
        extraArgs:
            string: string
        extraContainers:
            - args:
                - string
              command:
                - string
              env:
                - name: string
                  value: string
                  valueFrom:
                    configMapKeyRef:
                        key: string
                        name: string
                        optional: false
                    fieldRef:
                        apiVersion: string
                        fieldPath: string
                    resourceFieldRef:
                        containerName: string
                        divisor: string
                        resource: string
                    secretKeyRef:
                        key: string
                        name: string
                        optional: false
              envFrom:
                - configMapRef:
                    name: string
                    optional: false
                  prefix: string
                  secretRef:
                    name: string
                    optional: false
              image: string
              imagePullPolicy: string
              lifecycle:
                postStart:
                    exec:
                        command:
                            - string
                    httpGet:
                        host: string
                        httpHeaders:
                            - name: string
                              value: string
                        path: string
                        port: 0
                        scheme: string
                    sleep:
                        seconds: 0
                    tcpSocket:
                        host: string
                        port: 0
                preStop:
                    exec:
                        command:
                            - string
                    httpGet:
                        host: string
                        httpHeaders:
                            - name: string
                              value: string
                        path: string
                        port: 0
                        scheme: string
                    sleep:
                        seconds: 0
                    tcpSocket:
                        host: string
                        port: 0
              livenessProbe:
                exec:
                    command:
                        - string
                failureThreshold: 0
                grpc:
                    port: 0
                    service: string
                httpGet:
                    host: string
                    httpHeaders:
                        - name: string
                          value: string
                    path: string
                    port: 0
                    scheme: string
                initialDelaySeconds: 0
                periodSeconds: 0
                successThreshold: 0
                tcpSocket:
                    host: string
                    port: 0
                terminationGracePeriodSeconds: 0
                timeoutSeconds: 0
              name: string
              ports:
                - containerPort: 0
                  hostIP: string
                  hostPort: 0
                  name: string
                  protocol: string
              readinessProbe:
                exec:
                    command:
                        - string
                failureThreshold: 0
                grpc:
                    port: 0
                    service: string
                httpGet:
                    host: string
                    httpHeaders:
                        - name: string
                          value: string
                    path: string
                    port: 0
                    scheme: string
                initialDelaySeconds: 0
                periodSeconds: 0
                successThreshold: 0
                tcpSocket:
                    host: string
                    port: 0
                terminationGracePeriodSeconds: 0
                timeoutSeconds: 0
              resizePolicy:
                - resourceName: string
                  restartPolicy: string
              resources:
                claims:
                    - name: string
                      request: string
                limits:
                    string: string
                requests:
                    string: string
              restartPolicy: string
              securityContext:
                allowPrivilegeEscalation: false
                appArmorProfile:
                    localhostProfile: string
                    type: string
                capabilities:
                    add:
                        - string
                    drop:
                        - string
                privileged: false
                procMount: string
                readOnlyRootFilesystem: false
                runAsGroup: 0
                runAsNonRoot: false
                runAsUser: 0
                seLinuxOptions:
                    level: string
                    role: string
                    type: string
                    user: string
                seccompProfile:
                    localhostProfile: string
                    type: string
                windowsOptions:
                    gmsaCredentialSpec: string
                    gmsaCredentialSpecName: string
                    hostProcess: false
                    runAsUserName: string
              startupProbe:
                exec:
                    command:
                        - string
                failureThreshold: 0
                grpc:
                    port: 0
                    service: string
                httpGet:
                    host: string
                    httpHeaders:
                        - name: string
                          value: string
                    path: string
                    port: 0
                    scheme: string
                initialDelaySeconds: 0
                periodSeconds: 0
                successThreshold: 0
                tcpSocket:
                    host: string
                    port: 0
                terminationGracePeriodSeconds: 0
                timeoutSeconds: 0
              stdin: false
              stdinOnce: false
              terminationMessagePath: string
              terminationMessagePolicy: string
              tty: false
              volumeDevices:
                - devicePath: string
                  name: string
              volumeMounts:
                - mountPath: string
                  mountPropagation: string
                  name: string
                  readOnly: false
                  recursiveReadOnly: string
                  subPath: string
                  subPathExpr: string
              workingDir: string
        extraEnvs:
            - name: string
              value: string
              valueFrom:
                configMapKeyRef:
                    key: string
                    name: string
                    optional: false
                fieldRef:
                    apiVersion: string
                    fieldPath: string
                resourceFieldRef:
                    containerName: string
                    divisor: string
                    resource: string
                secretKeyRef:
                    key: string
                    name: string
                    optional: false
        extraInitContainers:
            - args:
                - string
              command:
                - string
              env:
                - name: string
                  value: string
                  valueFrom:
                    configMapKeyRef:
                        key: string
                        name: string
                        optional: false
                    fieldRef:
                        apiVersion: string
                        fieldPath: string
                    resourceFieldRef:
                        containerName: string
                        divisor: string
                        resource: string
                    secretKeyRef:
                        key: string
                        name: string
                        optional: false
              envFrom:
                - configMapRef:
                    name: string
                    optional: false
                  prefix: string
                  secretRef:
                    name: string
                    optional: false
              image: string
              imagePullPolicy: string
              lifecycle:
                postStart:
                    exec:
                        command:
                            - string
                    httpGet:
                        host: string
                        httpHeaders:
                            - name: string
                              value: string
                        path: string
                        port: 0
                        scheme: string
                    sleep:
                        seconds: 0
                    tcpSocket:
                        host: string
                        port: 0
                preStop:
                    exec:
                        command:
                            - string
                    httpGet:
                        host: string
                        httpHeaders:
                            - name: string
                              value: string
                        path: string
                        port: 0
                        scheme: string
                    sleep:
                        seconds: 0
                    tcpSocket:
                        host: string
                        port: 0
              livenessProbe:
                exec:
                    command:
                        - string
                failureThreshold: 0
                grpc:
                    port: 0
                    service: string
                httpGet:
                    host: string
                    httpHeaders:
                        - name: string
                          value: string
                    path: string
                    port: 0
                    scheme: string
                initialDelaySeconds: 0
                periodSeconds: 0
                successThreshold: 0
                tcpSocket:
                    host: string
                    port: 0
                terminationGracePeriodSeconds: 0
                timeoutSeconds: 0
              name: string
              ports:
                - containerPort: 0
                  hostIP: string
                  hostPort: 0
                  name: string
                  protocol: string
              readinessProbe:
                exec:
                    command:
                        - string
                failureThreshold: 0
                grpc:
                    port: 0
                    service: string
                httpGet:
                    host: string
                    httpHeaders:
                        - name: string
                          value: string
                    path: string
                    port: 0
                    scheme: string
                initialDelaySeconds: 0
                periodSeconds: 0
                successThreshold: 0
                tcpSocket:
                    host: string
                    port: 0
                terminationGracePeriodSeconds: 0
                timeoutSeconds: 0
              resizePolicy:
                - resourceName: string
                  restartPolicy: string
              resources:
                claims:
                    - name: string
                      request: string
                limits:
                    string: string
                requests:
                    string: string
              restartPolicy: string
              securityContext:
                allowPrivilegeEscalation: false
                appArmorProfile:
                    localhostProfile: string
                    type: string
                capabilities:
                    add:
                        - string
                    drop:
                        - string
                privileged: false
                procMount: string
                readOnlyRootFilesystem: false
                runAsGroup: 0
                runAsNonRoot: false
                runAsUser: 0
                seLinuxOptions:
                    level: string
                    role: string
                    type: string
                    user: string
                seccompProfile:
                    localhostProfile: string
                    type: string
                windowsOptions:
                    gmsaCredentialSpec: string
                    gmsaCredentialSpecName: string
                    hostProcess: false
                    runAsUserName: string
              startupProbe:
                exec:
                    command:
                        - string
                failureThreshold: 0
                grpc:
                    port: 0
                    service: string
                httpGet:
                    host: string
                    httpHeaders:
                        - name: string
                          value: string
                    path: string
                    port: 0
                    scheme: string
                initialDelaySeconds: 0
                periodSeconds: 0
                successThreshold: 0
                tcpSocket:
                    host: string
                    port: 0
                terminationGracePeriodSeconds: 0
                timeoutSeconds: 0
              stdin: false
              stdinOnce: false
              terminationMessagePath: string
              terminationMessagePolicy: string
              tty: false
              volumeDevices:
                - devicePath: string
                  name: string
              volumeMounts:
                - mountPath: string
                  mountPropagation: string
                  name: string
                  readOnly: false
                  recursiveReadOnly: string
                  subPath: string
                  subPathExpr: string
              workingDir: string
        extraVolumeMounts:
            - mountPath: string
              mountPropagation: string
              name: string
              readOnly: false
              recursiveReadOnly: string
              subPath: string
              subPathExpr: string
        extraVolumes:
            - awsElasticBlockStore:
                fsType: string
                partition: 0
                readOnly: false
                volumeID: string
              azureDisk:
                cachingMode: string
                diskName: string
                diskURI: string
                fsType: string
                kind: string
                readOnly: false
              azureFile:
                readOnly: false
                secretName: string
                shareName: string
              cephfs:
                monitors:
                    - string
                path: string
                readOnly: false
                secretFile: string
                secretRef:
                    name: string
                user: string
              cinder:
                fsType: string
                readOnly: false
                secretRef:
                    name: string
                volumeID: string
              configMap:
                defaultMode: 0
                items:
                    - key: string
                      mode: 0
                      path: string
                name: string
                optional: false
              csi:
                driver: string
                fsType: string
                nodePublishSecretRef:
                    name: string
                readOnly: false
                volumeAttributes:
                    string: string
              downwardAPI:
                defaultMode: 0
                items:
                    - fieldRef:
                        apiVersion: string
                        fieldPath: string
                      mode: 0
                      path: string
                      resourceFieldRef:
                        containerName: string
                        divisor: string
                        resource: string
              emptyDir:
                medium: string
                sizeLimit: string
              ephemeral:
                readOnly: false
                volumeClaimTemplate:
                    metadata:
                        annotations:
                            string: string
                        clusterName: string
                        creationTimestamp: string
                        deletionGracePeriodSeconds: 0
                        deletionTimestamp: string
                        finalizers:
                            - string
                        generateName: string
                        generation: 0
                        labels:
                            string: string
                        managedFields:
                            - apiVersion: string
                              fieldsType: string
                              fieldsV1: '{}'
                              manager: string
                              operation: string
                              subresource: string
                              time: string
                        name: string
                        namespace: string
                        ownerReferences:
                            - apiVersion: string
                              blockOwnerDeletion: false
                              controller: false
                              kind: string
                              name: string
                              uid: string
                        resourceVersion: string
                        selfLink: string
                        uid: string
                    spec:
                        accessModes:
                            - string
                        dataSource:
                            apiGroup: string
                            kind: string
                            name: string
                        dataSourceRef:
                            apiGroup: string
                            kind: string
                            name: string
                            namespace: string
                        resources:
                            limits:
                                string: string
                            requests:
                                string: string
                        selector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                        storageClassName: string
                        volumeAttributesClassName: string
                        volumeMode: string
                        volumeName: string
              fc:
                fsType: string
                lun: 0
                readOnly: false
                targetWWNs:
                    - string
                wwids:
                    - string
              flexVolume:
                driver: string
                fsType: string
                options:
                    string: string
                readOnly: false
                secretRef:
                    name: string
              flocker:
                datasetName: string
                datasetUUID: string
              gcePersistentDisk:
                fsType: string
                partition: 0
                pdName: string
                readOnly: false
              gitRepo:
                directory: string
                repository: string
                revision: string
              glusterfs:
                endpoints: string
                path: string
                readOnly: false
              hostPath:
                path: string
                type: string
              image:
                pullPolicy: string
                reference: string
              iscsi:
                chapAuthDiscovery: false
                chapAuthSession: false
                fsType: string
                initiatorName: string
                iqn: string
                iscsiInterface: string
                lun: 0
                portals:
                    - string
                readOnly: false
                secretRef:
                    name: string
                targetPortal: string
              name: string
              nfs:
                path: string
                readOnly: false
                server: string
              persistentVolumeClaim:
                claimName: string
                readOnly: false
              photonPersistentDisk:
                fsType: string
                pdID: string
              portworxVolume:
                fsType: string
                readOnly: false
                volumeID: string
              projected:
                defaultMode: 0
                sources:
                    - clusterTrustBundle:
                        labelSelector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                        name: string
                        optional: false
                        path: string
                        signerName: string
                      configMap:
                        items:
                            - key: string
                              mode: 0
                              path: string
                        name: string
                        optional: false
                      downwardAPI:
                        items:
                            - fieldRef:
                                apiVersion: string
                                fieldPath: string
                              mode: 0
                              path: string
                              resourceFieldRef:
                                containerName: string
                                divisor: string
                                resource: string
                      secret:
                        items:
                            - key: string
                              mode: 0
                              path: string
                        name: string
                        optional: false
                      serviceAccountToken:
                        audience: string
                        expirationSeconds: 0
                        path: string
              quobyte:
                group: string
                readOnly: false
                registry: string
                tenant: string
                user: string
                volume: string
              rbd:
                fsType: string
                image: string
                keyring: string
                monitors:
                    - string
                pool: string
                readOnly: false
                secretRef:
                    name: string
                user: string
              scaleIO:
                fsType: string
                gateway: string
                protectionDomain: string
                readOnly: false
                secretRef:
                    name: string
                sslEnabled: false
                storageMode: string
                storagePool: string
                system: string
                volumeName: string
              secret:
                defaultMode: 0
                items:
                    - key: string
                      mode: 0
                      path: string
                optional: false
                secretName: string
              storageos:
                fsType: string
                readOnly: false
                secretRef:
                    name: string
                volumeName: string
                volumeNamespace: string
              vsphereVolume:
                fsType: string
                storagePolicyID: string
                storagePolicyName: string
                volumePath: string
        healthCheckPath: string
        heathCheckHost: string
        hostNetwork: false
        hostPort:
            enabled: false
            ports:
                http: 0
                https: 0
        hostname:
            string:
                string: string
        image:
            allowPrivilegeEscalation: false
            digest: string
            image: string
            pullPolicy: string
            readOnlyRootFilesystem: false
            registry: string
            repository: string
            runAsNonRoot: false
            runAsUser: string
            tag: string
        ingressClassByName: false
        ingressClassResource:
            controllerValue: string
            default: false
            enabled: false
            name: string
            parameters:
                string:
                    string: string
        keda:
            apiVersion: string
            behavior:
                scaleDown:
                    policies:
                        - periodSeconds: 0
                          type: string
                          value: 0
                    stabilizationWindowSeconds: 0
                scaleUp:
                    policies:
                        - periodSeconds: 0
                          type: string
                          value: 0
                    stabilizationWindowSeconds: 0
            cooldownPeriod: 0
            enabled: false
            maxReplicas: 0
            minReplicas: 0
            pollingInterval: 0
            restoreToOriginalReplicaCount: false
            scaledObject:
                annotations:
                    string: string
            triggers:
                - metadata:
                    string:
                        string: string
                  type: string
        kind: string
        lifecycle:
            postStart:
                exec:
                    command:
                        - string
                httpGet:
                    host: string
                    httpHeaders:
                        - name: string
                          value: string
                    path: string
                    port: 0
                    scheme: string
                sleep:
                    seconds: 0
                tcpSocket:
                    host: string
                    port: 0
            preStop:
                exec:
                    command:
                        - string
                httpGet:
                    host: string
                    httpHeaders:
                        - name: string
                          value: string
                    path: string
                    port: 0
                    scheme: string
                sleep:
                    seconds: 0
                tcpSocket:
                    host: string
                    port: 0
        livenessProbe:
            exec:
                command:
                    - string
            failureThreshold: 0
            grpc:
                port: 0
                service: string
            httpGet:
                host: string
                httpHeaders:
                    - name: string
                      value: string
                path: string
                port: 0
                scheme: string
            initialDelaySeconds: 0
            periodSeconds: 0
            successThreshold: 0
            tcpSocket:
                host: string
                port: 0
            terminationGracePeriodSeconds: 0
            timeoutSeconds: 0
        maxmindLicenseKey: string
        metrics:
            enabled: false
            port: 0
            prometheusRule:
                additionalLabels:
                    string: string
                enabled: false
                namespace: string
                rules:
                    - string: string
            service:
                annotations:
                    string: string
                clusterIP: string
                externalIPs:
                    - string
                externalTrafficPolicy: string
                loadBalancerIPs: string
                loadBalancerSourceRanges:
                    - string
                nodePort: string
                servicePort: 0
                type: string
            serviceMonitor:
                additionalLabels:
                    string: string
                enabled: false
                honorLabels: false
                jobLabel: string
                metricRelabelings:
                    - string
                namespace: string
                namespaceSelector:
                    string:
                        string: string
                scrapeInterval: string
                targetLabels:
                    - string
        minAvailable: 0
        minReadySeconds: 0
        name: string
        nodeSelector:
            string: string
        podAnnotations:
            string: string
        podLabels:
            string: string
        podSecurityContext:
            appArmorProfile:
                localhostProfile: string
                type: string
            fsGroup: 0
            fsGroupChangePolicy: string
            runAsGroup: 0
            runAsNonRoot: false
            runAsUser: 0
            seLinuxChangePolicy: string
            seLinuxOptions:
                level: string
                role: string
                type: string
                user: string
            seccompProfile:
                localhostProfile: string
                type: string
            supplementalGroups:
                - 0
            supplementalGroupsPolicy: string
            sysctls:
                - name: string
                  value: string
            windowsOptions:
                gmsaCredentialSpec: string
                gmsaCredentialSpecName: string
                hostProcess: false
                runAsUserName: string
        priorityClassName: string
        proxySetHeaders:
            string:
                string: string
        publishService:
            enabled: false
            pathOverride: string
        readinessProbe:
            exec:
                command:
                    - string
            failureThreshold: 0
            grpc:
                port: 0
                service: string
            httpGet:
                host: string
                httpHeaders:
                    - name: string
                      value: string
                path: string
                port: 0
                scheme: string
            initialDelaySeconds: 0
            periodSeconds: 0
            successThreshold: 0
            tcpSocket:
                host: string
                port: 0
            terminationGracePeriodSeconds: 0
            timeoutSeconds: 0
        replicaCount: 0
        reportNodeInternalIp: false
        resources:
            claims:
                - name: string
                  request: string
            limits:
                string: string
            requests:
                string: string
        scope:
            enabled: false
            namespace: string
        service:
            annotations:
                string: string
            clusterIP: string
            enableHttp: false
            enableHttps: false
            enabled: false
            externalIPs:
                - string
            externalTrafficPolicy: string
            healthCheckNodePort: 0
            internal:
                annotations:
                    string: string
                enabled: false
                externalTrafficPolicy: string
                labels:
                    string: string
                loadBalancerIPs: string
                loadBalancerSourceRanges:
                    - string
            labels:
                string: string
            loadBalancerIP: string
            loadBalancerIPs: string
            loadBalancerSourceRanges:
                - string
            nodePorts:
                http: string
                https: string
                tcp:
                    string:
                        string: string
                udp:
                    string:
                        string: string
            ports:
                http: 0
                https: 0
            sessionAffinity: string
            targetPorts:
                http: 0
                https: 0
            type: string
        startupProbe:
            exec:
                command:
                    - string
            failureThreshold: 0
            grpc:
                port: 0
                service: string
            httpGet:
                host: string
                httpHeaders:
                    - name: string
                      value: string
                path: string
                port: 0
                scheme: string
            initialDelaySeconds: 0
            periodSeconds: 0
            successThreshold: 0
            tcpSocket:
                host: string
                port: 0
            terminationGracePeriodSeconds: 0
            timeoutSeconds: 0
        sysctls:
            string:
                string: string
        tcp:
            annotations:
                string: string
            configMapNamespace: string
        terminateGracePeriodSeconds: 0
        tolerations:
            effect: string
            key: string
            operator: string
            tolerationSeconds: 0
            value: string
        topologySpreadConstraints:
            - labelSelector:
                matchExpressions:
                    - key: string
                      operator: string
                      values:
                        - string
                matchLabels:
                    string: string
              matchLabelKeys:
                - string
              maxSkew: 0
              minDomains: 0
              nodeAffinityPolicy: string
              nodeTaintsPolicy: string
              topologyKey: string
              whenUnsatisfiable: string
        udp:
            annotations:
                string: string
            configMapNamespace: string
        updateStrategy:
            rollingUpdate:
                maxUnavailable: 0
            type: string
        watchIngressWithoutClass: false
    defaultBackend:
        affinity:
            nodeAffinity:
                preferredDuringSchedulingIgnoredDuringExecution:
                    - preference:
                        matchExpressions:
                            - key: string
                              operator: string
                              values:
                                - string
                        matchFields:
                            - key: string
                              operator: string
                              values:
                                - string
                      weight: 0
                requiredDuringSchedulingIgnoredDuringExecution:
                    nodeSelectorTerms:
                        - matchExpressions:
                            - key: string
                              operator: string
                              values:
                                - string
                          matchFields:
                            - key: string
                              operator: string
                              values:
                                - string
            podAffinity:
                preferredDuringSchedulingIgnoredDuringExecution:
                    - podAffinityTerm:
                        labelSelector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                        matchLabelKeys:
                            - string
                        mismatchLabelKeys:
                            - string
                        namespaceSelector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                        namespaces:
                            - string
                        topologyKey: string
                      weight: 0
                requiredDuringSchedulingIgnoredDuringExecution:
                    - labelSelector:
                        matchExpressions:
                            - key: string
                              operator: string
                              values:
                                - string
                        matchLabels:
                            string: string
                      matchLabelKeys:
                        - string
                      mismatchLabelKeys:
                        - string
                      namespaceSelector:
                        matchExpressions:
                            - key: string
                              operator: string
                              values:
                                - string
                        matchLabels:
                            string: string
                      namespaces:
                        - string
                      topologyKey: string
            podAntiAffinity:
                preferredDuringSchedulingIgnoredDuringExecution:
                    - podAffinityTerm:
                        labelSelector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                        matchLabelKeys:
                            - string
                        mismatchLabelKeys:
                            - string
                        namespaceSelector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                        namespaces:
                            - string
                        topologyKey: string
                      weight: 0
                requiredDuringSchedulingIgnoredDuringExecution:
                    - labelSelector:
                        matchExpressions:
                            - key: string
                              operator: string
                              values:
                                - string
                        matchLabels:
                            string: string
                      matchLabelKeys:
                        - string
                      mismatchLabelKeys:
                        - string
                      namespaceSelector:
                        matchExpressions:
                            - key: string
                              operator: string
                              values:
                                - string
                        matchLabels:
                            string: string
                      namespaces:
                        - string
                      topologyKey: string
        autoscaling:
            annotations:
                string: string
            controllerAutoscalingBehavior:
                scaleDown:
                    policies:
                        - periodSeconds: 0
                          type: string
                          value: 0
                    stabilizationWindowSeconds: 0
                scaleUp:
                    policies:
                        - periodSeconds: 0
                          type: string
                          value: 0
                    stabilizationWindowSeconds: 0
            enabled: false
            maxReplicas: 0
            minReplicas: 0
            targetCPUUtilizationPercentage: 0
            targetMemoryUtilizationPercentage: 0
        enabled: false
        existingPsp: string
        extraArgs:
            string:
                string: string
        extraEnvs:
            - name: string
              value: string
              valueFrom:
                configMapKeyRef:
                    key: string
                    name: string
                    optional: false
                fieldRef:
                    apiVersion: string
                    fieldPath: string
                resourceFieldRef:
                    containerName: string
                    divisor: string
                    resource: string
                secretKeyRef:
                    key: string
                    name: string
                    optional: false
        extraVolumeMounts:
            - mountPath: string
              mountPropagation: string
              name: string
              readOnly: false
              recursiveReadOnly: string
              subPath: string
              subPathExpr: string
        extraVolumes:
            - awsElasticBlockStore:
                fsType: string
                partition: 0
                readOnly: false
                volumeID: string
              azureDisk:
                cachingMode: string
                diskName: string
                diskURI: string
                fsType: string
                kind: string
                readOnly: false
              azureFile:
                readOnly: false
                secretName: string
                shareName: string
              cephfs:
                monitors:
                    - string
                path: string
                readOnly: false
                secretFile: string
                secretRef:
                    name: string
                user: string
              cinder:
                fsType: string
                readOnly: false
                secretRef:
                    name: string
                volumeID: string
              configMap:
                defaultMode: 0
                items:
                    - key: string
                      mode: 0
                      path: string
                name: string
                optional: false
              csi:
                driver: string
                fsType: string
                nodePublishSecretRef:
                    name: string
                readOnly: false
                volumeAttributes:
                    string: string
              downwardAPI:
                defaultMode: 0
                items:
                    - fieldRef:
                        apiVersion: string
                        fieldPath: string
                      mode: 0
                      path: string
                      resourceFieldRef:
                        containerName: string
                        divisor: string
                        resource: string
              emptyDir:
                medium: string
                sizeLimit: string
              ephemeral:
                readOnly: false
                volumeClaimTemplate:
                    metadata:
                        annotations:
                            string: string
                        clusterName: string
                        creationTimestamp: string
                        deletionGracePeriodSeconds: 0
                        deletionTimestamp: string
                        finalizers:
                            - string
                        generateName: string
                        generation: 0
                        labels:
                            string: string
                        managedFields:
                            - apiVersion: string
                              fieldsType: string
                              fieldsV1: '{}'
                              manager: string
                              operation: string
                              subresource: string
                              time: string
                        name: string
                        namespace: string
                        ownerReferences:
                            - apiVersion: string
                              blockOwnerDeletion: false
                              controller: false
                              kind: string
                              name: string
                              uid: string
                        resourceVersion: string
                        selfLink: string
                        uid: string
                    spec:
                        accessModes:
                            - string
                        dataSource:
                            apiGroup: string
                            kind: string
                            name: string
                        dataSourceRef:
                            apiGroup: string
                            kind: string
                            name: string
                            namespace: string
                        resources:
                            limits:
                                string: string
                            requests:
                                string: string
                        selector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                        storageClassName: string
                        volumeAttributesClassName: string
                        volumeMode: string
                        volumeName: string
              fc:
                fsType: string
                lun: 0
                readOnly: false
                targetWWNs:
                    - string
                wwids:
                    - string
              flexVolume:
                driver: string
                fsType: string
                options:
                    string: string
                readOnly: false
                secretRef:
                    name: string
              flocker:
                datasetName: string
                datasetUUID: string
              gcePersistentDisk:
                fsType: string
                partition: 0
                pdName: string
                readOnly: false
              gitRepo:
                directory: string
                repository: string
                revision: string
              glusterfs:
                endpoints: string
                path: string
                readOnly: false
              hostPath:
                path: string
                type: string
              image:
                pullPolicy: string
                reference: string
              iscsi:
                chapAuthDiscovery: false
                chapAuthSession: false
                fsType: string
                initiatorName: string
                iqn: string
                iscsiInterface: string
                lun: 0
                portals:
                    - string
                readOnly: false
                secretRef:
                    name: string
                targetPortal: string
              name: string
              nfs:
                path: string
                readOnly: false
                server: string
              persistentVolumeClaim:
                claimName: string
                readOnly: false
              photonPersistentDisk:
                fsType: string
                pdID: string
              portworxVolume:
                fsType: string
                readOnly: false
                volumeID: string
              projected:
                defaultMode: 0
                sources:
                    - clusterTrustBundle:
                        labelSelector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                        name: string
                        optional: false
                        path: string
                        signerName: string
                      configMap:
                        items:
                            - key: string
                              mode: 0
                              path: string
                        name: string
                        optional: false
                      downwardAPI:
                        items:
                            - fieldRef:
                                apiVersion: string
                                fieldPath: string
                              mode: 0
                              path: string
                              resourceFieldRef:
                                containerName: string
                                divisor: string
                                resource: string
                      secret:
                        items:
                            - key: string
                              mode: 0
                              path: string
                        name: string
                        optional: false
                      serviceAccountToken:
                        audience: string
                        expirationSeconds: 0
                        path: string
              quobyte:
                group: string
                readOnly: false
                registry: string
                tenant: string
                user: string
                volume: string
              rbd:
                fsType: string
                image: string
                keyring: string
                monitors:
                    - string
                pool: string
                readOnly: false
                secretRef:
                    name: string
                user: string
              scaleIO:
                fsType: string
                gateway: string
                protectionDomain: string
                readOnly: false
                secretRef:
                    name: string
                sslEnabled: false
                storageMode: string
                storagePool: string
                system: string
                volumeName: string
              secret:
                defaultMode: 0
                items:
                    - key: string
                      mode: 0
                      path: string
                optional: false
                secretName: string
              storageos:
                fsType: string
                readOnly: false
                secretRef:
                    name: string
                volumeName: string
                volumeNamespace: string
              vsphereVolume:
                fsType: string
                storagePolicyID: string
                storagePolicyName: string
                volumePath: string
        image:
            allowPrivilegeEscalation: false
            digest: string
            image: string
            pullPolicy: string
            readOnlyRootFilesystem: false
            registry: string
            repository: string
            runAsNonRoot: false
            runAsUser: string
            tag: string
        livenessProbe:
            exec:
                command:
                    - string
            failureThreshold: 0
            grpc:
                port: 0
                service: string
            httpGet:
                host: string
                httpHeaders:
                    - name: string
                      value: string
                path: string
                port: 0
                scheme: string
            initialDelaySeconds: 0
            periodSeconds: 0
            successThreshold: 0
            tcpSocket:
                host: string
                port: 0
            terminationGracePeriodSeconds: 0
            timeoutSeconds: 0
        minAvailable: 0
        name: string
        nodeSelector:
            string: string
        podAnnotations:
            string: string
        podLabels:
            string: string
        podSecurityContext:
            appArmorProfile:
                localhostProfile: string
                type: string
            fsGroup: 0
            fsGroupChangePolicy: string
            runAsGroup: 0
            runAsNonRoot: false
            runAsUser: 0
            seLinuxChangePolicy: string
            seLinuxOptions:
                level: string
                role: string
                type: string
                user: string
            seccompProfile:
                localhostProfile: string
                type: string
            supplementalGroups:
                - 0
            supplementalGroupsPolicy: string
            sysctls:
                - name: string
                  value: string
            windowsOptions:
                gmsaCredentialSpec: string
                gmsaCredentialSpecName: string
                hostProcess: false
                runAsUserName: string
        port: 0
        priorityClassName: string
        readinessProbe:
            exec:
                command:
                    - string
            failureThreshold: 0
            grpc:
                port: 0
                service: string
            httpGet:
                host: string
                httpHeaders:
                    - name: string
                      value: string
                path: string
                port: 0
                scheme: string
            initialDelaySeconds: 0
            periodSeconds: 0
            successThreshold: 0
            tcpSocket:
                host: string
                port: 0
            terminationGracePeriodSeconds: 0
            timeoutSeconds: 0
        replicaCount: 0
        resources:
            claims:
                - name: string
                  request: string
            limits:
                string: string
            requests:
                string: string
        service:
            annotations:
                string: string
            clusterIP: string
            externalIPs:
                - string
            loadBalancerIP: string
            loadBalancerSourceRanges:
                - string
            servicePort: 0
            type: string
        serviceAccount:
            automountServiceAccountToken: false
            create: false
            name: string
        tolerations:
            - effect: string
              key: string
              operator: string
              tolerationSeconds: 0
              value: string
    dhParam: string
    fullnameOverride: string
    helmOptions:
        atomic: false
        chart: string
        cleanupOnFail: false
        createNamespace: false
        dependencyUpdate: false
        description: string
        devel: false
        disableCRDHooks: false
        disableOpenapiValidation: false
        disableWebhooks: false
        forceUpdate: false
        keyring: string
        lint: false
        manifest:
            string: any
        maxHistory: 0
        name: string
        namespace: string
        postrender: string
        recreatePods: false
        renderSubchartNotes: false
        replace: false
        repositoryOpts:
            caFile: string
            certFile: string
            keyFile: string
            password: string
            repo: string
            username: string
        resetValues: false
        resourceNames:
            string:
                - string
        reuseValues: false
        skipAwait: false
        skipCrds: false
        timeout: 0
        valueYamlFiles:
            - fn::StringAsset: content
        values:
            string: any
        verify: false
        version: string
        waitForJobs: false
    imagePullSecrets:
        - name: string
    nameOverride: string
    podSecurityPolicy:
        enabled: false
    rbac:
        create: false
        scope: false
    revisionHistoryLimit: 0
    serviceAccount:
        automountServiceAccountToken: false
        create: false
        name: string
    tcp:
        string:
            string: string
    udp:
        string:
            string: string
IngressController Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The IngressController resource accepts the following input properties:
- Controller
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller  - Default
Backend Pulumi.Kubernetes Ingress Nginx. Inputs. Controller Default Backend  - Default 404 backend.
 - Dh
Param string - A base64ed Diffie-Hellman parameter. This can be generated with: openssl dhparam 4096 2> /dev/null | base64 Ref: https://github.com/kubernetes/ingress-nginx/tree/main/docs/examples/customization/ssl-dh-param.
 - Fullname
Override string - Overrides for generated resource names.
 - Helm
Options Pulumi.Kubernetes Ingress Nginx. Inputs. Release  - HelmOptions is an escape hatch that lets the end user control any aspect of the Helm deployment. This exposes the entirety of the underlying Helm Release component args.
 - Image
Pull List<Pulumi.Secrets Kubernetes. Types. Inputs. Core. V1. Local Object Reference>  - Optional array of imagePullSecrets containing private registry credentials Ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/.
 - Name
Override string - Overrides for generated resource names.
 - Pod
Security Pulumi.Policy Kubernetes Ingress Nginx. Inputs. Controller Pod Security Policy  - If true, create & use Pod Security Policy resources https://kubernetes.io/docs/concepts/policy/pod-security-policy/
 - Rbac
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller RBAC  - Enable RBAC as per https://github.com/kubernetes/ingress-nginx/blob/main/docs/deploy/rbac.md and https://github.com/kubernetes/ingress-nginx/issues/266
 - Revision
History intLimit  - Rollback limit.
 - Service
Account Pulumi.Kubernetes Ingress Nginx. Inputs. Controller Service Account  - Tcp
Dictionary<string, Immutable
Dictionary<string, string>>  - TCP service key:value pairs Ref: https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/exposing-tcp-udp-services.md.
 - Udp
Dictionary<string, Immutable
Dictionary<string, string>>  - UDP service key:value pairs Ref: https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/exposing-tcp-udp-services.md.
 
- Controller
Controller
Args  - Default
Backend ControllerDefault Backend Args  - Default 404 backend.
 - Dh
Param string - A base64ed Diffie-Hellman parameter. This can be generated with: openssl dhparam 4096 2> /dev/null | base64 Ref: https://github.com/kubernetes/ingress-nginx/tree/main/docs/examples/customization/ssl-dh-param.
 - Fullname
Override string - Overrides for generated resource names.
 - Helm
Options ReleaseArgs  - HelmOptions is an escape hatch that lets the end user control any aspect of the Helm deployment. This exposes the entirety of the underlying Helm Release component args.
 - Image
Pull LocalSecrets Object Reference Args  - Optional array of imagePullSecrets containing private registry credentials Ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/.
 - Name
Override string - Overrides for generated resource names.
 - Pod
Security ControllerPolicy Pod Security Policy Args  - If true, create & use Pod Security Policy resources https://kubernetes.io/docs/concepts/policy/pod-security-policy/
 - Rbac
Controller
RBACArgs  - Enable RBAC as per https://github.com/kubernetes/ingress-nginx/blob/main/docs/deploy/rbac.md and https://github.com/kubernetes/ingress-nginx/issues/266
 - Revision
History intLimit  - Rollback limit.
 - Service
Account ControllerService Account Args  - Tcp map[string]map[string]string
 - TCP service key:value pairs Ref: https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/exposing-tcp-udp-services.md.
 - Udp map[string]map[string]string
 - UDP service key:value pairs Ref: https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/exposing-tcp-udp-services.md.
 
- controller Controller
 - default
Backend ControllerDefault Backend  - Default 404 backend.
 - dh
Param String - A base64ed Diffie-Hellman parameter. This can be generated with: openssl dhparam 4096 2> /dev/null | base64 Ref: https://github.com/kubernetes/ingress-nginx/tree/main/docs/examples/customization/ssl-dh-param.
 - fullname
Override String - Overrides for generated resource names.
 - helm
Options Release - HelmOptions is an escape hatch that lets the end user control any aspect of the Helm deployment. This exposes the entirety of the underlying Helm Release component args.
 - image
Pull List<LocalSecrets Object Reference>  - Optional array of imagePullSecrets containing private registry credentials Ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/.
 - name
Override String - Overrides for generated resource names.
 - pod
Security ControllerPolicy Pod Security Policy  - If true, create & use Pod Security Policy resources https://kubernetes.io/docs/concepts/policy/pod-security-policy/
 - rbac
Controller
RBAC  - Enable RBAC as per https://github.com/kubernetes/ingress-nginx/blob/main/docs/deploy/rbac.md and https://github.com/kubernetes/ingress-nginx/issues/266
 - revision
History IntegerLimit  - Rollback limit.
 - service
Account ControllerService Account  - tcp Map<String,Map<String,String>>
 - TCP service key:value pairs Ref: https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/exposing-tcp-udp-services.md.
 - udp Map<String,Map<String,String>>
 - UDP service key:value pairs Ref: https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/exposing-tcp-udp-services.md.
 
- controller Controller
 - default
Backend ControllerDefault Backend  - Default 404 backend.
 - dh
Param string - A base64ed Diffie-Hellman parameter. This can be generated with: openssl dhparam 4096 2> /dev/null | base64 Ref: https://github.com/kubernetes/ingress-nginx/tree/main/docs/examples/customization/ssl-dh-param.
 - fullname
Override string - Overrides for generated resource names.
 - helm
Options Release - HelmOptions is an escape hatch that lets the end user control any aspect of the Helm deployment. This exposes the entirety of the underlying Helm Release component args.
 - image
Pull pulumiSecrets Kubernetestypesinputcorev1Local Object Reference[]  - Optional array of imagePullSecrets containing private registry credentials Ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/.
 - name
Override string - Overrides for generated resource names.
 - pod
Security ControllerPolicy Pod Security Policy  - If true, create & use Pod Security Policy resources https://kubernetes.io/docs/concepts/policy/pod-security-policy/
 - rbac
Controller
RBAC  - Enable RBAC as per https://github.com/kubernetes/ingress-nginx/blob/main/docs/deploy/rbac.md and https://github.com/kubernetes/ingress-nginx/issues/266
 - revision
History numberLimit  - Rollback limit.
 - service
Account ControllerService Account  - tcp {[key: string]: {[key: string]: string}}
 - TCP service key:value pairs Ref: https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/exposing-tcp-udp-services.md.
 - udp {[key: string]: {[key: string]: string}}
 - UDP service key:value pairs Ref: https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/exposing-tcp-udp-services.md.
 
- controller
Controller
Args  - default_
backend ControllerDefault Backend Args  - Default 404 backend.
 - dh_
param str - A base64ed Diffie-Hellman parameter. This can be generated with: openssl dhparam 4096 2> /dev/null | base64 Ref: https://github.com/kubernetes/ingress-nginx/tree/main/docs/examples/customization/ssl-dh-param.
 - fullname_
override str - Overrides for generated resource names.
 - helm_
options ReleaseArgs  - HelmOptions is an escape hatch that lets the end user control any aspect of the Helm deployment. This exposes the entirety of the underlying Helm Release component args.
 - image_
pull_ Sequence[pulumi_secrets kubernetes.core.v1. Local Object Reference Args]  - Optional array of imagePullSecrets containing private registry credentials Ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/.
 - name_
override str - Overrides for generated resource names.
 - pod_
security_ Controllerpolicy Pod Security Policy Args  - If true, create & use Pod Security Policy resources https://kubernetes.io/docs/concepts/policy/pod-security-policy/
 - rbac
Controller
RBACArgs  - Enable RBAC as per https://github.com/kubernetes/ingress-nginx/blob/main/docs/deploy/rbac.md and https://github.com/kubernetes/ingress-nginx/issues/266
 - revision_
history_ intlimit  - Rollback limit.
 - service_
account ControllerService Account Args  - tcp Mapping[str, Mapping[str, str]]
 - TCP service key:value pairs Ref: https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/exposing-tcp-udp-services.md.
 - udp Mapping[str, Mapping[str, str]]
 - UDP service key:value pairs Ref: https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/exposing-tcp-udp-services.md.
 
- controller Property Map
 - default
Backend Property Map - Default 404 backend.
 - dh
Param String - A base64ed Diffie-Hellman parameter. This can be generated with: openssl dhparam 4096 2> /dev/null | base64 Ref: https://github.com/kubernetes/ingress-nginx/tree/main/docs/examples/customization/ssl-dh-param.
 - fullname
Override String - Overrides for generated resource names.
 - helm
Options Property Map - HelmOptions is an escape hatch that lets the end user control any aspect of the Helm deployment. This exposes the entirety of the underlying Helm Release component args.
 - image
Pull List<Property Map>Secrets  - Optional array of imagePullSecrets containing private registry credentials Ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/.
 - name
Override String - Overrides for generated resource names.
 - pod
Security Property MapPolicy  - If true, create & use Pod Security Policy resources https://kubernetes.io/docs/concepts/policy/pod-security-policy/
 - rbac Property Map
 - Enable RBAC as per https://github.com/kubernetes/ingress-nginx/blob/main/docs/deploy/rbac.md and https://github.com/kubernetes/ingress-nginx/issues/266
 - revision
History NumberLimit  - Rollback limit.
 - service
Account Property Map - tcp Map<Map<String>>
 - TCP service key:value pairs Ref: https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/exposing-tcp-udp-services.md.
 - udp Map<Map<String>>
 - UDP service key:value pairs Ref: https://github.com/kubernetes/ingress-nginx/blob/main/docs/user-guide/exposing-tcp-udp-services.md.
 
Outputs
All input properties are implicitly available as output properties. Additionally, the IngressController resource produces the following output properties:
- Status
Pulumi.
Kubernetes Ingress Nginx. Outputs. Release Status  - Detailed information about the status of the underlying Helm deployment.
 
- Status
Release
Status  - Detailed information about the status of the underlying Helm deployment.
 
- status
Release
Status  - Detailed information about the status of the underlying Helm deployment.
 
- status
Release
Status  - Detailed information about the status of the underlying Helm deployment.
 
- status
Release
Status  - Detailed information about the status of the underlying Helm deployment.
 
- status Property Map
 - Detailed information about the status of the underlying Helm deployment.
 
Supporting Types
Autoscaling, AutoscalingArgs  
- Annotations Dictionary<string, string>
 - Controller
Autoscaling Pulumi.Behavior Kubernetes Ingress Nginx. Inputs. Autoscaling Behavior  - Enabled bool
 - Max
Replicas int - Min
Replicas int - Target
CPUUtilization intPercentage  - Target
Memory intUtilization Percentage  
- Annotations map[string]string
 - Controller
Autoscaling AutoscalingBehavior Behavior  - Enabled bool
 - Max
Replicas int - Min
Replicas int - Target
CPUUtilization intPercentage  - Target
Memory intUtilization Percentage  
- annotations Map<String,String>
 - controller
Autoscaling AutoscalingBehavior Behavior  - enabled Boolean
 - max
Replicas Integer - min
Replicas Integer - target
CPUUtilization IntegerPercentage  - target
Memory IntegerUtilization Percentage  
- annotations {[key: string]: string}
 - controller
Autoscaling AutoscalingBehavior Behavior  - enabled boolean
 - max
Replicas number - min
Replicas number - target
CPUUtilization numberPercentage  - target
Memory numberUtilization Percentage  
- annotations Map<String>
 - controller
Autoscaling Property MapBehavior  - enabled Boolean
 - max
Replicas Number - min
Replicas Number - target
CPUUtilization NumberPercentage  - target
Memory NumberUtilization Percentage  
AutoscalingBehavior, AutoscalingBehaviorArgs    
AutoscalingBehaviorScaling, AutoscalingBehaviorScalingArgs      
AutoscalingBehaviorScalingPolicy, AutoscalingBehaviorScalingPolicyArgs        
- Period
Seconds int - Type string
 - Value int
 
- Period
Seconds int - Type string
 - Value int
 
- period
Seconds Integer - type String
 - value Integer
 
- period
Seconds number - type string
 - value number
 
- period_
seconds int - type str
 - value int
 
- period
Seconds Number - type String
 - value Number
 
AutoscalingTemplate, AutoscalingTemplateArgs    
- Pods
Autoscaling
Template Pods  - Type string
 
- pods
Autoscaling
Template Pods  - type String
 
- pods
Autoscaling
Template Pods  - type string
 
- pods Property Map
 - type String
 
AutoscalingTemplatePods, AutoscalingTemplatePodsArgs      
AutoscalingTemplatePodsMetric, AutoscalingTemplatePodsMetricArgs        
- Name string
 
- Name string
 
- name String
 
- name string
 
- name str
 
- name String
 
AutoscalingTemplatePodsTarget, AutoscalingTemplatePodsTargetArgs        
- Average
Value string - Type string
 
- Average
Value string - Type string
 
- average
Value String - type String
 
- average
Value string - type string
 
- average_
value str - type str
 
- average
Value String - type String
 
ContollerAdmissionWebhooks, ContollerAdmissionWebhooksArgs      
- Annotations Dictionary<string, string>
 - Certificate string
 - Create
Secret Pulumi.Job Kubernetes Ingress Nginx. Inputs. Controller Admission Webhooks Create Secret Job  - Enabled bool
 - Existing
Psp string - Use an existing PSP instead of creating one.
 - Failure
Policy string - Key string
 - Namespace
Selector Dictionary<string, ImmutableDictionary<string, string>>  - Object
Selector Dictionary<string, ImmutableDictionary<string, string>>  - Patch
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Admission Webhooks Patch  - Patch
Webhook Pulumi.Job Kubernetes Ingress Nginx. Inputs. Controller Admission Webhooks Patch Webhbook Job  - Port int
 - Service
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Admission Webhooks Service  - Timeout
Seconds int 
- Annotations map[string]string
 - Certificate string
 - Create
Secret ControllerJob Admission Webhooks Create Secret Job  - Enabled bool
 - Existing
Psp string - Use an existing PSP instead of creating one.
 - Failure
Policy string - Key string
 - Namespace
Selector map[string]map[string]string - Object
Selector map[string]map[string]string - Patch
Controller
Admission Webhooks Patch  - Patch
Webhook ControllerJob Admission Webhooks Patch Webhbook Job  - Port int
 - Service
Controller
Admission Webhooks Service  - Timeout
Seconds int 
- annotations Map<String,String>
 - certificate String
 - create
Secret ControllerJob Admission Webhooks Create Secret Job  - enabled Boolean
 - existing
Psp String - Use an existing PSP instead of creating one.
 - failure
Policy String - key String
 - namespace
Selector Map<String,Map<String,String>> - object
Selector Map<String,Map<String,String>> - patch
Controller
Admission Webhooks Patch  - patch
Webhook ControllerJob Admission Webhooks Patch Webhbook Job  - port Integer
 - service
Controller
Admission Webhooks Service  - timeout
Seconds Integer 
- annotations {[key: string]: string}
 - certificate string
 - create
Secret ControllerJob Admission Webhooks Create Secret Job  - enabled boolean
 - existing
Psp string - Use an existing PSP instead of creating one.
 - failure
Policy string - key string
 - namespace
Selector {[key: string]: {[key: string]: string}} - object
Selector {[key: string]: {[key: string]: string}} - patch
Controller
Admission Webhooks Patch  - patch
Webhook ControllerJob Admission Webhooks Patch Webhbook Job  - port number
 - service
Controller
Admission Webhooks Service  - timeout
Seconds number 
- annotations Mapping[str, str]
 - certificate str
 - create_
secret_ Controllerjob Admission Webhooks Create Secret Job  - enabled bool
 - existing_
psp str - Use an existing PSP instead of creating one.
 - failure_
policy str - key str
 - namespace_
selector Mapping[str, Mapping[str, str]] - object_
selector Mapping[str, Mapping[str, str]] - patch
Controller
Admission Webhooks Patch  - patch_
webhook_ Controllerjob Admission Webhooks Patch Webhbook Job  - port int
 - service
Controller
Admission Webhooks Service  - timeout_
seconds int 
- annotations Map<String>
 - certificate String
 - create
Secret Property MapJob  - enabled Boolean
 - existing
Psp String - Use an existing PSP instead of creating one.
 - failure
Policy String - key String
 - namespace
Selector Map<Map<String>> - object
Selector Map<Map<String>> - patch Property Map
 - patch
Webhook Property MapJob  - port Number
 - service Property Map
 - timeout
Seconds Number 
Controller, ControllerArgs  
- Add
Headers Dictionary<string, ImmutableDictionary<string, string>>  - Will add custom headers before sending response traffic to the client according to: https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/#add-headers.
 - Admission
Webhooks Pulumi.Kubernetes Ingress Nginx. Inputs. Contoller Admission Webhooks  - Affinity
Pulumi.
Kubernetes. Types. Inputs. Core. V1. Affinity  - Affinity and anti-affinity Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity. This type is defined in the Kubernetes package.
 - Allow
Snippet boolAnnotations  - This configuration defines if Ingress Controller should allow users to set their own *-snippet annotations, otherwise this is forbidden / dropped when users add those annotations. Global snippets in ConfigMap are still respected.
 - Annotations Dictionary<string, string>
 - Annotations to be added to the controller Deployment or DaemonSet.
 - Autoscaling
Pulumi.
Kubernetes Ingress Nginx. Inputs. Autoscaling  - Mutually exclusive with keda autoscaling.
 - Autoscaling
Template List<Pulumi.Kubernetes Ingress Nginx. Inputs. Autoscaling Template>  - Custom or additional autoscaling metrics ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#support-for-custom-metrics
 - Config Dictionary<string, string>
 - Will add custom configuration options to Nginx https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/.
 - Config
Annotations Dictionary<string, string> - Annotations to be added to the controller config configuration configmap.
 - Config
Map stringNamespace  - Allows customization of the configmap / nginx-configmap namespace.
 - Container
Name string - Configures the controller container name.
 - Container
Port Pulumi.Kubernetes Ingress Nginx. Inputs. Controller Port  - Configures the ports the nginx-controller listens on.
 - Custom
Template Pulumi.Kubernetes Ingress Nginx. Inputs. Controller Custom Template  - Override NGINX template.
 - Dns
Config Dictionary<string, string> - Optionally customize the pod dnsConfig.
 - Dns
Policy string - Optionally change this to ClusterFirstWithHostNet in case you have 'hostNetwork: true'. By default, while using host network, name resolution uses the host's DNS. If you wish nginx-controller to keep resolving names inside the k8s network, use ClusterFirstWithHostNet.
 - Election
ID string - Election ID to use for status update.
 - Enable
Mimalloc bool - Enable mimalloc as a drop-in replacement for malloc. ref: https://github.com/microsoft/mimalloc.
 - Existing
Psp string - Use an existing PSP instead of creating one.
 - Extra
Args Dictionary<string, string> - Additional command line arguments to pass to nginx-ingress-controller E.g. to specify the default SSL certificate you can use 
default-ssl-certificate: "<namespace>/<secret_name>". - Extra
Containers List<Pulumi.Kubernetes. Types. Inputs. Core. V1. Container>  - Additional containers to be added to the controller pod. See https://github.com/lemonldap-ng-controller/lemonldap-ng-controller as example.
 - Extra
Envs List<Pulumi.Kubernetes. Types. Inputs. Core. V1. Env Var>  - Additional environment variables to set.
 - Extra
Init List<Pulumi.Containers Kubernetes. Types. Inputs. Core. V1. Container>  - Containers, which are run before the app containers are started. - name: init-myservice image: busybox command: ['sh', '-c', 'until nslookup myservice; do echo waiting for myservice; sleep 2; done;']
 - Extra
Volume List<Pulumi.Mounts Kubernetes. Types. Inputs. Core. V1. Volume Mount>  - Additional volumeMounts to the controller main container. - name: copy-portal-skins mountPath: /var/lib/lemonldap-ng/portal/skins
 - Extra
Volumes List<Pulumi.Kubernetes. Types. Inputs. Core. V1. Volume>  - Additional volumes to the controller pod. - name: copy-portal-skins emptyDir: {}
 - Health
Check stringPath  - Path of the health check endpoint. All requests received on the port defined by the healthz-port parameter are forwarded internally to this path.
 - Heath
Check stringHost  - Address to bind the health check endpoint. It is better to set this option to the internal node address if the ingress nginx controller is running in the hostNetwork: true mode.
 - Host
Network bool - Required for use with CNI based kubernetes installations (such as ones set up by kubeadm), since CNI and hostport don't mix yet. Can be deprecated once https://github.com/kubernetes/kubernetes/issues/23920 is merged.
 - Host
Port Pulumi.Kubernetes Ingress Nginx. Inputs. Controller Host Port  - Use host ports 80 and 443. Disabled by default.
 - Hostname
Dictionary<string, Immutable
Dictionary<string, string>>  - Optionally customize the pod hostname.
 - Image
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Image  - Ingress
Class boolBy Name  - Process IngressClass per name (additionally as per spec.controller).
 - Ingress
Class Pulumi.Resource Kubernetes Ingress Nginx. Inputs. Controller Ingress Class Resource  - This section refers to the creation of the IngressClass resource. IngressClass resources are supported since k8s >= 1.18 and required since k8s >= 1.19
 - Keda
Pulumi.
Kubernetes Ingress Nginx. Inputs. Keda  - Mutually exclusive with hpa autoscaling.
 - Kind string
 - DaemonSet or Deployment.
 - Lifecycle
Pulumi.
Kubernetes. Types. Inputs. Core. V1. Lifecycle  - Improve connection draining when ingress controller pod is deleted using a lifecycle hook: With this new hook, we increased the default terminationGracePeriodSeconds from 30 seconds to 300, allowing the draining of connections up to five minutes. If the active connections end before that, the pod will terminate gracefully at that time. To effectively take advantage of this feature, the Configmap feature worker-shutdown-timeout new value is 240s instead of 10s. This type is defined in the Kubernetes package.
 - Liveness
Probe Pulumi.Kubernetes. Types. Inputs. Core. V1. Probe  - Liveness probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - Maxmind
License stringKey  - Maxmind license key to download GeoLite2 Databases https://blog.maxmind.com/2019/12/18/significant-changes-to-accessing-and-using-geolite2-databases.
 - Metrics
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Metrics  - int
 - Min
Ready intSeconds  - minReadySeconds to avoid killing pods before we are ready.
 - Name string
 - Node
Selector Dictionary<string, string> - Node labels for controller pod assignment Ref: https://kubernetes.io/docs/user-guide/node-selection/.
 - Pod
Annotations Dictionary<string, string> - Annotations to be added to controller pods.
 - Pod
Labels Dictionary<string, string> - labels to add to the pod container metadata.
 - Pod
Security Pulumi.Context Kubernetes. Types. Inputs. Core. V1. Pod Security Context  - Security Context policies for controller pods. This type is defined in the Kubernetes package.
 - Priority
Class stringName  - Proxy
Set Dictionary<string, ImmutableHeaders Dictionary<string, string>>  - Will add custom headers before sending traffic to backends according to https://github.com/kubernetes/ingress-nginx/tree/main/docs/examples/customization/custom-headers.
 - Publish
Service Pulumi.Kubernetes Ingress Nginx. Inputs. Controller Publish Service  - Allows customization of the source of the IP address or FQDN to report in the ingress status field. By default, it reads the information provided by the service. If disable, the status field reports the IP address of the node or nodes where an ingress controller pod is running.
 - Readiness
Probe Pulumi.Kubernetes. Types. Inputs. Core. V1. Probe  - Readiness probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - Replica
Count int - Report
Node boolInternal Ip  - Bare-metal considerations via the host network https://kubernetes.github.io/ingress-nginx/deploy/baremetal/#via-the-host-network Ingress status was blank because there is no Service exposing the NGINX Ingress controller in a configuration using the host network, the default --publish-service flag used in standard cloud setups does not apply.
 - Resources
Pulumi.
Kubernetes. Types. Inputs. Core. V1. Resource Requirements  - Define requests resources to avoid probe issues due to CPU utilization in busy nodes ref: https://github.com/kubernetes/ingress-nginx/issues/4735#issuecomment-551204903 Ideally, there should be no limits. https://engineering.indeedblog.com/blog/2019/12/cpu-throttling-regression-fix/ This type is defined in the Kubernetes package.
 - Scope
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Scope  - Limit the scope of the controller.
 - Service
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Service  - Startup
Probe Pulumi.Kubernetes. Types. Inputs. Core. V1. Probe  - Startup probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - Sysctls
Dictionary<string, Immutable
Dictionary<string, string>>  - See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for notes on enabling and using sysctls.
 - Tcp
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Tcp  - Allows customization of the tcp-services-configmap.
 - Terminate
Grace intPeriod Seconds  - How long to wait for the drain of connections.
 - Tolerations
Pulumi.
Kubernetes. Types. Inputs. Core. V1. Toleration  - Node tolerations for server scheduling to nodes with taints Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/. This type is defined in the Kubernetes package.
 - Topology
Spread List<Pulumi.Constraints Kubernetes. Types. Inputs. Core. V1. Topology Spread Constraint>  - Topology spread constraints rely on node labels to identify the topology domain(s) that each Node is in. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/.
 - Udp
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Udp  - Update
Strategy Pulumi.Kubernetes Ingress Nginx. Inputs. Controller Update Strategy  - The update strategy to apply to the Deployment or DaemonSet.
 - Watch
Ingress boolWithout Class  - Process Ingress objects without ingressClass annotation/ingressClassName field. Overrides value for --watch-ingress-without-class flag of the controller binary. Defaults to false.
 
- Add
Headers map[string]map[string]string - Will add custom headers before sending response traffic to the client according to: https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/#add-headers.
 - Admission
Webhooks ContollerAdmission Webhooks  - Affinity Affinity
 - Affinity and anti-affinity Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity. This type is defined in the Kubernetes package.
 - Allow
Snippet boolAnnotations  - This configuration defines if Ingress Controller should allow users to set their own *-snippet annotations, otherwise this is forbidden / dropped when users add those annotations. Global snippets in ConfigMap are still respected.
 - Annotations map[string]string
 - Annotations to be added to the controller Deployment or DaemonSet.
 - Autoscaling Autoscaling
 - Mutually exclusive with keda autoscaling.
 - Autoscaling
Template []AutoscalingTemplate  - Custom or additional autoscaling metrics ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#support-for-custom-metrics
 - Config map[string]string
 - Will add custom configuration options to Nginx https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/.
 - Config
Annotations map[string]string - Annotations to be added to the controller config configuration configmap.
 - Config
Map stringNamespace  - Allows customization of the configmap / nginx-configmap namespace.
 - Container
Name string - Configures the controller container name.
 - Container
Port ControllerPort  - Configures the ports the nginx-controller listens on.
 - Custom
Template ControllerCustom Template  - Override NGINX template.
 - Dns
Config map[string]string - Optionally customize the pod dnsConfig.
 - Dns
Policy string - Optionally change this to ClusterFirstWithHostNet in case you have 'hostNetwork: true'. By default, while using host network, name resolution uses the host's DNS. If you wish nginx-controller to keep resolving names inside the k8s network, use ClusterFirstWithHostNet.
 - Election
ID string - Election ID to use for status update.
 - Enable
Mimalloc bool - Enable mimalloc as a drop-in replacement for malloc. ref: https://github.com/microsoft/mimalloc.
 - Existing
Psp string - Use an existing PSP instead of creating one.
 - Extra
Args map[string]string - Additional command line arguments to pass to nginx-ingress-controller E.g. to specify the default SSL certificate you can use 
default-ssl-certificate: "<namespace>/<secret_name>". - Extra
Containers Container - Additional containers to be added to the controller pod. See https://github.com/lemonldap-ng-controller/lemonldap-ng-controller as example.
 - Extra
Envs EnvVar  - Additional environment variables to set.
 - Extra
Init ContainerContainers  - Containers, which are run before the app containers are started. - name: init-myservice image: busybox command: ['sh', '-c', 'until nslookup myservice; do echo waiting for myservice; sleep 2; done;']
 - Extra
Volume VolumeMounts Mount  - Additional volumeMounts to the controller main container. - name: copy-portal-skins mountPath: /var/lib/lemonldap-ng/portal/skins
 - Extra
Volumes Volume - Additional volumes to the controller pod. - name: copy-portal-skins emptyDir: {}
 - Health
Check stringPath  - Path of the health check endpoint. All requests received on the port defined by the healthz-port parameter are forwarded internally to this path.
 - Heath
Check stringHost  - Address to bind the health check endpoint. It is better to set this option to the internal node address if the ingress nginx controller is running in the hostNetwork: true mode.
 - Host
Network bool - Required for use with CNI based kubernetes installations (such as ones set up by kubeadm), since CNI and hostport don't mix yet. Can be deprecated once https://github.com/kubernetes/kubernetes/issues/23920 is merged.
 - Host
Port ControllerHost Port  - Use host ports 80 and 443. Disabled by default.
 - Hostname map[string]map[string]string
 - Optionally customize the pod hostname.
 - Image
Controller
Image  - Ingress
Class boolBy Name  - Process IngressClass per name (additionally as per spec.controller).
 - Ingress
Class ControllerResource Ingress Class Resource  - This section refers to the creation of the IngressClass resource. IngressClass resources are supported since k8s >= 1.18 and required since k8s >= 1.19
 - Keda Keda
 - Mutually exclusive with hpa autoscaling.
 - Kind string
 - DaemonSet or Deployment.
 - Lifecycle Lifecycle
 - Improve connection draining when ingress controller pod is deleted using a lifecycle hook: With this new hook, we increased the default terminationGracePeriodSeconds from 30 seconds to 300, allowing the draining of connections up to five minutes. If the active connections end before that, the pod will terminate gracefully at that time. To effectively take advantage of this feature, the Configmap feature worker-shutdown-timeout new value is 240s instead of 10s. This type is defined in the Kubernetes package.
 - Liveness
Probe Probe - Liveness probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - Maxmind
License stringKey  - Maxmind license key to download GeoLite2 Databases https://blog.maxmind.com/2019/12/18/significant-changes-to-accessing-and-using-geolite2-databases.
 - Metrics
Controller
Metrics  - int
 - Min
Ready intSeconds  - minReadySeconds to avoid killing pods before we are ready.
 - Name string
 - Node
Selector map[string]string - Node labels for controller pod assignment Ref: https://kubernetes.io/docs/user-guide/node-selection/.
 - Pod
Annotations map[string]string - Annotations to be added to controller pods.
 - Pod
Labels map[string]string - labels to add to the pod container metadata.
 - Pod
Security PodContext Security Context  - Security Context policies for controller pods. This type is defined in the Kubernetes package.
 - Priority
Class stringName  - Proxy
Set map[string]map[string]stringHeaders  - Will add custom headers before sending traffic to backends according to https://github.com/kubernetes/ingress-nginx/tree/main/docs/examples/customization/custom-headers.
 - Publish
Service ControllerPublish Service  - Allows customization of the source of the IP address or FQDN to report in the ingress status field. By default, it reads the information provided by the service. If disable, the status field reports the IP address of the node or nodes where an ingress controller pod is running.
 - Readiness
Probe Probe - Readiness probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - Replica
Count int - Report
Node boolInternal Ip  - Bare-metal considerations via the host network https://kubernetes.github.io/ingress-nginx/deploy/baremetal/#via-the-host-network Ingress status was blank because there is no Service exposing the NGINX Ingress controller in a configuration using the host network, the default --publish-service flag used in standard cloud setups does not apply.
 - Resources
Resource
Requirements  - Define requests resources to avoid probe issues due to CPU utilization in busy nodes ref: https://github.com/kubernetes/ingress-nginx/issues/4735#issuecomment-551204903 Ideally, there should be no limits. https://engineering.indeedblog.com/blog/2019/12/cpu-throttling-regression-fix/ This type is defined in the Kubernetes package.
 - Scope
Controller
Scope  - Limit the scope of the controller.
 - Service
Controller
Service  - Startup
Probe Probe - Startup probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - Sysctls map[string]map[string]string
 - See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for notes on enabling and using sysctls.
 - Tcp
Controller
Tcp  - Allows customization of the tcp-services-configmap.
 - Terminate
Grace intPeriod Seconds  - How long to wait for the drain of connections.
 - Tolerations Toleration
 - Node tolerations for server scheduling to nodes with taints Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/. This type is defined in the Kubernetes package.
 - Topology
Spread TopologyConstraints Spread Constraint  - Topology spread constraints rely on node labels to identify the topology domain(s) that each Node is in. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/.
 - Udp
Controller
Udp  - Update
Strategy ControllerUpdate Strategy  - The update strategy to apply to the Deployment or DaemonSet.
 - Watch
Ingress boolWithout Class  - Process Ingress objects without ingressClass annotation/ingressClassName field. Overrides value for --watch-ingress-without-class flag of the controller binary. Defaults to false.
 
- add
Headers Map<String,Map<String,String>> - Will add custom headers before sending response traffic to the client according to: https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/#add-headers.
 - admission
Webhooks ContollerAdmission Webhooks  - affinity Affinity
 - Affinity and anti-affinity Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity. This type is defined in the Kubernetes package.
 - allow
Snippet BooleanAnnotations  - This configuration defines if Ingress Controller should allow users to set their own *-snippet annotations, otherwise this is forbidden / dropped when users add those annotations. Global snippets in ConfigMap are still respected.
 - annotations Map<String,String>
 - Annotations to be added to the controller Deployment or DaemonSet.
 - autoscaling Autoscaling
 - Mutually exclusive with keda autoscaling.
 - autoscaling
Template List<AutoscalingTemplate>  - Custom or additional autoscaling metrics ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#support-for-custom-metrics
 - config Map<String,String>
 - Will add custom configuration options to Nginx https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/.
 - config
Annotations Map<String,String> - Annotations to be added to the controller config configuration configmap.
 - config
Map StringNamespace  - Allows customization of the configmap / nginx-configmap namespace.
 - container
Name String - Configures the controller container name.
 - container
Port ControllerPort  - Configures the ports the nginx-controller listens on.
 - custom
Template ControllerCustom Template  - Override NGINX template.
 - dns
Config Map<String,String> - Optionally customize the pod dnsConfig.
 - dns
Policy String - Optionally change this to ClusterFirstWithHostNet in case you have 'hostNetwork: true'. By default, while using host network, name resolution uses the host's DNS. If you wish nginx-controller to keep resolving names inside the k8s network, use ClusterFirstWithHostNet.
 - election
ID String - Election ID to use for status update.
 - enable
Mimalloc Boolean - Enable mimalloc as a drop-in replacement for malloc. ref: https://github.com/microsoft/mimalloc.
 - existing
Psp String - Use an existing PSP instead of creating one.
 - extra
Args Map<String,String> - Additional command line arguments to pass to nginx-ingress-controller E.g. to specify the default SSL certificate you can use 
default-ssl-certificate: "<namespace>/<secret_name>". - extra
Containers List<Container> - Additional containers to be added to the controller pod. See https://github.com/lemonldap-ng-controller/lemonldap-ng-controller as example.
 - extra
Envs List<EnvVar>  - Additional environment variables to set.
 - extra
Init List<Container>Containers  - Containers, which are run before the app containers are started. - name: init-myservice image: busybox command: ['sh', '-c', 'until nslookup myservice; do echo waiting for myservice; sleep 2; done;']
 - extra
Volume List<VolumeMounts Mount>  - Additional volumeMounts to the controller main container. - name: copy-portal-skins mountPath: /var/lib/lemonldap-ng/portal/skins
 - extra
Volumes List<Volume> - Additional volumes to the controller pod. - name: copy-portal-skins emptyDir: {}
 - health
Check StringPath  - Path of the health check endpoint. All requests received on the port defined by the healthz-port parameter are forwarded internally to this path.
 - heath
Check StringHost  - Address to bind the health check endpoint. It is better to set this option to the internal node address if the ingress nginx controller is running in the hostNetwork: true mode.
 - host
Network Boolean - Required for use with CNI based kubernetes installations (such as ones set up by kubeadm), since CNI and hostport don't mix yet. Can be deprecated once https://github.com/kubernetes/kubernetes/issues/23920 is merged.
 - host
Port ControllerHost Port  - Use host ports 80 and 443. Disabled by default.
 - hostname Map<String,Map<String,String>>
 - Optionally customize the pod hostname.
 - image
Controller
Image  - ingress
Class BooleanBy Name  - Process IngressClass per name (additionally as per spec.controller).
 - ingress
Class ControllerResource Ingress Class Resource  - This section refers to the creation of the IngressClass resource. IngressClass resources are supported since k8s >= 1.18 and required since k8s >= 1.19
 - keda Keda
 - Mutually exclusive with hpa autoscaling.
 - kind String
 - DaemonSet or Deployment.
 - lifecycle Lifecycle
 - Improve connection draining when ingress controller pod is deleted using a lifecycle hook: With this new hook, we increased the default terminationGracePeriodSeconds from 30 seconds to 300, allowing the draining of connections up to five minutes. If the active connections end before that, the pod will terminate gracefully at that time. To effectively take advantage of this feature, the Configmap feature worker-shutdown-timeout new value is 240s instead of 10s. This type is defined in the Kubernetes package.
 - liveness
Probe Probe - Liveness probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - maxmind
License StringKey  - Maxmind license key to download GeoLite2 Databases https://blog.maxmind.com/2019/12/18/significant-changes-to-accessing-and-using-geolite2-databases.
 - metrics
Controller
Metrics  - Integer
 - min
Ready IntegerSeconds  - minReadySeconds to avoid killing pods before we are ready.
 - name String
 - node
Selector Map<String,String> - Node labels for controller pod assignment Ref: https://kubernetes.io/docs/user-guide/node-selection/.
 - pod
Annotations Map<String,String> - Annotations to be added to controller pods.
 - pod
Labels Map<String,String> - labels to add to the pod container metadata.
 - pod
Security PodContext Security Context  - Security Context policies for controller pods. This type is defined in the Kubernetes package.
 - priority
Class StringName  - proxy
Set Map<String,Map<String,String>>Headers  - Will add custom headers before sending traffic to backends according to https://github.com/kubernetes/ingress-nginx/tree/main/docs/examples/customization/custom-headers.
 - publish
Service ControllerPublish Service  - Allows customization of the source of the IP address or FQDN to report in the ingress status field. By default, it reads the information provided by the service. If disable, the status field reports the IP address of the node or nodes where an ingress controller pod is running.
 - readiness
Probe Probe - Readiness probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - replica
Count Integer - report
Node BooleanInternal Ip  - Bare-metal considerations via the host network https://kubernetes.github.io/ingress-nginx/deploy/baremetal/#via-the-host-network Ingress status was blank because there is no Service exposing the NGINX Ingress controller in a configuration using the host network, the default --publish-service flag used in standard cloud setups does not apply.
 - resources
Resource
Requirements  - Define requests resources to avoid probe issues due to CPU utilization in busy nodes ref: https://github.com/kubernetes/ingress-nginx/issues/4735#issuecomment-551204903 Ideally, there should be no limits. https://engineering.indeedblog.com/blog/2019/12/cpu-throttling-regression-fix/ This type is defined in the Kubernetes package.
 - scope
Controller
Scope  - Limit the scope of the controller.
 - service
Controller
Service  - startup
Probe Probe - Startup probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - sysctls Map<String,Map<String,String>>
 - See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for notes on enabling and using sysctls.
 - tcp
Controller
Tcp  - Allows customization of the tcp-services-configmap.
 - terminate
Grace IntegerPeriod Seconds  - How long to wait for the drain of connections.
 - tolerations Toleration
 - Node tolerations for server scheduling to nodes with taints Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/. This type is defined in the Kubernetes package.
 - topology
Spread List<TopologyConstraints Spread Constraint>  - Topology spread constraints rely on node labels to identify the topology domain(s) that each Node is in. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/.
 - udp
Controller
Udp  - update
Strategy ControllerUpdate Strategy  - The update strategy to apply to the Deployment or DaemonSet.
 - watch
Ingress BooleanWithout Class  - Process Ingress objects without ingressClass annotation/ingressClassName field. Overrides value for --watch-ingress-without-class flag of the controller binary. Defaults to false.
 
- add
Headers {[key: string]: {[key: string]: string}} - Will add custom headers before sending response traffic to the client according to: https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/#add-headers.
 - admission
Webhooks ContollerAdmission Webhooks  - affinity
pulumi
Kubernetestypesinputcorev1Affinity  - Affinity and anti-affinity Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity. This type is defined in the Kubernetes package.
 - allow
Snippet booleanAnnotations  - This configuration defines if Ingress Controller should allow users to set their own *-snippet annotations, otherwise this is forbidden / dropped when users add those annotations. Global snippets in ConfigMap are still respected.
 - annotations {[key: string]: string}
 - Annotations to be added to the controller Deployment or DaemonSet.
 - autoscaling Autoscaling
 - Mutually exclusive with keda autoscaling.
 - autoscaling
Template AutoscalingTemplate[]  - Custom or additional autoscaling metrics ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#support-for-custom-metrics
 - config {[key: string]: string}
 - Will add custom configuration options to Nginx https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/.
 - config
Annotations {[key: string]: string} - Annotations to be added to the controller config configuration configmap.
 - config
Map stringNamespace  - Allows customization of the configmap / nginx-configmap namespace.
 - container
Name string - Configures the controller container name.
 - container
Port ControllerPort  - Configures the ports the nginx-controller listens on.
 - custom
Template ControllerCustom Template  - Override NGINX template.
 - dns
Config {[key: string]: string} - Optionally customize the pod dnsConfig.
 - dns
Policy string - Optionally change this to ClusterFirstWithHostNet in case you have 'hostNetwork: true'. By default, while using host network, name resolution uses the host's DNS. If you wish nginx-controller to keep resolving names inside the k8s network, use ClusterFirstWithHostNet.
 - election
ID string - Election ID to use for status update.
 - enable
Mimalloc boolean - Enable mimalloc as a drop-in replacement for malloc. ref: https://github.com/microsoft/mimalloc.
 - existing
Psp string - Use an existing PSP instead of creating one.
 - extra
Args {[key: string]: string} - Additional command line arguments to pass to nginx-ingress-controller E.g. to specify the default SSL certificate you can use 
default-ssl-certificate: "<namespace>/<secret_name>". - extra
Containers pulumiKubernetestypesinputcorev1Container[]  - Additional containers to be added to the controller pod. See https://github.com/lemonldap-ng-controller/lemonldap-ng-controller as example.
 - extra
Envs pulumiKubernetestypesinputcorev1Env Var[]  - Additional environment variables to set.
 - extra
Init pulumiContainers Kubernetestypesinputcorev1Container[]  - Containers, which are run before the app containers are started. - name: init-myservice image: busybox command: ['sh', '-c', 'until nslookup myservice; do echo waiting for myservice; sleep 2; done;']
 - extra
Volume pulumiMounts Kubernetestypesinputcorev1Volume Mount[]  - Additional volumeMounts to the controller main container. - name: copy-portal-skins mountPath: /var/lib/lemonldap-ng/portal/skins
 - extra
Volumes pulumiKubernetestypesinputcorev1Volume[]  - Additional volumes to the controller pod. - name: copy-portal-skins emptyDir: {}
 - health
Check stringPath  - Path of the health check endpoint. All requests received on the port defined by the healthz-port parameter are forwarded internally to this path.
 - heath
Check stringHost  - Address to bind the health check endpoint. It is better to set this option to the internal node address if the ingress nginx controller is running in the hostNetwork: true mode.
 - host
Network boolean - Required for use with CNI based kubernetes installations (such as ones set up by kubeadm), since CNI and hostport don't mix yet. Can be deprecated once https://github.com/kubernetes/kubernetes/issues/23920 is merged.
 - host
Port ControllerHost Port  - Use host ports 80 and 443. Disabled by default.
 - hostname {[key: string]: {[key: string]: string}}
 - Optionally customize the pod hostname.
 - image
Controller
Image  - ingress
Class booleanBy Name  - Process IngressClass per name (additionally as per spec.controller).
 - ingress
Class ControllerResource Ingress Class Resource  - This section refers to the creation of the IngressClass resource. IngressClass resources are supported since k8s >= 1.18 and required since k8s >= 1.19
 - keda Keda
 - Mutually exclusive with hpa autoscaling.
 - kind string
 - DaemonSet or Deployment.
 - lifecycle
pulumi
Kubernetestypesinputcorev1Lifecycle  - Improve connection draining when ingress controller pod is deleted using a lifecycle hook: With this new hook, we increased the default terminationGracePeriodSeconds from 30 seconds to 300, allowing the draining of connections up to five minutes. If the active connections end before that, the pod will terminate gracefully at that time. To effectively take advantage of this feature, the Configmap feature worker-shutdown-timeout new value is 240s instead of 10s. This type is defined in the Kubernetes package.
 - liveness
Probe pulumiKubernetestypesinputcorev1Probe  - Liveness probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - maxmind
License stringKey  - Maxmind license key to download GeoLite2 Databases https://blog.maxmind.com/2019/12/18/significant-changes-to-accessing-and-using-geolite2-databases.
 - metrics
Controller
Metrics  - number
 - min
Ready numberSeconds  - minReadySeconds to avoid killing pods before we are ready.
 - name string
 - node
Selector {[key: string]: string} - Node labels for controller pod assignment Ref: https://kubernetes.io/docs/user-guide/node-selection/.
 - pod
Annotations {[key: string]: string} - Annotations to be added to controller pods.
 - pod
Labels {[key: string]: string} - labels to add to the pod container metadata.
 - pod
Security pulumiContext Kubernetestypesinputcorev1Pod Security Context  - Security Context policies for controller pods. This type is defined in the Kubernetes package.
 - priority
Class stringName  - proxy
Set {[key: string]: {[key: string]: string}}Headers  - Will add custom headers before sending traffic to backends according to https://github.com/kubernetes/ingress-nginx/tree/main/docs/examples/customization/custom-headers.
 - publish
Service ControllerPublish Service  - Allows customization of the source of the IP address or FQDN to report in the ingress status field. By default, it reads the information provided by the service. If disable, the status field reports the IP address of the node or nodes where an ingress controller pod is running.
 - readiness
Probe pulumiKubernetestypesinputcorev1Probe  - Readiness probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - replica
Count number - report
Node booleanInternal Ip  - Bare-metal considerations via the host network https://kubernetes.github.io/ingress-nginx/deploy/baremetal/#via-the-host-network Ingress status was blank because there is no Service exposing the NGINX Ingress controller in a configuration using the host network, the default --publish-service flag used in standard cloud setups does not apply.
 - resources
pulumi
Kubernetestypesinputcorev1Resource Requirements  - Define requests resources to avoid probe issues due to CPU utilization in busy nodes ref: https://github.com/kubernetes/ingress-nginx/issues/4735#issuecomment-551204903 Ideally, there should be no limits. https://engineering.indeedblog.com/blog/2019/12/cpu-throttling-regression-fix/ This type is defined in the Kubernetes package.
 - scope
Controller
Scope  - Limit the scope of the controller.
 - service
Controller
Service  - startup
Probe pulumiKubernetestypesinputcorev1Probe  - Startup probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - sysctls {[key: string]: {[key: string]: string}}
 - See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for notes on enabling and using sysctls.
 - tcp
Controller
Tcp  - Allows customization of the tcp-services-configmap.
 - terminate
Grace numberPeriod Seconds  - How long to wait for the drain of connections.
 - tolerations
pulumi
Kubernetestypesinputcorev1Toleration  - Node tolerations for server scheduling to nodes with taints Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/. This type is defined in the Kubernetes package.
 - topology
Spread pulumiConstraints Kubernetestypesinputcorev1Topology Spread Constraint[]  - Topology spread constraints rely on node labels to identify the topology domain(s) that each Node is in. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/.
 - udp
Controller
Udp  - update
Strategy ControllerUpdate Strategy  - The update strategy to apply to the Deployment or DaemonSet.
 - watch
Ingress booleanWithout Class  - Process Ingress objects without ingressClass annotation/ingressClassName field. Overrides value for --watch-ingress-without-class flag of the controller binary. Defaults to false.
 
- add_
headers Mapping[str, Mapping[str, str]] - Will add custom headers before sending response traffic to the client according to: https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/#add-headers.
 - admission_
webhooks ContollerAdmission Webhooks  - affinity
pulumi_
kubernetes.core.v1. Affinity Args  - Affinity and anti-affinity Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity. This type is defined in the Kubernetes package.
 - allow_
snippet_ boolannotations  - This configuration defines if Ingress Controller should allow users to set their own *-snippet annotations, otherwise this is forbidden / dropped when users add those annotations. Global snippets in ConfigMap are still respected.
 - annotations Mapping[str, str]
 - Annotations to be added to the controller Deployment or DaemonSet.
 - autoscaling Autoscaling
 - Mutually exclusive with keda autoscaling.
 - autoscaling_
template Sequence[AutoscalingTemplate]  - Custom or additional autoscaling metrics ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#support-for-custom-metrics
 - config Mapping[str, str]
 - Will add custom configuration options to Nginx https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/.
 - config_
annotations Mapping[str, str] - Annotations to be added to the controller config configuration configmap.
 - config_
map_ strnamespace  - Allows customization of the configmap / nginx-configmap namespace.
 - container_
name str - Configures the controller container name.
 - container_
port ControllerPort  - Configures the ports the nginx-controller listens on.
 - custom_
template ControllerCustom Template  - Override NGINX template.
 - dns_
config Mapping[str, str] - Optionally customize the pod dnsConfig.
 - dns_
policy str - Optionally change this to ClusterFirstWithHostNet in case you have 'hostNetwork: true'. By default, while using host network, name resolution uses the host's DNS. If you wish nginx-controller to keep resolving names inside the k8s network, use ClusterFirstWithHostNet.
 - election_
id str - Election ID to use for status update.
 - enable_
mimalloc bool - Enable mimalloc as a drop-in replacement for malloc. ref: https://github.com/microsoft/mimalloc.
 - existing_
psp str - Use an existing PSP instead of creating one.
 - extra_
args Mapping[str, str] - Additional command line arguments to pass to nginx-ingress-controller E.g. to specify the default SSL certificate you can use 
default-ssl-certificate: "<namespace>/<secret_name>". - extra_
containers Sequence[pulumi_kubernetes.core.v1. Container Args]  - Additional containers to be added to the controller pod. See https://github.com/lemonldap-ng-controller/lemonldap-ng-controller as example.
 - extra_
envs Sequence[pulumi_kubernetes.core.v1. Env Var Args]  - Additional environment variables to set.
 - extra_
init_ Sequence[pulumi_containers kubernetes.core.v1. Container Args]  - Containers, which are run before the app containers are started. - name: init-myservice image: busybox command: ['sh', '-c', 'until nslookup myservice; do echo waiting for myservice; sleep 2; done;']
 - extra_
volume_ Sequence[pulumi_mounts kubernetes.core.v1. Volume Mount Args]  - Additional volumeMounts to the controller main container. - name: copy-portal-skins mountPath: /var/lib/lemonldap-ng/portal/skins
 - extra_
volumes Sequence[pulumi_kubernetes.core.v1. Volume Args]  - Additional volumes to the controller pod. - name: copy-portal-skins emptyDir: {}
 - health_
check_ strpath  - Path of the health check endpoint. All requests received on the port defined by the healthz-port parameter are forwarded internally to this path.
 - heath_
check_ strhost  - Address to bind the health check endpoint. It is better to set this option to the internal node address if the ingress nginx controller is running in the hostNetwork: true mode.
 - host_
network bool - Required for use with CNI based kubernetes installations (such as ones set up by kubeadm), since CNI and hostport don't mix yet. Can be deprecated once https://github.com/kubernetes/kubernetes/issues/23920 is merged.
 - host_
port ControllerHost Port  - Use host ports 80 and 443. Disabled by default.
 - hostname Mapping[str, Mapping[str, str]]
 - Optionally customize the pod hostname.
 - image
Controller
Image  - ingress_
class_ boolby_ name  - Process IngressClass per name (additionally as per spec.controller).
 - ingress_
class_ Controllerresource Ingress Class Resource  - This section refers to the creation of the IngressClass resource. IngressClass resources are supported since k8s >= 1.18 and required since k8s >= 1.19
 - keda Keda
 - Mutually exclusive with hpa autoscaling.
 - kind str
 - DaemonSet or Deployment.
 - lifecycle
pulumi_
kubernetes.core.v1. Lifecycle Args  - Improve connection draining when ingress controller pod is deleted using a lifecycle hook: With this new hook, we increased the default terminationGracePeriodSeconds from 30 seconds to 300, allowing the draining of connections up to five minutes. If the active connections end before that, the pod will terminate gracefully at that time. To effectively take advantage of this feature, the Configmap feature worker-shutdown-timeout new value is 240s instead of 10s. This type is defined in the Kubernetes package.
 - liveness_
probe pulumi_kubernetes.core.v1. Probe Args  - Liveness probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - maxmind_
license_ strkey  - Maxmind license key to download GeoLite2 Databases https://blog.maxmind.com/2019/12/18/significant-changes-to-accessing-and-using-geolite2-databases.
 - metrics
Controller
Metrics  - min_
available int - min_
ready_ intseconds  - minReadySeconds to avoid killing pods before we are ready.
 - name str
 - node_
selector Mapping[str, str] - Node labels for controller pod assignment Ref: https://kubernetes.io/docs/user-guide/node-selection/.
 - pod_
annotations Mapping[str, str] - Annotations to be added to controller pods.
 - pod_
labels Mapping[str, str] - labels to add to the pod container metadata.
 - pod_
security_ pulumi_context kubernetes.core.v1. Pod Security Context Args  - Security Context policies for controller pods. This type is defined in the Kubernetes package.
 - priority_
class_ strname  - proxy_
set_ Mapping[str, Mapping[str, str]]headers  - Will add custom headers before sending traffic to backends according to https://github.com/kubernetes/ingress-nginx/tree/main/docs/examples/customization/custom-headers.
 - publish_
service ControllerPublish Service  - Allows customization of the source of the IP address or FQDN to report in the ingress status field. By default, it reads the information provided by the service. If disable, the status field reports the IP address of the node or nodes where an ingress controller pod is running.
 - readiness_
probe pulumi_kubernetes.core.v1. Probe Args  - Readiness probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - replica_
count int - report_
node_ boolinternal_ ip  - Bare-metal considerations via the host network https://kubernetes.github.io/ingress-nginx/deploy/baremetal/#via-the-host-network Ingress status was blank because there is no Service exposing the NGINX Ingress controller in a configuration using the host network, the default --publish-service flag used in standard cloud setups does not apply.
 - resources
pulumi_
kubernetes.core.v1. Resource Requirements Args  - Define requests resources to avoid probe issues due to CPU utilization in busy nodes ref: https://github.com/kubernetes/ingress-nginx/issues/4735#issuecomment-551204903 Ideally, there should be no limits. https://engineering.indeedblog.com/blog/2019/12/cpu-throttling-regression-fix/ This type is defined in the Kubernetes package.
 - scope
Controller
Scope  - Limit the scope of the controller.
 - service
Controller
Service  - startup_
probe pulumi_kubernetes.core.v1. Probe Args  - Startup probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - sysctls Mapping[str, Mapping[str, str]]
 - See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for notes on enabling and using sysctls.
 - tcp
Controller
Tcp  - Allows customization of the tcp-services-configmap.
 - terminate_
grace_ intperiod_ seconds  - How long to wait for the drain of connections.
 - tolerations
pulumi_
kubernetes.core.v1. Toleration Args  - Node tolerations for server scheduling to nodes with taints Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/. This type is defined in the Kubernetes package.
 - topology_
spread_ Sequence[pulumi_constraints kubernetes.core.v1. Topology Spread Constraint Args]  - Topology spread constraints rely on node labels to identify the topology domain(s) that each Node is in. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/.
 - udp
Controller
Udp  - update_
strategy ControllerUpdate Strategy  - The update strategy to apply to the Deployment or DaemonSet.
 - watch_
ingress_ boolwithout_ class  - Process Ingress objects without ingressClass annotation/ingressClassName field. Overrides value for --watch-ingress-without-class flag of the controller binary. Defaults to false.
 
- add
Headers Map<Map<String>> - Will add custom headers before sending response traffic to the client according to: https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/#add-headers.
 - admission
Webhooks Property Map - affinity Property Map
 - Affinity and anti-affinity Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity. This type is defined in the Kubernetes package.
 - allow
Snippet BooleanAnnotations  - This configuration defines if Ingress Controller should allow users to set their own *-snippet annotations, otherwise this is forbidden / dropped when users add those annotations. Global snippets in ConfigMap are still respected.
 - annotations Map<String>
 - Annotations to be added to the controller Deployment or DaemonSet.
 - autoscaling Property Map
 - Mutually exclusive with keda autoscaling.
 - autoscaling
Template List<Property Map> - Custom or additional autoscaling metrics ref: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#support-for-custom-metrics
 - config Map<String>
 - Will add custom configuration options to Nginx https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/.
 - config
Annotations Map<String> - Annotations to be added to the controller config configuration configmap.
 - config
Map StringNamespace  - Allows customization of the configmap / nginx-configmap namespace.
 - container
Name String - Configures the controller container name.
 - container
Port Property Map - Configures the ports the nginx-controller listens on.
 - custom
Template Property Map - Override NGINX template.
 - dns
Config Map<String> - Optionally customize the pod dnsConfig.
 - dns
Policy String - Optionally change this to ClusterFirstWithHostNet in case you have 'hostNetwork: true'. By default, while using host network, name resolution uses the host's DNS. If you wish nginx-controller to keep resolving names inside the k8s network, use ClusterFirstWithHostNet.
 - election
ID String - Election ID to use for status update.
 - enable
Mimalloc Boolean - Enable mimalloc as a drop-in replacement for malloc. ref: https://github.com/microsoft/mimalloc.
 - existing
Psp String - Use an existing PSP instead of creating one.
 - extra
Args Map<String> - Additional command line arguments to pass to nginx-ingress-controller E.g. to specify the default SSL certificate you can use 
default-ssl-certificate: "<namespace>/<secret_name>". - extra
Containers List<Property Map> - Additional containers to be added to the controller pod. See https://github.com/lemonldap-ng-controller/lemonldap-ng-controller as example.
 - extra
Envs List<Property Map> - Additional environment variables to set.
 - extra
Init List<Property Map>Containers  - Containers, which are run before the app containers are started. - name: init-myservice image: busybox command: ['sh', '-c', 'until nslookup myservice; do echo waiting for myservice; sleep 2; done;']
 - extra
Volume List<Property Map>Mounts  - Additional volumeMounts to the controller main container. - name: copy-portal-skins mountPath: /var/lib/lemonldap-ng/portal/skins
 - extra
Volumes List<Property Map> - Additional volumes to the controller pod. - name: copy-portal-skins emptyDir: {}
 - health
Check StringPath  - Path of the health check endpoint. All requests received on the port defined by the healthz-port parameter are forwarded internally to this path.
 - heath
Check StringHost  - Address to bind the health check endpoint. It is better to set this option to the internal node address if the ingress nginx controller is running in the hostNetwork: true mode.
 - host
Network Boolean - Required for use with CNI based kubernetes installations (such as ones set up by kubeadm), since CNI and hostport don't mix yet. Can be deprecated once https://github.com/kubernetes/kubernetes/issues/23920 is merged.
 - host
Port Property Map - Use host ports 80 and 443. Disabled by default.
 - hostname Map<Map<String>>
 - Optionally customize the pod hostname.
 - image Property Map
 - ingress
Class BooleanBy Name  - Process IngressClass per name (additionally as per spec.controller).
 - ingress
Class Property MapResource  - This section refers to the creation of the IngressClass resource. IngressClass resources are supported since k8s >= 1.18 and required since k8s >= 1.19
 - keda Property Map
 - Mutually exclusive with hpa autoscaling.
 - kind String
 - DaemonSet or Deployment.
 - lifecycle Property Map
 - Improve connection draining when ingress controller pod is deleted using a lifecycle hook: With this new hook, we increased the default terminationGracePeriodSeconds from 30 seconds to 300, allowing the draining of connections up to five minutes. If the active connections end before that, the pod will terminate gracefully at that time. To effectively take advantage of this feature, the Configmap feature worker-shutdown-timeout new value is 240s instead of 10s. This type is defined in the Kubernetes package.
 - liveness
Probe Property Map - Liveness probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - maxmind
License StringKey  - Maxmind license key to download GeoLite2 Databases https://blog.maxmind.com/2019/12/18/significant-changes-to-accessing-and-using-geolite2-databases.
 - metrics Property Map
 - Number
 - min
Ready NumberSeconds  - minReadySeconds to avoid killing pods before we are ready.
 - name String
 - node
Selector Map<String> - Node labels for controller pod assignment Ref: https://kubernetes.io/docs/user-guide/node-selection/.
 - pod
Annotations Map<String> - Annotations to be added to controller pods.
 - pod
Labels Map<String> - labels to add to the pod container metadata.
 - pod
Security Property MapContext  - Security Context policies for controller pods. This type is defined in the Kubernetes package.
 - priority
Class StringName  - proxy
Set Map<Map<String>>Headers  - Will add custom headers before sending traffic to backends according to https://github.com/kubernetes/ingress-nginx/tree/main/docs/examples/customization/custom-headers.
 - publish
Service Property Map - Allows customization of the source of the IP address or FQDN to report in the ingress status field. By default, it reads the information provided by the service. If disable, the status field reports the IP address of the node or nodes where an ingress controller pod is running.
 - readiness
Probe Property Map - Readiness probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - replica
Count Number - report
Node BooleanInternal Ip  - Bare-metal considerations via the host network https://kubernetes.github.io/ingress-nginx/deploy/baremetal/#via-the-host-network Ingress status was blank because there is no Service exposing the NGINX Ingress controller in a configuration using the host network, the default --publish-service flag used in standard cloud setups does not apply.
 - resources Property Map
 - Define requests resources to avoid probe issues due to CPU utilization in busy nodes ref: https://github.com/kubernetes/ingress-nginx/issues/4735#issuecomment-551204903 Ideally, there should be no limits. https://engineering.indeedblog.com/blog/2019/12/cpu-throttling-regression-fix/ This type is defined in the Kubernetes package.
 - scope Property Map
 - Limit the scope of the controller.
 - service Property Map
 - startup
Probe Property Map - Startup probe values Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - sysctls Map<Map<String>>
 - See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for notes on enabling and using sysctls.
 - tcp Property Map
 - Allows customization of the tcp-services-configmap.
 - terminate
Grace NumberPeriod Seconds  - How long to wait for the drain of connections.
 - tolerations Property Map
 - Node tolerations for server scheduling to nodes with taints Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/. This type is defined in the Kubernetes package.
 - topology
Spread List<Property Map>Constraints  - Topology spread constraints rely on node labels to identify the topology domain(s) that each Node is in. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/.
 - udp Property Map
 - update
Strategy Property Map - The update strategy to apply to the Deployment or DaemonSet.
 - watch
Ingress BooleanWithout Class  - Process Ingress objects without ingressClass annotation/ingressClassName field. Overrides value for --watch-ingress-without-class flag of the controller binary. Defaults to false.
 
ControllerAdmissionWebhooksCreateSecretJob, ControllerAdmissionWebhooksCreateSecretJobArgs            
- Resources
Pulumi.
Kubernetes. Types. Inputs. Core. V1. Resource Requirements  - This type is defined in the Kubernetes package.
 
- Resources
Resource
Requirements  - This type is defined in the Kubernetes package.
 
- resources
Resource
Requirements  - This type is defined in the Kubernetes package.
 
- resources
pulumi
Kubernetestypesinputcorev1Resource Requirements  - This type is defined in the Kubernetes package.
 
- resources
pulumi_
kubernetes.core.v1. Resource Requirements Args  - This type is defined in the Kubernetes package.
 
- resources Property Map
 - This type is defined in the Kubernetes package.
 
ControllerAdmissionWebhooksPatch, ControllerAdmissionWebhooksPatchArgs        
- Enabled bool
 - Image
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Image  - Node
Selector Dictionary<string, string> - Pod
Annotations Dictionary<string, string> - Priority
Class stringName  - Provide a priority class name to the webhook patching job.
 - Run
As intUser  - Tolerations
List<Pulumi.
Kubernetes. Types. Inputs. Core. V1. Toleration>  
- Enabled bool
 - Image
Controller
Image  - Node
Selector map[string]string - Pod
Annotations map[string]string - Priority
Class stringName  - Provide a priority class name to the webhook patching job.
 - Run
As intUser  - Tolerations Toleration
 
- enabled Boolean
 - image
Controller
Image  - node
Selector Map<String,String> - pod
Annotations Map<String,String> - priority
Class StringName  - Provide a priority class name to the webhook patching job.
 - run
As IntegerUser  - tolerations List<Toleration>
 
- enabled boolean
 - image
Controller
Image  - node
Selector {[key: string]: string} - pod
Annotations {[key: string]: string} - priority
Class stringName  - Provide a priority class name to the webhook patching job.
 - run
As numberUser  - tolerations
pulumi
Kubernetestypesinputcorev1Toleration[]  
- enabled bool
 - image
Controller
Image  - node_
selector Mapping[str, str] - pod_
annotations Mapping[str, str] - priority_
class_ strname  - Provide a priority class name to the webhook patching job.
 - run_
as_ intuser  - tolerations
Sequence[pulumi_
kubernetes.core.v1. Toleration Args]  
- enabled Boolean
 - image Property Map
 - node
Selector Map<String> - pod
Annotations Map<String> - priority
Class StringName  - Provide a priority class name to the webhook patching job.
 - run
As NumberUser  - tolerations List<Property Map>
 
ControllerAdmissionWebhooksPatchWebhbookJob, ControllerAdmissionWebhooksPatchWebhbookJobArgs            
- Resources
Pulumi.
Kubernetes. Types. Inputs. Core. V1. Resource Requirements  - This type is defined in the Kubernetes package.
 
- Resources
Resource
Requirements  - This type is defined in the Kubernetes package.
 
- resources
Resource
Requirements  - This type is defined in the Kubernetes package.
 
- resources
pulumi
Kubernetestypesinputcorev1Resource Requirements  - This type is defined in the Kubernetes package.
 
- resources
pulumi_
kubernetes.core.v1. Resource Requirements Args  - This type is defined in the Kubernetes package.
 
- resources Property Map
 - This type is defined in the Kubernetes package.
 
ControllerAdmissionWebhooksService, ControllerAdmissionWebhooksServiceArgs        
- Annotations Dictionary<string, string>
 - Cluster
IP string - External
IPs List<string> - Load
Balancer stringIPs  - Load
Balancer List<string>Source Ranges  - Service
Port int - Type string
 
- Annotations map[string]string
 - Cluster
IP string - External
IPs []string - Load
Balancer stringIPs  - Load
Balancer []stringSource Ranges  - Service
Port int - Type string
 
- annotations Map<String,String>
 - cluster
IP String - external
IPs List<String> - load
Balancer StringIPs  - load
Balancer List<String>Source Ranges  - service
Port Integer - type String
 
- annotations {[key: string]: string}
 - cluster
IP string - external
IPs string[] - load
Balancer stringIPs  - load
Balancer string[]Source Ranges  - service
Port number - type string
 
- annotations Mapping[str, str]
 - cluster_
ip str - external_
ips Sequence[str] - load_
balancer_ strips  - load_
balancer_ Sequence[str]source_ ranges  - service_
port int - type str
 
- annotations Map<String>
 - cluster
IP String - external
IPs List<String> - load
Balancer StringIPs  - load
Balancer List<String>Source Ranges  - service
Port Number - type String
 
ControllerCustomTemplate, ControllerCustomTemplateArgs      
- Config
Map stringKey  - Config
Map stringName  
- Config
Map stringKey  - Config
Map stringName  
- config
Map StringKey  - config
Map StringName  
- config
Map stringKey  - config
Map stringName  
- config_
map_ strkey  - config_
map_ strname  
- config
Map StringKey  - config
Map StringName  
ControllerDefaultBackend, ControllerDefaultBackendArgs      
- Affinity
Pulumi.
Kubernetes. Types. Inputs. Core. V1. Affinity  - This type is defined in the Kubernetes package.
 - Autoscaling
Pulumi.
Kubernetes Ingress Nginx. Inputs. Autoscaling  - Enabled bool
 - Existing
Psp string - Use an existing PSP instead of creating one.
 - Extra
Args Dictionary<string, ImmutableDictionary<string, string>>  - Extra
Envs List<Pulumi.Kubernetes. Types. Inputs. Core. V1. Env Var>  - Extra
Volume List<Pulumi.Mounts Kubernetes. Types. Inputs. Core. V1. Volume Mount>  - Additional volumeMounts to the default backend container. - name: copy-portal-skins mountPath: /var/lib/lemonldap-ng/portal/skins
 - Extra
Volumes List<Pulumi.Kubernetes. Types. Inputs. Core. V1. Volume>  - Additional volumes to the default backend pod. - name: copy-portal-skins emptyDir: {}
 - Image
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Image  - Liveness
Probe Pulumi.Kubernetes. Types. Inputs. Core. V1. Probe  - Liveness probe values for default backend. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - int
 - Name string
 - Node
Selector Dictionary<string, string> - Node labels for default backend pod assignment Ref: https://kubernetes.io/docs/user-guide/node-selection/.
 - Pod
Annotations Dictionary<string, string> - Annotations to be added to default backend pods.
 - Pod
Labels Dictionary<string, string> - labels to add to the pod container metadata
 - Pod
Security Pulumi.Context Kubernetes. Types. Inputs. Core. V1. Pod Security Context  - Security Context policies for controller pods. See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for notes on enabling and using sysctls. This type is defined in the Kubernetes package.
 - Port int
 - Priority
Class stringName  - Readiness
Probe Pulumi.Kubernetes. Types. Inputs. Core. V1. Probe  - Readiness probe values for default backend. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - Replica
Count int - Resources
Pulumi.
Kubernetes. Types. Inputs. Core. V1. Resource Requirements  - This type is defined in the Kubernetes package.
 - Service
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Default Backend Service  - Service
Account Pulumi.Kubernetes Ingress Nginx. Inputs. Controller Service Account  - Tolerations
List<Pulumi.
Kubernetes. Types. Inputs. Core. V1. Toleration>  - Node tolerations for server scheduling to nodes with taints. Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
 
- Affinity Affinity
 - This type is defined in the Kubernetes package.
 - Autoscaling Autoscaling
 - Enabled bool
 - Existing
Psp string - Use an existing PSP instead of creating one.
 - Extra
Args map[string]map[string]string - Extra
Envs EnvVar  - Extra
Volume VolumeMounts Mount  - Additional volumeMounts to the default backend container. - name: copy-portal-skins mountPath: /var/lib/lemonldap-ng/portal/skins
 - Extra
Volumes Volume - Additional volumes to the default backend pod. - name: copy-portal-skins emptyDir: {}
 - Image
Controller
Image  - Liveness
Probe Probe - Liveness probe values for default backend. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - int
 - Name string
 - Node
Selector map[string]string - Node labels for default backend pod assignment Ref: https://kubernetes.io/docs/user-guide/node-selection/.
 - Pod
Annotations map[string]string - Annotations to be added to default backend pods.
 - Pod
Labels map[string]string - labels to add to the pod container metadata
 - Pod
Security PodContext Security Context  - Security Context policies for controller pods. See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for notes on enabling and using sysctls. This type is defined in the Kubernetes package.
 - Port int
 - Priority
Class stringName  - Readiness
Probe Probe - Readiness probe values for default backend. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - Replica
Count int - Resources
Resource
Requirements  - This type is defined in the Kubernetes package.
 - Service
Controller
Default Backend Service  - Service
Account ControllerService Account  - Tolerations Toleration
 - Node tolerations for server scheduling to nodes with taints. Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
 
- affinity Affinity
 - This type is defined in the Kubernetes package.
 - autoscaling Autoscaling
 - enabled Boolean
 - existing
Psp String - Use an existing PSP instead of creating one.
 - extra
Args Map<String,Map<String,String>> - extra
Envs List<EnvVar>  - extra
Volume List<VolumeMounts Mount>  - Additional volumeMounts to the default backend container. - name: copy-portal-skins mountPath: /var/lib/lemonldap-ng/portal/skins
 - extra
Volumes List<Volume> - Additional volumes to the default backend pod. - name: copy-portal-skins emptyDir: {}
 - image
Controller
Image  - liveness
Probe Probe - Liveness probe values for default backend. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - Integer
 - name String
 - node
Selector Map<String,String> - Node labels for default backend pod assignment Ref: https://kubernetes.io/docs/user-guide/node-selection/.
 - pod
Annotations Map<String,String> - Annotations to be added to default backend pods.
 - pod
Labels Map<String,String> - labels to add to the pod container metadata
 - pod
Security PodContext Security Context  - Security Context policies for controller pods. See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for notes on enabling and using sysctls. This type is defined in the Kubernetes package.
 - port Integer
 - priority
Class StringName  - readiness
Probe Probe - Readiness probe values for default backend. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - replica
Count Integer - resources
Resource
Requirements  - This type is defined in the Kubernetes package.
 - service
Controller
Default Backend Service  - service
Account ControllerService Account  - tolerations List<Toleration>
 - Node tolerations for server scheduling to nodes with taints. Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
 
- affinity
pulumi
Kubernetestypesinputcorev1Affinity  - This type is defined in the Kubernetes package.
 - autoscaling Autoscaling
 - enabled boolean
 - existing
Psp string - Use an existing PSP instead of creating one.
 - extra
Args {[key: string]: {[key: string]: string}} - extra
Envs pulumiKubernetestypesinputcorev1Env Var[]  - extra
Volume pulumiMounts Kubernetestypesinputcorev1Volume Mount[]  - Additional volumeMounts to the default backend container. - name: copy-portal-skins mountPath: /var/lib/lemonldap-ng/portal/skins
 - extra
Volumes pulumiKubernetestypesinputcorev1Volume[]  - Additional volumes to the default backend pod. - name: copy-portal-skins emptyDir: {}
 - image
Controller
Image  - liveness
Probe pulumiKubernetestypesinputcorev1Probe  - Liveness probe values for default backend. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - number
 - name string
 - node
Selector {[key: string]: string} - Node labels for default backend pod assignment Ref: https://kubernetes.io/docs/user-guide/node-selection/.
 - pod
Annotations {[key: string]: string} - Annotations to be added to default backend pods.
 - pod
Labels {[key: string]: string} - labels to add to the pod container metadata
 - pod
Security pulumiContext Kubernetestypesinputcorev1Pod Security Context  - Security Context policies for controller pods. See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for notes on enabling and using sysctls. This type is defined in the Kubernetes package.
 - port number
 - priority
Class stringName  - readiness
Probe pulumiKubernetestypesinputcorev1Probe  - Readiness probe values for default backend. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - replica
Count number - resources
pulumi
Kubernetestypesinputcorev1Resource Requirements  - This type is defined in the Kubernetes package.
 - service
Controller
Default Backend Service  - service
Account ControllerService Account  - tolerations
pulumi
Kubernetestypesinputcorev1Toleration[]  - Node tolerations for server scheduling to nodes with taints. Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
 
- affinity
pulumi_
kubernetes.core.v1. Affinity Args  - This type is defined in the Kubernetes package.
 - autoscaling Autoscaling
 - enabled bool
 - existing_
psp str - Use an existing PSP instead of creating one.
 - extra_
args Mapping[str, Mapping[str, str]] - extra_
envs Sequence[pulumi_kubernetes.core.v1. Env Var Args]  - extra_
volume_ Sequence[pulumi_mounts kubernetes.core.v1. Volume Mount Args]  - Additional volumeMounts to the default backend container. - name: copy-portal-skins mountPath: /var/lib/lemonldap-ng/portal/skins
 - extra_
volumes Sequence[pulumi_kubernetes.core.v1. Volume Args]  - Additional volumes to the default backend pod. - name: copy-portal-skins emptyDir: {}
 - image
Controller
Image  - liveness_
probe pulumi_kubernetes.core.v1. Probe Args  - Liveness probe values for default backend. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - min_
available int - name str
 - node_
selector Mapping[str, str] - Node labels for default backend pod assignment Ref: https://kubernetes.io/docs/user-guide/node-selection/.
 - pod_
annotations Mapping[str, str] - Annotations to be added to default backend pods.
 - pod_
labels Mapping[str, str] - labels to add to the pod container metadata
 - pod_
security_ pulumi_context kubernetes.core.v1. Pod Security Context Args  - Security Context policies for controller pods. See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for notes on enabling and using sysctls. This type is defined in the Kubernetes package.
 - port int
 - priority_
class_ strname  - readiness_
probe pulumi_kubernetes.core.v1. Probe Args  - Readiness probe values for default backend. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - replica_
count int - resources
pulumi_
kubernetes.core.v1. Resource Requirements Args  - This type is defined in the Kubernetes package.
 - service
Controller
Default Backend Service  - service_
account ControllerService Account  - tolerations
Sequence[pulumi_
kubernetes.core.v1. Toleration Args]  - Node tolerations for server scheduling to nodes with taints. Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
 
- affinity Property Map
 - This type is defined in the Kubernetes package.
 - autoscaling Property Map
 - enabled Boolean
 - existing
Psp String - Use an existing PSP instead of creating one.
 - extra
Args Map<Map<String>> - extra
Envs List<Property Map> - extra
Volume List<Property Map>Mounts  - Additional volumeMounts to the default backend container. - name: copy-portal-skins mountPath: /var/lib/lemonldap-ng/portal/skins
 - extra
Volumes List<Property Map> - Additional volumes to the default backend pod. - name: copy-portal-skins emptyDir: {}
 - image Property Map
 - liveness
Probe Property Map - Liveness probe values for default backend. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - Number
 - name String
 - node
Selector Map<String> - Node labels for default backend pod assignment Ref: https://kubernetes.io/docs/user-guide/node-selection/.
 - pod
Annotations Map<String> - Annotations to be added to default backend pods.
 - pod
Labels Map<String> - labels to add to the pod container metadata
 - pod
Security Property MapContext  - Security Context policies for controller pods. See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for notes on enabling and using sysctls. This type is defined in the Kubernetes package.
 - port Number
 - priority
Class StringName  - readiness
Probe Property Map - Readiness probe values for default backend. Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes. This type is defined in the Kubernetes package.
 - replica
Count Number - resources Property Map
 - This type is defined in the Kubernetes package.
 - service Property Map
 - service
Account Property Map - tolerations List<Property Map>
 - Node tolerations for server scheduling to nodes with taints. Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
 
ControllerDefaultBackendService, ControllerDefaultBackendServiceArgs        
- Annotations Dictionary<string, string>
 - Cluster
IP string - External
IPs List<string> - List of IP addresses at which the default backend service is available. Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
 - Load
Balancer stringIP  - Load
Balancer List<string>Source Ranges  - Service
Port int - Type string
 
- Annotations map[string]string
 - Cluster
IP string - External
IPs []string - List of IP addresses at which the default backend service is available. Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
 - Load
Balancer stringIP  - Load
Balancer []stringSource Ranges  - Service
Port int - Type string
 
- annotations Map<String,String>
 - cluster
IP String - external
IPs List<String> - List of IP addresses at which the default backend service is available. Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
 - load
Balancer StringIP  - load
Balancer List<String>Source Ranges  - service
Port Integer - type String
 
- annotations {[key: string]: string}
 - cluster
IP string - external
IPs string[] - List of IP addresses at which the default backend service is available. Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
 - load
Balancer stringIP  - load
Balancer string[]Source Ranges  - service
Port number - type string
 
- annotations Mapping[str, str]
 - cluster_
ip str - external_
ips Sequence[str] - List of IP addresses at which the default backend service is available. Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
 - load_
balancer_ strip  - load_
balancer_ Sequence[str]source_ ranges  - service_
port int - type str
 
- annotations Map<String>
 - cluster
IP String - external
IPs List<String> - List of IP addresses at which the default backend service is available. Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
 - load
Balancer StringIP  - load
Balancer List<String>Source Ranges  - service
Port Number - type String
 
ControllerHostPort, ControllerHostPortArgs      
- enabled Boolean
 - ports
Controller
Host Port Ports  
- enabled boolean
 - ports
Controller
Host Port Ports  
- enabled Boolean
 - ports Property Map
 
ControllerHostPortPorts, ControllerHostPortPortsArgs        
ControllerImage, ControllerImageArgs    
- Allow
Privilege boolEscalation  - Digest string
 - Image string
 - Pull
Policy string - Read
Only boolRoot Filesystem  - Registry string
 - Repository string
 - for backwards compatibility consider setting the full image url via the repository value below use either current default registry/image or repository format or installing will fail.
 - Run
As boolNon Root  - Run
As stringUser  - Tag string
 
- Allow
Privilege boolEscalation  - Digest string
 - Image string
 - Pull
Policy string - Read
Only boolRoot Filesystem  - Registry string
 - Repository string
 - for backwards compatibility consider setting the full image url via the repository value below use either current default registry/image or repository format or installing will fail.
 - Run
As boolNon Root  - Run
As stringUser  - Tag string
 
- allow
Privilege BooleanEscalation  - digest String
 - image String
 - pull
Policy String - read
Only BooleanRoot Filesystem  - registry String
 - repository String
 - for backwards compatibility consider setting the full image url via the repository value below use either current default registry/image or repository format or installing will fail.
 - run
As BooleanNon Root  - run
As StringUser  - tag String
 
- allow
Privilege booleanEscalation  - digest string
 - image string
 - pull
Policy string - read
Only booleanRoot Filesystem  - registry string
 - repository string
 - for backwards compatibility consider setting the full image url via the repository value below use either current default registry/image or repository format or installing will fail.
 - run
As booleanNon Root  - run
As stringUser  - tag string
 
- allow_
privilege_ boolescalation  - digest str
 - image str
 - pull_
policy str - read_
only_ boolroot_ filesystem  - registry str
 - repository str
 - for backwards compatibility consider setting the full image url via the repository value below use either current default registry/image or repository format or installing will fail.
 - run_
as_ boolnon_ root  - run_
as_ struser  - tag str
 
- allow
Privilege BooleanEscalation  - digest String
 - image String
 - pull
Policy String - read
Only BooleanRoot Filesystem  - registry String
 - repository String
 - for backwards compatibility consider setting the full image url via the repository value below use either current default registry/image or repository format or installing will fail.
 - run
As BooleanNon Root  - run
As StringUser  - tag String
 
ControllerIngressClassResource, ControllerIngressClassResourceArgs        
- Controller
Value string - Default bool
 - Enabled bool
 - Name string
 - Parameters
Dictionary<string, Immutable
Dictionary<string, string>>  - Parameters is a link to a custom resource containing additional configuration for the controller. This is optional if the controller does not require extra parameters.
 
- Controller
Value string - Default bool
 - Enabled bool
 - Name string
 - Parameters map[string]map[string]string
 - Parameters is a link to a custom resource containing additional configuration for the controller. This is optional if the controller does not require extra parameters.
 
- controller
Value String - default_ Boolean
 - enabled Boolean
 - name String
 - parameters Map<String,Map<String,String>>
 - Parameters is a link to a custom resource containing additional configuration for the controller. This is optional if the controller does not require extra parameters.
 
- controller
Value string - default boolean
 - enabled boolean
 - name string
 - parameters {[key: string]: {[key: string]: string}}
 - Parameters is a link to a custom resource containing additional configuration for the controller. This is optional if the controller does not require extra parameters.
 
- controller_
value str - default bool
 - enabled bool
 - name str
 - parameters Mapping[str, Mapping[str, str]]
 - Parameters is a link to a custom resource containing additional configuration for the controller. This is optional if the controller does not require extra parameters.
 
- controller
Value String - default Boolean
 - enabled Boolean
 - name String
 - parameters Map<Map<String>>
 - Parameters is a link to a custom resource containing additional configuration for the controller. This is optional if the controller does not require extra parameters.
 
ControllerMetrics, ControllerMetricsArgs    
- Enabled bool
 - Port int
 - if this port is changed, change healthz-port: in extraArgs: accordingly.
 - Prometheus
Rule Pulumi.Kubernetes Ingress Nginx. Inputs. Controller Metrics Prometheus Rules  - Service
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Metrics Service  - Service
Monitor Pulumi.Kubernetes Ingress Nginx. Inputs. Controller Metrics Service Monitor  
- Enabled bool
 - Port int
 - if this port is changed, change healthz-port: in extraArgs: accordingly.
 - Prometheus
Rule ControllerMetrics Prometheus Rules  - Service
Controller
Metrics Service  - Service
Monitor ControllerMetrics Service Monitor  
- enabled Boolean
 - port Integer
 - if this port is changed, change healthz-port: in extraArgs: accordingly.
 - prometheus
Rule ControllerMetrics Prometheus Rules  - service
Controller
Metrics Service  - service
Monitor ControllerMetrics Service Monitor  
- enabled boolean
 - port number
 - if this port is changed, change healthz-port: in extraArgs: accordingly.
 - prometheus
Rule ControllerMetrics Prometheus Rules  - service
Controller
Metrics Service  - service
Monitor ControllerMetrics Service Monitor  
- enabled bool
 - port int
 - if this port is changed, change healthz-port: in extraArgs: accordingly.
 - prometheus_
rule ControllerMetrics Prometheus Rules  - service
Controller
Metrics Service  - service_
monitor ControllerMetrics Service Monitor  
- enabled Boolean
 - port Number
 - if this port is changed, change healthz-port: in extraArgs: accordingly.
 - prometheus
Rule Property Map - service Property Map
 - service
Monitor Property Map 
ControllerMetricsPrometheusRules, ControllerMetricsPrometheusRulesArgs        
- Additional
Labels Dictionary<string, string> - Enabled bool
 - Namespace string
 - Rules
List<Immutable
Dictionary<string, string>>  
- Additional
Labels map[string]string - Enabled bool
 - Namespace string
 - Rules []map[string]string
 
- additional
Labels Map<String,String> - enabled Boolean
 - namespace String
 - rules List<Map<String,String>>
 
- additional
Labels {[key: string]: string} - enabled boolean
 - namespace string
 - rules {[key: string]: string}[]
 
- additional_
labels Mapping[str, str] - enabled bool
 - namespace str
 - rules Sequence[Mapping[str, str]]
 
- additional
Labels Map<String> - enabled Boolean
 - namespace String
 - rules List<Map<String>>
 
ControllerMetricsService, ControllerMetricsServiceArgs      
- Annotations Dictionary<string, string>
 - Cluster
IP string - External
IPs List<string> - External
Traffic stringPolicy  - Load
Balancer stringIPs  - Load
Balancer List<string>Source Ranges  - Node
Port string - Service
Port int - Type string
 
- Annotations map[string]string
 - Cluster
IP string - External
IPs []string - External
Traffic stringPolicy  - Load
Balancer stringIPs  - Load
Balancer []stringSource Ranges  - Node
Port string - Service
Port int - Type string
 
- annotations Map<String,String>
 - cluster
IP String - external
IPs List<String> - external
Traffic StringPolicy  - load
Balancer StringIPs  - load
Balancer List<String>Source Ranges  - node
Port String - service
Port Integer - type String
 
- annotations {[key: string]: string}
 - cluster
IP string - external
IPs string[] - external
Traffic stringPolicy  - load
Balancer stringIPs  - load
Balancer string[]Source Ranges  - node
Port string - service
Port number - type string
 
- annotations Mapping[str, str]
 - cluster_
ip str - external_
ips Sequence[str] - external_
traffic_ strpolicy  - load_
balancer_ strips  - load_
balancer_ Sequence[str]source_ ranges  - node_
port str - service_
port int - type str
 
- annotations Map<String>
 - cluster
IP String - external
IPs List<String> - external
Traffic StringPolicy  - load
Balancer StringIPs  - load
Balancer List<String>Source Ranges  - node
Port String - service
Port Number - type String
 
ControllerMetricsServiceMonitor, ControllerMetricsServiceMonitorArgs        
- Additional
Labels Dictionary<string, string> - Enabled bool
 - Honor
Labels bool - Job
Label string - The label to use to retrieve the job name from.
 - Metric
Relabelings List<string> - Namespace string
 - Namespace
Selector Dictionary<string, ImmutableDictionary<string, string>>  - Scrape
Interval string - Target
Labels List<string> 
- Additional
Labels map[string]string - Enabled bool
 - Honor
Labels bool - Job
Label string - The label to use to retrieve the job name from.
 - Metric
Relabelings []string - Namespace string
 - Namespace
Selector map[string]map[string]string - Scrape
Interval string - Target
Labels []string 
- additional
Labels Map<String,String> - enabled Boolean
 - honor
Labels Boolean - job
Label String - The label to use to retrieve the job name from.
 - metric
Relabelings List<String> - namespace String
 - namespace
Selector Map<String,Map<String,String>> - scrape
Interval String - target
Labels List<String> 
- additional
Labels {[key: string]: string} - enabled boolean
 - honor
Labels boolean - job
Label string - The label to use to retrieve the job name from.
 - metric
Relabelings string[] - namespace string
 - namespace
Selector {[key: string]: {[key: string]: string}} - scrape
Interval string - target
Labels string[] 
- additional_
labels Mapping[str, str] - enabled bool
 - honor_
labels bool - job_
label str - The label to use to retrieve the job name from.
 - metric_
relabelings Sequence[str] - namespace str
 - namespace_
selector Mapping[str, Mapping[str, str]] - scrape_
interval str - target_
labels Sequence[str] 
- additional
Labels Map<String> - enabled Boolean
 - honor
Labels Boolean - job
Label String - The label to use to retrieve the job name from.
 - metric
Relabelings List<String> - namespace String
 - namespace
Selector Map<Map<String>> - scrape
Interval String - target
Labels List<String> 
ControllerPodSecurityPolicy, ControllerPodSecurityPolicyArgs        
- Enabled bool
 
- Enabled bool
 
- enabled Boolean
 
- enabled boolean
 
- enabled bool
 
- enabled Boolean
 
ControllerPort, ControllerPortArgs    
ControllerPublishService, ControllerPublishServiceArgs      
- Enabled bool
 - Path
Override string - Allows overriding of the publish service to bind to. Must be /<service_name>.
 
- Enabled bool
 - Path
Override string - Allows overriding of the publish service to bind to. Must be /<service_name>.
 
- enabled Boolean
 - path
Override String - Allows overriding of the publish service to bind to. Must be /<service_name>.
 
- enabled boolean
 - path
Override string - Allows overriding of the publish service to bind to. Must be /<service_name>.
 
- enabled bool
 - path_
override str - Allows overriding of the publish service to bind to. Must be /<service_name>.
 
- enabled Boolean
 - path
Override String - Allows overriding of the publish service to bind to. Must be /<service_name>.
 
ControllerRBAC, ControllerRBACArgs    
ControllerRollingUpdate, ControllerRollingUpdateArgs      
- int
 
- int
 
- Integer
 
- number
 
- int
 
- Number
 
ControllerScope, ControllerScopeArgs    
ControllerService, ControllerServiceArgs    
- Annotations Dictionary<string, string>
 - Cluster
IP string - Enable
Http bool - Enable
Https bool - Enabled bool
 - External
IPs List<string> - List of IP addresses at which the controller services are available Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
 - External
Traffic stringPolicy  - Set external traffic policy to: "Local" to preserve source IP on providers supporting it. Ref: https://kubernetes.io/docs/tutorials/services/source-ip/#source-ip-for-services-with-typeloadbalancer
 - Health
Check intNode Port  - specifies the health check node port (numeric port number) for the service. If healthCheckNodePort isn’t specified, the service controller allocates a port from your cluster’s NodePort range. Ref: https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
 - Internal
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Service Internal  - Enables an additional internal load balancer (besides the external one). Annotations are mandatory for the load balancer to come up. Varies with the cloud service.
 - Labels Dictionary<string, string>
 - Load
Balancer stringIP  - Load
Balancer stringIPs  - Load
Balancer List<string>Source Ranges  - Node
Ports Pulumi.Kubernetes Ingress Nginx. Inputs. Controller Service Node Ports  - Ports
Pulumi.
Kubernetes Ingress Nginx. Inputs. Controller Port  - Session
Affinity string - Must be either "None" or "ClientIP" if set. Kubernetes will default to "None". Ref: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies
 - Target
Ports Pulumi.Kubernetes Ingress Nginx. Inputs. Controller Port  - Type string
 
- Annotations map[string]string
 - Cluster
IP string - Enable
Http bool - Enable
Https bool - Enabled bool
 - External
IPs []string - List of IP addresses at which the controller services are available Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
 - External
Traffic stringPolicy  - Set external traffic policy to: "Local" to preserve source IP on providers supporting it. Ref: https://kubernetes.io/docs/tutorials/services/source-ip/#source-ip-for-services-with-typeloadbalancer
 - Health
Check intNode Port  - specifies the health check node port (numeric port number) for the service. If healthCheckNodePort isn’t specified, the service controller allocates a port from your cluster’s NodePort range. Ref: https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
 - Internal
Controller
Service Internal  - Enables an additional internal load balancer (besides the external one). Annotations are mandatory for the load balancer to come up. Varies with the cloud service.
 - Labels map[string]string
 - Load
Balancer stringIP  - Load
Balancer stringIPs  - Load
Balancer []stringSource Ranges  - Node
Ports ControllerService Node Ports  - Ports
Controller
Port  - Session
Affinity string - Must be either "None" or "ClientIP" if set. Kubernetes will default to "None". Ref: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies
 - Target
Ports ControllerPort  - Type string
 
- annotations Map<String,String>
 - cluster
IP String - enable
Http Boolean - enable
Https Boolean - enabled Boolean
 - external
IPs List<String> - List of IP addresses at which the controller services are available Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
 - external
Traffic StringPolicy  - Set external traffic policy to: "Local" to preserve source IP on providers supporting it. Ref: https://kubernetes.io/docs/tutorials/services/source-ip/#source-ip-for-services-with-typeloadbalancer
 - health
Check IntegerNode Port  - specifies the health check node port (numeric port number) for the service. If healthCheckNodePort isn’t specified, the service controller allocates a port from your cluster’s NodePort range. Ref: https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
 - internal
Controller
Service Internal  - Enables an additional internal load balancer (besides the external one). Annotations are mandatory for the load balancer to come up. Varies with the cloud service.
 - labels Map<String,String>
 - load
Balancer StringIP  - load
Balancer StringIPs  - load
Balancer List<String>Source Ranges  - node
Ports ControllerService Node Ports  - ports
Controller
Port  - session
Affinity String - Must be either "None" or "ClientIP" if set. Kubernetes will default to "None". Ref: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies
 - target
Ports ControllerPort  - type String
 
- annotations {[key: string]: string}
 - cluster
IP string - enable
Http boolean - enable
Https boolean - enabled boolean
 - external
IPs string[] - List of IP addresses at which the controller services are available Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
 - external
Traffic stringPolicy  - Set external traffic policy to: "Local" to preserve source IP on providers supporting it. Ref: https://kubernetes.io/docs/tutorials/services/source-ip/#source-ip-for-services-with-typeloadbalancer
 - health
Check numberNode Port  - specifies the health check node port (numeric port number) for the service. If healthCheckNodePort isn’t specified, the service controller allocates a port from your cluster’s NodePort range. Ref: https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
 - internal
Controller
Service Internal  - Enables an additional internal load balancer (besides the external one). Annotations are mandatory for the load balancer to come up. Varies with the cloud service.
 - labels {[key: string]: string}
 - load
Balancer stringIP  - load
Balancer stringIPs  - load
Balancer string[]Source Ranges  - node
Ports ControllerService Node Ports  - ports
Controller
Port  - session
Affinity string - Must be either "None" or "ClientIP" if set. Kubernetes will default to "None". Ref: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies
 - target
Ports ControllerPort  - type string
 
- annotations Mapping[str, str]
 - cluster_
ip str - enable_
http bool - enable_
https bool - enabled bool
 - external_
ips Sequence[str] - List of IP addresses at which the controller services are available Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
 - external_
traffic_ strpolicy  - Set external traffic policy to: "Local" to preserve source IP on providers supporting it. Ref: https://kubernetes.io/docs/tutorials/services/source-ip/#source-ip-for-services-with-typeloadbalancer
 - health_
check_ intnode_ port  - specifies the health check node port (numeric port number) for the service. If healthCheckNodePort isn’t specified, the service controller allocates a port from your cluster’s NodePort range. Ref: https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
 - internal
Controller
Service Internal  - Enables an additional internal load balancer (besides the external one). Annotations are mandatory for the load balancer to come up. Varies with the cloud service.
 - labels Mapping[str, str]
 - load_
balancer_ strip  - load_
balancer_ strips  - load_
balancer_ Sequence[str]source_ ranges  - node_
ports ControllerService Node Ports  - ports
Controller
Port  - session_
affinity str - Must be either "None" or "ClientIP" if set. Kubernetes will default to "None". Ref: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies
 - target_
ports ControllerPort  - type str
 
- annotations Map<String>
 - cluster
IP String - enable
Http Boolean - enable
Https Boolean - enabled Boolean
 - external
IPs List<String> - List of IP addresses at which the controller services are available Ref: https://kubernetes.io/docs/user-guide/services/#external-ips
 - external
Traffic StringPolicy  - Set external traffic policy to: "Local" to preserve source IP on providers supporting it. Ref: https://kubernetes.io/docs/tutorials/services/source-ip/#source-ip-for-services-with-typeloadbalancer
 - health
Check NumberNode Port  - specifies the health check node port (numeric port number) for the service. If healthCheckNodePort isn’t specified, the service controller allocates a port from your cluster’s NodePort range. Ref: https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
 - internal Property Map
 - Enables an additional internal load balancer (besides the external one). Annotations are mandatory for the load balancer to come up. Varies with the cloud service.
 - labels Map<String>
 - load
Balancer StringIP  - load
Balancer StringIPs  - load
Balancer List<String>Source Ranges  - node
Ports Property Map - ports Property Map
 - session
Affinity String - Must be either "None" or "ClientIP" if set. Kubernetes will default to "None". Ref: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies
 - target
Ports Property Map - type String
 
ControllerServiceAccount, ControllerServiceAccountArgs      
- Automount
Service boolAccount Token  - Create bool
 - Name string
 
- Automount
Service boolAccount Token  - Create bool
 - Name string
 
- automount
Service BooleanAccount Token  - create Boolean
 - name String
 
- automount
Service booleanAccount Token  - create boolean
 - name string
 
- automount_
service_ boolaccount_ token  - create bool
 - name str
 
- automount
Service BooleanAccount Token  - create Boolean
 - name String
 
ControllerServiceInternal, ControllerServiceInternalArgs      
- Annotations Dictionary<string, string>
 - Enabled bool
 - External
Traffic stringPolicy  - Set external traffic policy to: "Local" to preserve source IP on providers supporting it. Ref: https://kubernetes.io/docs/tutorials/services/source-ip/#source-ip-for-services-with-typeloadbalancer
 - Labels Dictionary<string, string>
 - Load
Balancer stringIPs  - Load
Balancer List<string>Source Ranges  - Restrict access For LoadBalancer service. Defaults to 0.0.0.0/0.
 
- Annotations map[string]string
 - Enabled bool
 - External
Traffic stringPolicy  - Set external traffic policy to: "Local" to preserve source IP on providers supporting it. Ref: https://kubernetes.io/docs/tutorials/services/source-ip/#source-ip-for-services-with-typeloadbalancer
 - Labels map[string]string
 - Load
Balancer stringIPs  - Load
Balancer []stringSource Ranges  - Restrict access For LoadBalancer service. Defaults to 0.0.0.0/0.
 
- annotations Map<String,String>
 - enabled Boolean
 - external
Traffic StringPolicy  - Set external traffic policy to: "Local" to preserve source IP on providers supporting it. Ref: https://kubernetes.io/docs/tutorials/services/source-ip/#source-ip-for-services-with-typeloadbalancer
 - labels Map<String,String>
 - load
Balancer StringIPs  - load
Balancer List<String>Source Ranges  - Restrict access For LoadBalancer service. Defaults to 0.0.0.0/0.
 
- annotations {[key: string]: string}
 - enabled boolean
 - external
Traffic stringPolicy  - Set external traffic policy to: "Local" to preserve source IP on providers supporting it. Ref: https://kubernetes.io/docs/tutorials/services/source-ip/#source-ip-for-services-with-typeloadbalancer
 - labels {[key: string]: string}
 - load
Balancer stringIPs  - load
Balancer string[]Source Ranges  - Restrict access For LoadBalancer service. Defaults to 0.0.0.0/0.
 
- annotations Mapping[str, str]
 - enabled bool
 - external_
traffic_ strpolicy  - Set external traffic policy to: "Local" to preserve source IP on providers supporting it. Ref: https://kubernetes.io/docs/tutorials/services/source-ip/#source-ip-for-services-with-typeloadbalancer
 - labels Mapping[str, str]
 - load_
balancer_ strips  - load_
balancer_ Sequence[str]source_ ranges  - Restrict access For LoadBalancer service. Defaults to 0.0.0.0/0.
 
- annotations Map<String>
 - enabled Boolean
 - external
Traffic StringPolicy  - Set external traffic policy to: "Local" to preserve source IP on providers supporting it. Ref: https://kubernetes.io/docs/tutorials/services/source-ip/#source-ip-for-services-with-typeloadbalancer
 - labels Map<String>
 - load
Balancer StringIPs  - load
Balancer List<String>Source Ranges  - Restrict access For LoadBalancer service. Defaults to 0.0.0.0/0.
 
ControllerServiceNodePorts, ControllerServiceNodePortsArgs        
ControllerTcp, ControllerTcpArgs    
- Annotations Dictionary<string, string>
 - Annotations to be added to the tcp config configmap.
 - Config
Map stringNamespace  
- Annotations map[string]string
 - Annotations to be added to the tcp config configmap.
 - Config
Map stringNamespace  
- annotations Map<String,String>
 - Annotations to be added to the tcp config configmap.
 - config
Map StringNamespace  
- annotations {[key: string]: string}
 - Annotations to be added to the tcp config configmap.
 - config
Map stringNamespace  
- annotations Mapping[str, str]
 - Annotations to be added to the tcp config configmap.
 - config_
map_ strnamespace  
- annotations Map<String>
 - Annotations to be added to the tcp config configmap.
 - config
Map StringNamespace  
ControllerUdp, ControllerUdpArgs    
- Annotations Dictionary<string, string>
 - Annotations to be added to the udp config configmap.
 - Config
Map stringNamespace  
- Annotations map[string]string
 - Annotations to be added to the udp config configmap.
 - Config
Map stringNamespace  
- annotations Map<String,String>
 - Annotations to be added to the udp config configmap.
 - config
Map StringNamespace  
- annotations {[key: string]: string}
 - Annotations to be added to the udp config configmap.
 - config
Map stringNamespace  
- annotations Mapping[str, str]
 - Annotations to be added to the udp config configmap.
 - config_
map_ strnamespace  
- annotations Map<String>
 - Annotations to be added to the udp config configmap.
 - config
Map StringNamespace  
ControllerUpdateStrategy, ControllerUpdateStrategyArgs      
- rolling
Update Property Map - type String
 
Keda, KedaArgs  
- Api
Version string - apiVersion changes with keda 1.x vs 2.x: 2.x = keda.sh/v1alpha1, 1.x = keda.k8s.io/v1alpha1.
 - Behavior
Pulumi.
Kubernetes Ingress Nginx. Inputs. Autoscaling Behavior  - Cooldown
Period int - Enabled bool
 - Max
Replicas int - Min
Replicas int - Polling
Interval int - Restore
To boolOriginal Replica Count  - Scaled
Object Pulumi.Kubernetes Ingress Nginx. Inputs. Keda Scaled Object  - Triggers
List<Pulumi.
Kubernetes Ingress Nginx. Inputs. Keda Trigger>  
- Api
Version string - apiVersion changes with keda 1.x vs 2.x: 2.x = keda.sh/v1alpha1, 1.x = keda.k8s.io/v1alpha1.
 - Behavior
Autoscaling
Behavior  - Cooldown
Period int - Enabled bool
 - Max
Replicas int - Min
Replicas int - Polling
Interval int - Restore
To boolOriginal Replica Count  - Scaled
Object KedaScaled Object  - Triggers
[]Keda
Trigger  
- api
Version String - apiVersion changes with keda 1.x vs 2.x: 2.x = keda.sh/v1alpha1, 1.x = keda.k8s.io/v1alpha1.
 - behavior
Autoscaling
Behavior  - cooldown
Period Integer - enabled Boolean
 - max
Replicas Integer - min
Replicas Integer - polling
Interval Integer - restore
To BooleanOriginal Replica Count  - scaled
Object KedaScaled Object  - triggers
List<Keda
Trigger>  
- api
Version string - apiVersion changes with keda 1.x vs 2.x: 2.x = keda.sh/v1alpha1, 1.x = keda.k8s.io/v1alpha1.
 - behavior
Autoscaling
Behavior  - cooldown
Period number - enabled boolean
 - max
Replicas number - min
Replicas number - polling
Interval number - restore
To booleanOriginal Replica Count  - scaled
Object KedaScaled Object  - triggers
Keda
Trigger[]  
- api_
version str - apiVersion changes with keda 1.x vs 2.x: 2.x = keda.sh/v1alpha1, 1.x = keda.k8s.io/v1alpha1.
 - behavior
Autoscaling
Behavior  - cooldown_
period int - enabled bool
 - max_
replicas int - min_
replicas int - polling_
interval int - restore_
to_ booloriginal_ replica_ count  - scaled_
object KedaScaled Object  - triggers
Sequence[Keda
Trigger]  
- api
Version String - apiVersion changes with keda 1.x vs 2.x: 2.x = keda.sh/v1alpha1, 1.x = keda.k8s.io/v1alpha1.
 - behavior Property Map
 - cooldown
Period Number - enabled Boolean
 - max
Replicas Number - min
Replicas Number - polling
Interval Number - restore
To BooleanOriginal Replica Count  - scaled
Object Property Map - triggers List<Property Map>
 
KedaScaledObject, KedaScaledObjectArgs      
- Annotations Dictionary<string, string>
 - Custom annotations for ScaledObject resource.
 
- Annotations map[string]string
 - Custom annotations for ScaledObject resource.
 
- annotations Map<String,String>
 - Custom annotations for ScaledObject resource.
 
- annotations {[key: string]: string}
 - Custom annotations for ScaledObject resource.
 
- annotations Mapping[str, str]
 - Custom annotations for ScaledObject resource.
 
- annotations Map<String>
 - Custom annotations for ScaledObject resource.
 
KedaTrigger, KedaTriggerArgs    
Release, ReleaseArgs  
- Atomic bool
 - If set, installation process purges chart on fail. 
skipAwaitwill be disabled automatically if atomic is used. - Chart string
 - Chart name to be installed. A path may be used.
 - Cleanup
On boolFail  - Allow deletion of new resources created in this upgrade when upgrade fails.
 - Create
Namespace bool - Create the namespace if it does not exist.
 - Dependency
Update bool - Run helm dependency update before installing the chart.
 - Description string
 - Add a custom description
 - Devel bool
 - Use chart development versions, too. Equivalent to version '>0.0.0-0'. If 
versionis set, this is ignored. - Disable
CRDHooks bool - Prevent CRD hooks from, running, but run other hooks. See helm install --no-crd-hook
 - Disable
Openapi boolValidation  - If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
 - Disable
Webhooks bool - Prevent hooks from running.
 - Force
Update bool - Force resource update through delete/recreate if needed.
 - Keyring string
 - Location of public keys used for verification. Used only if 
verifyis true - Lint bool
 - Run helm lint when planning.
 - Manifest Dictionary<string, object>
 - The rendered manifests as JSON. Not yet supported.
 - Max
History int - Limit the maximum number of revisions saved per release. Use 0 for no limit.
 - Name string
 - Release name.
 - Namespace string
 - Namespace to install the release into.
 - Postrender string
 - Postrender command to run.
 - Recreate
Pods bool - Perform pods restart during upgrade/rollback.
 - Render
Subchart boolNotes  - If set, render subchart notes along with the parent.
 - Replace bool
 - Re-use the given name, even if that name is already used. This is unsafe in production
 - Repository
Opts Pulumi.Kubernetes Ingress Nginx. Inputs. Repository Opts  - Specification defining the Helm chart repository to use.
 - Reset
Values bool - When upgrading, reset the values to the ones built into the chart.
 - Resource
Names Dictionary<string, ImmutableArray<string>>  - Names of resources created by the release grouped by "kind/version".
 - Reuse
Values bool - When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
 - Skip
Await bool - By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.
 - Skip
Crds bool - If set, no CRDs will be installed. By default, CRDs are installed if not already present.
 - Timeout int
 - Time in seconds to wait for any individual kubernetes operation.
 - Value
Yaml List<AssetFiles Or Archive>  - List of assets (raw yaml files). Content is read and merged with values. Not yet supported.
 - Values Dictionary<string, object>
 - Custom values set for the release.
 - Verify bool
 - Verify the package before installing it.
 - Version string
 - Specify the exact chart version to install. If this is not specified, the latest version is installed.
 - Wait
For boolJobs  - Will wait until all Jobs have been completed before marking the release as successful. This is ignored if 
skipAwaitis enabled. 
- Atomic bool
 - If set, installation process purges chart on fail. 
skipAwaitwill be disabled automatically if atomic is used. - Chart string
 - Chart name to be installed. A path may be used.
 - Cleanup
On boolFail  - Allow deletion of new resources created in this upgrade when upgrade fails.
 - Create
Namespace bool - Create the namespace if it does not exist.
 - Dependency
Update bool - Run helm dependency update before installing the chart.
 - Description string
 - Add a custom description
 - Devel bool
 - Use chart development versions, too. Equivalent to version '>0.0.0-0'. If 
versionis set, this is ignored. - Disable
CRDHooks bool - Prevent CRD hooks from, running, but run other hooks. See helm install --no-crd-hook
 - Disable
Openapi boolValidation  - If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
 - Disable
Webhooks bool - Prevent hooks from running.
 - Force
Update bool - Force resource update through delete/recreate if needed.
 - Keyring string
 - Location of public keys used for verification. Used only if 
verifyis true - Lint bool
 - Run helm lint when planning.
 - Manifest map[string]interface{}
 - The rendered manifests as JSON. Not yet supported.
 - Max
History int - Limit the maximum number of revisions saved per release. Use 0 for no limit.
 - Name string
 - Release name.
 - Namespace string
 - Namespace to install the release into.
 - Postrender string
 - Postrender command to run.
 - Recreate
Pods bool - Perform pods restart during upgrade/rollback.
 - Render
Subchart boolNotes  - If set, render subchart notes along with the parent.
 - Replace bool
 - Re-use the given name, even if that name is already used. This is unsafe in production
 - Repository
Opts RepositoryOpts  - Specification defining the Helm chart repository to use.
 - Reset
Values bool - When upgrading, reset the values to the ones built into the chart.
 - Resource
Names map[string][]string - Names of resources created by the release grouped by "kind/version".
 - Reuse
Values bool - When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
 - Skip
Await bool - By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.
 - Skip
Crds bool - If set, no CRDs will be installed. By default, CRDs are installed if not already present.
 - Timeout int
 - Time in seconds to wait for any individual kubernetes operation.
 - Value
Yaml AssetFiles Or Archive  - List of assets (raw yaml files). Content is read and merged with values. Not yet supported.
 - Values map[string]interface{}
 - Custom values set for the release.
 - Verify bool
 - Verify the package before installing it.
 - Version string
 - Specify the exact chart version to install. If this is not specified, the latest version is installed.
 - Wait
For boolJobs  - Will wait until all Jobs have been completed before marking the release as successful. This is ignored if 
skipAwaitis enabled. 
- atomic Boolean
 - If set, installation process purges chart on fail. 
skipAwaitwill be disabled automatically if atomic is used. - chart String
 - Chart name to be installed. A path may be used.
 - cleanup
On BooleanFail  - Allow deletion of new resources created in this upgrade when upgrade fails.
 - create
Namespace Boolean - Create the namespace if it does not exist.
 - dependency
Update Boolean - Run helm dependency update before installing the chart.
 - description String
 - Add a custom description
 - devel Boolean
 - Use chart development versions, too. Equivalent to version '>0.0.0-0'. If 
versionis set, this is ignored. - disable
CRDHooks Boolean - Prevent CRD hooks from, running, but run other hooks. See helm install --no-crd-hook
 - disable
Openapi BooleanValidation  - If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
 - disable
Webhooks Boolean - Prevent hooks from running.
 - force
Update Boolean - Force resource update through delete/recreate if needed.
 - keyring String
 - Location of public keys used for verification. Used only if 
verifyis true - lint Boolean
 - Run helm lint when planning.
 - manifest Map<String,Object>
 - The rendered manifests as JSON. Not yet supported.
 - max
History Integer - Limit the maximum number of revisions saved per release. Use 0 for no limit.
 - name String
 - Release name.
 - namespace String
 - Namespace to install the release into.
 - postrender String
 - Postrender command to run.
 - recreate
Pods Boolean - Perform pods restart during upgrade/rollback.
 - render
Subchart BooleanNotes  - If set, render subchart notes along with the parent.
 - replace Boolean
 - Re-use the given name, even if that name is already used. This is unsafe in production
 - repository
Opts RepositoryOpts  - Specification defining the Helm chart repository to use.
 - reset
Values Boolean - When upgrading, reset the values to the ones built into the chart.
 - resource
Names Map<String,List<String>> - Names of resources created by the release grouped by "kind/version".
 - reuse
Values Boolean - When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
 - skip
Await Boolean - By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.
 - skip
Crds Boolean - If set, no CRDs will be installed. By default, CRDs are installed if not already present.
 - timeout Integer
 - Time in seconds to wait for any individual kubernetes operation.
 - value
Yaml List<AssetFiles Or Archive>  - List of assets (raw yaml files). Content is read and merged with values. Not yet supported.
 - values Map<String,Object>
 - Custom values set for the release.
 - verify Boolean
 - Verify the package before installing it.
 - version String
 - Specify the exact chart version to install. If this is not specified, the latest version is installed.
 - wait
For BooleanJobs  - Will wait until all Jobs have been completed before marking the release as successful. This is ignored if 
skipAwaitis enabled. 
- atomic boolean
 - If set, installation process purges chart on fail. 
skipAwaitwill be disabled automatically if atomic is used. - chart string
 - Chart name to be installed. A path may be used.
 - cleanup
On booleanFail  - Allow deletion of new resources created in this upgrade when upgrade fails.
 - create
Namespace boolean - Create the namespace if it does not exist.
 - dependency
Update boolean - Run helm dependency update before installing the chart.
 - description string
 - Add a custom description
 - devel boolean
 - Use chart development versions, too. Equivalent to version '>0.0.0-0'. If 
versionis set, this is ignored. - disable
CRDHooks boolean - Prevent CRD hooks from, running, but run other hooks. See helm install --no-crd-hook
 - disable
Openapi booleanValidation  - If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
 - disable
Webhooks boolean - Prevent hooks from running.
 - force
Update boolean - Force resource update through delete/recreate if needed.
 - keyring string
 - Location of public keys used for verification. Used only if 
verifyis true - lint boolean
 - Run helm lint when planning.
 - manifest {[key: string]: any}
 - The rendered manifests as JSON. Not yet supported.
 - max
History number - Limit the maximum number of revisions saved per release. Use 0 for no limit.
 - name string
 - Release name.
 - namespace string
 - Namespace to install the release into.
 - postrender string
 - Postrender command to run.
 - recreate
Pods boolean - Perform pods restart during upgrade/rollback.
 - render
Subchart booleanNotes  - If set, render subchart notes along with the parent.
 - replace boolean
 - Re-use the given name, even if that name is already used. This is unsafe in production
 - repository
Opts RepositoryOpts  - Specification defining the Helm chart repository to use.
 - reset
Values boolean - When upgrading, reset the values to the ones built into the chart.
 - resource
Names {[key: string]: string[]} - Names of resources created by the release grouped by "kind/version".
 - reuse
Values boolean - When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
 - skip
Await boolean - By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.
 - skip
Crds boolean - If set, no CRDs will be installed. By default, CRDs are installed if not already present.
 - timeout number
 - Time in seconds to wait for any individual kubernetes operation.
 - value
Yaml (pulumiassetFiles Asset | pulumiasset Archive)[]  - List of assets (raw yaml files). Content is read and merged with values. Not yet supported.
 - values {[key: string]: any}
 - Custom values set for the release.
 - verify boolean
 - Verify the package before installing it.
 - version string
 - Specify the exact chart version to install. If this is not specified, the latest version is installed.
 - wait
For booleanJobs  - Will wait until all Jobs have been completed before marking the release as successful. This is ignored if 
skipAwaitis enabled. 
- atomic bool
 - If set, installation process purges chart on fail. 
skipAwaitwill be disabled automatically if atomic is used. - chart str
 - Chart name to be installed. A path may be used.
 - cleanup_
on_ boolfail  - Allow deletion of new resources created in this upgrade when upgrade fails.
 - create_
namespace bool - Create the namespace if it does not exist.
 - dependency_
update bool - Run helm dependency update before installing the chart.
 - description str
 - Add a custom description
 - devel bool
 - Use chart development versions, too. Equivalent to version '>0.0.0-0'. If 
versionis set, this is ignored. - disable_
crd_ boolhooks  - Prevent CRD hooks from, running, but run other hooks. See helm install --no-crd-hook
 - disable_
openapi_ boolvalidation  - If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
 - disable_
webhooks bool - Prevent hooks from running.
 - force_
update bool - Force resource update through delete/recreate if needed.
 - keyring str
 - Location of public keys used for verification. Used only if 
verifyis true - lint bool
 - Run helm lint when planning.
 - manifest Mapping[str, Any]
 - The rendered manifests as JSON. Not yet supported.
 - max_
history int - Limit the maximum number of revisions saved per release. Use 0 for no limit.
 - name str
 - Release name.
 - namespace str
 - Namespace to install the release into.
 - postrender str
 - Postrender command to run.
 - recreate_
pods bool - Perform pods restart during upgrade/rollback.
 - render_
subchart_ boolnotes  - If set, render subchart notes along with the parent.
 - replace bool
 - Re-use the given name, even if that name is already used. This is unsafe in production
 - repository_
opts RepositoryOpts  - Specification defining the Helm chart repository to use.
 - reset_
values bool - When upgrading, reset the values to the ones built into the chart.
 - resource_
names Mapping[str, Sequence[str]] - Names of resources created by the release grouped by "kind/version".
 - reuse_
values bool - When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
 - skip_
await bool - By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.
 - skip_
crds bool - If set, no CRDs will be installed. By default, CRDs are installed if not already present.
 - timeout int
 - Time in seconds to wait for any individual kubernetes operation.
 - value_
yaml_ Sequence[Union[pulumi.files Asset, pulumi. Archive]]  - List of assets (raw yaml files). Content is read and merged with values. Not yet supported.
 - values Mapping[str, Any]
 - Custom values set for the release.
 - verify bool
 - Verify the package before installing it.
 - version str
 - Specify the exact chart version to install. If this is not specified, the latest version is installed.
 - wait_
for_ booljobs  - Will wait until all Jobs have been completed before marking the release as successful. This is ignored if 
skipAwaitis enabled. 
- atomic Boolean
 - If set, installation process purges chart on fail. 
skipAwaitwill be disabled automatically if atomic is used. - chart String
 - Chart name to be installed. A path may be used.
 - cleanup
On BooleanFail  - Allow deletion of new resources created in this upgrade when upgrade fails.
 - create
Namespace Boolean - Create the namespace if it does not exist.
 - dependency
Update Boolean - Run helm dependency update before installing the chart.
 - description String
 - Add a custom description
 - devel Boolean
 - Use chart development versions, too. Equivalent to version '>0.0.0-0'. If 
versionis set, this is ignored. - disable
CRDHooks Boolean - Prevent CRD hooks from, running, but run other hooks. See helm install --no-crd-hook
 - disable
Openapi BooleanValidation  - If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
 - disable
Webhooks Boolean - Prevent hooks from running.
 - force
Update Boolean - Force resource update through delete/recreate if needed.
 - keyring String
 - Location of public keys used for verification. Used only if 
verifyis true - lint Boolean
 - Run helm lint when planning.
 - manifest Map<Any>
 - The rendered manifests as JSON. Not yet supported.
 - max
History Number - Limit the maximum number of revisions saved per release. Use 0 for no limit.
 - name String
 - Release name.
 - namespace String
 - Namespace to install the release into.
 - postrender String
 - Postrender command to run.
 - recreate
Pods Boolean - Perform pods restart during upgrade/rollback.
 - render
Subchart BooleanNotes  - If set, render subchart notes along with the parent.
 - replace Boolean
 - Re-use the given name, even if that name is already used. This is unsafe in production
 - repository
Opts Property Map - Specification defining the Helm chart repository to use.
 - reset
Values Boolean - When upgrading, reset the values to the ones built into the chart.
 - resource
Names Map<List<String>> - Names of resources created by the release grouped by "kind/version".
 - reuse
Values Boolean - When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
 - skip
Await Boolean - By default, the provider waits until all resources are in a ready state before marking the release as successful. Setting this to true will skip such await logic.
 - skip
Crds Boolean - If set, no CRDs will be installed. By default, CRDs are installed if not already present.
 - timeout Number
 - Time in seconds to wait for any individual kubernetes operation.
 - value
Yaml List<Asset>Files  - List of assets (raw yaml files). Content is read and merged with values. Not yet supported.
 - values Map<Any>
 - Custom values set for the release.
 - verify Boolean
 - Verify the package before installing it.
 - version String
 - Specify the exact chart version to install. If this is not specified, the latest version is installed.
 - wait
For BooleanJobs  - Will wait until all Jobs have been completed before marking the release as successful. This is ignored if 
skipAwaitis enabled. 
ReleaseStatus, ReleaseStatusArgs    
- App
Version string - The version number of the application being deployed.
 - Chart string
 - The name of the chart.
 - Name string
 - Name is the name of the release.
 - Namespace string
 - Namespace is the kubernetes namespace of the release.
 - Revision int
 - Version is an int32 which represents the version of the release.
 - Status string
 - Status of the release.
 - Version string
 - A SemVer 2 conformant version string of the chart.
 
- App
Version string - The version number of the application being deployed.
 - Chart string
 - The name of the chart.
 - Name string
 - Name is the name of the release.
 - Namespace string
 - Namespace is the kubernetes namespace of the release.
 - Revision int
 - Version is an int32 which represents the version of the release.
 - Status string
 - Status of the release.
 - Version string
 - A SemVer 2 conformant version string of the chart.
 
- app
Version String - The version number of the application being deployed.
 - chart String
 - The name of the chart.
 - name String
 - Name is the name of the release.
 - namespace String
 - Namespace is the kubernetes namespace of the release.
 - revision Integer
 - Version is an int32 which represents the version of the release.
 - status String
 - Status of the release.
 - version String
 - A SemVer 2 conformant version string of the chart.
 
- app
Version string - The version number of the application being deployed.
 - chart string
 - The name of the chart.
 - name string
 - Name is the name of the release.
 - namespace string
 - Namespace is the kubernetes namespace of the release.
 - revision number
 - Version is an int32 which represents the version of the release.
 - status string
 - Status of the release.
 - version string
 - A SemVer 2 conformant version string of the chart.
 
- app_
version str - The version number of the application being deployed.
 - chart str
 - The name of the chart.
 - name str
 - Name is the name of the release.
 - namespace str
 - Namespace is the kubernetes namespace of the release.
 - revision int
 - Version is an int32 which represents the version of the release.
 - status str
 - Status of the release.
 - version str
 - A SemVer 2 conformant version string of the chart.
 
- app
Version String - The version number of the application being deployed.
 - chart String
 - The name of the chart.
 - name String
 - Name is the name of the release.
 - namespace String
 - Namespace is the kubernetes namespace of the release.
 - revision Number
 - Version is an int32 which represents the version of the release.
 - status String
 - Status of the release.
 - version String
 - A SemVer 2 conformant version string of the chart.
 
RepositoryOpts, RepositoryOptsArgs    
- Ca
File string - The Repository's CA File
 - Cert
File string - The repository's cert file
 - Key
File string - The repository's cert key file
 - Password string
 - Password for HTTP basic authentication
 - Repo string
 - Repository where to locate the requested chart. If is a URL the chart is installed without installing the repository.
 - Username string
 - Username for HTTP basic authentication
 
- Ca
File string - The Repository's CA File
 - Cert
File string - The repository's cert file
 - Key
File string - The repository's cert key file
 - Password string
 - Password for HTTP basic authentication
 - Repo string
 - Repository where to locate the requested chart. If is a URL the chart is installed without installing the repository.
 - Username string
 - Username for HTTP basic authentication
 
- ca
File String - The Repository's CA File
 - cert
File String - The repository's cert file
 - key
File String - The repository's cert key file
 - password String
 - Password for HTTP basic authentication
 - repo String
 - Repository where to locate the requested chart. If is a URL the chart is installed without installing the repository.
 - username String
 - Username for HTTP basic authentication
 
- ca
File string - The Repository's CA File
 - cert
File string - The repository's cert file
 - key
File string - The repository's cert key file
 - password string
 - Password for HTTP basic authentication
 - repo string
 - Repository where to locate the requested chart. If is a URL the chart is installed without installing the repository.
 - username string
 - Username for HTTP basic authentication
 
- ca_
file str - The Repository's CA File
 - cert_
file str - The repository's cert file
 - key_
file str - The repository's cert key file
 - password str
 - Password for HTTP basic authentication
 - repo str
 - Repository where to locate the requested chart. If is a URL the chart is installed without installing the repository.
 - username str
 - Username for HTTP basic authentication
 
- ca
File String - The Repository's CA File
 - cert
File String - The repository's cert file
 - key
File String - The repository's cert key file
 - password String
 - Password for HTTP basic authentication
 - repo String
 - Repository where to locate the requested chart. If is a URL the chart is installed without installing the repository.
 - username String
 - Username for HTTP basic authentication
 
Package Details
- Repository
 - NGINX Ingress Controller (Helm) pulumi/pulumi-kubernetes-ingress-nginx
 - License
 - Apache-2.0