1. Packages
  2. Kubernetes CoreDNS
  3. API Docs
  4. CoreDNS
Kubernetes CoreDNS v0.0.2 published on Thursday, May 26, 2022 by Pulumi

kubernetes-coredns.CoreDNS

Explore with Pulumi AI

kubernetes-coredns logo
Kubernetes CoreDNS v0.0.2 published on Thursday, May 26, 2022 by Pulumi

    Enable fast and flexible in-cluster DNS.

    Create CoreDNS Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new CoreDNS(name: string, args?: CoreDNSArgs, opts?: CustomResourceOptions);
    @overload
    def CoreDNS(resource_name: str,
                args: Optional[CoreDNSArgs] = None,
                opts: Optional[ResourceOptions] = None)
    
    @overload
    def CoreDNS(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                affinity: Optional[pulumi_kubernetes.core.v1.AffinityArgs] = None,
                autoscaler: Optional[CoreDNSAutoscalerArgs] = None,
                autoscaling: Optional[pulumi_kubernetes.autoscaling.v2beta2.HorizontalPodAutoscalerSpecArgs] = None,
                deployment: Optional[CoreDNSDeploymentArgs] = None,
                extra_secrets: Optional[Sequence[pulumi_kubernetes.core.v1.VolumeMountArgs]] = None,
                extra_volume_mounts: Optional[Sequence[pulumi_kubernetes.core.v1.VolumeMountArgs]] = None,
                extra_volumes: Optional[Sequence[pulumi_kubernetes.core.v1.VolumeArgs]] = None,
                helm_options: Optional[ReleaseArgs] = None,
                hpa: Optional[CoreDNSHPAArgs] = None,
                image: Optional[CoreDNSImageArgs] = None,
                is_cluster_service: Optional[bool] = None,
                liveness_probe: Optional[pulumi_kubernetes.core.v1.ProbeArgs] = None,
                node_selector: Optional[Mapping[str, str]] = None,
                pod_annotations: Optional[Mapping[str, str]] = None,
                pod_disruption_budget: Optional[pulumi_kubernetes.policy.v1.PodDisruptionBudgetSpecArgs] = None,
                pre_stop_sleep: Optional[int] = None,
                priority_class_name: Optional[str] = None,
                prometheus: Optional[CoreDNSPrometheusArgs] = None,
                rbac: Optional[CoreDNSRBACArgs] = None,
                readiness_probe: Optional[pulumi_kubernetes.core.v1.ProbeArgs] = None,
                replica_count: Optional[int] = None,
                resources: Optional[pulumi_kubernetes.core.v1.ResourceRequirementsArgs] = None,
                rolling_update: Optional[pulumi_kubernetes.apps.v1.RollingUpdateDeploymentArgs] = None,
                servers: Optional[Sequence[CoreDNSServerArgs]] = None,
                service: Optional[CoreDNSServiceArgs] = None,
                service_account: Optional[CoreDNSServiceAccountArgs] = None,
                service_type: Optional[str] = None,
                termination_grace_period_seconds: Optional[int] = None,
                tolerations: Optional[Sequence[pulumi_kubernetes.core.v1.TolerationArgs]] = None,
                zone_files: Optional[Sequence[CoreDNSZoneFileArgs]] = None)
    func NewCoreDNS(ctx *Context, name string, args *CoreDNSArgs, opts ...ResourceOption) (*CoreDNS, error)
    public CoreDNS(string name, CoreDNSArgs? args = null, CustomResourceOptions? opts = null)
    public CoreDNS(String name, CoreDNSArgs args)
    public CoreDNS(String name, CoreDNSArgs args, CustomResourceOptions options)
    
    type: kubernetes-coredns:CoreDNS
    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 CoreDNSArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args CoreDNSArgs
    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 CoreDNSArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args CoreDNSArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args CoreDNSArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var coreDNSResource = new KubernetesCoreDNS.CoreDNS("coreDNSResource", new()
    {
        Affinity = new Kubernetes.Core.Inputs.AffinityArgs
        {
            NodeAffinity = new Kubernetes.Core.Inputs.NodeAffinityArgs
            {
                PreferredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Core.Inputs.PreferredSchedulingTermArgs
                    {
                        Preference = new Kubernetes.Core.Inputs.NodeSelectorTermArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Core.Inputs.NodeSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchFields = new[]
                            {
                                new Kubernetes.Core.Inputs.NodeSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                        },
                        Weight = 0,
                    },
                },
                RequiredDuringSchedulingIgnoredDuringExecution = new Kubernetes.Core.Inputs.NodeSelectorArgs
                {
                    NodeSelectorTerms = new[]
                    {
                        new Kubernetes.Core.Inputs.NodeSelectorTermArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Core.Inputs.NodeSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchFields = new[]
                            {
                                new Kubernetes.Core.Inputs.NodeSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                        },
                    },
                },
            },
            PodAffinity = new Kubernetes.Core.Inputs.PodAffinityArgs
            {
                PreferredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Core.Inputs.WeightedPodAffinityTermArgs
                    {
                        PodAffinityTerm = new Kubernetes.Core.Inputs.PodAffinityTermArgs
                        {
                            TopologyKey = "string",
                            LabelSelector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            NamespaceSelector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            Namespaces = new[]
                            {
                                "string",
                            },
                        },
                        Weight = 0,
                    },
                },
                RequiredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Core.Inputs.PodAffinityTermArgs
                    {
                        TopologyKey = "string",
                        LabelSelector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                        NamespaceSelector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                        Namespaces = new[]
                        {
                            "string",
                        },
                    },
                },
            },
            PodAntiAffinity = new Kubernetes.Core.Inputs.PodAntiAffinityArgs
            {
                PreferredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Core.Inputs.WeightedPodAffinityTermArgs
                    {
                        PodAffinityTerm = new Kubernetes.Core.Inputs.PodAffinityTermArgs
                        {
                            TopologyKey = "string",
                            LabelSelector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            NamespaceSelector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            Namespaces = new[]
                            {
                                "string",
                            },
                        },
                        Weight = 0,
                    },
                },
                RequiredDuringSchedulingIgnoredDuringExecution = new[]
                {
                    new Kubernetes.Core.Inputs.PodAffinityTermArgs
                    {
                        TopologyKey = "string",
                        LabelSelector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                        NamespaceSelector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                        Namespaces = new[]
                        {
                            "string",
                        },
                    },
                },
            },
        },
        Autoscaler = new KubernetesCoreDNS.Inputs.CoreDNSAutoscalerArgs
        {
            CoresPerReplica = 0,
            Enabled = false,
            Image = new KubernetesCoreDNS.Inputs.CoreDNSImageArgs
            {
                PullPolicy = "string",
                PullSecrets = new[]
                {
                    "string",
                },
                Repository = "string",
                Tag = "string",
            },
            IncludeUnschedulableNodes = false,
            Max = 0,
            Min = 0,
            NodesPerReplica = 0,
            PreventSinglePointFailure = false,
        },
        Autoscaling = new Kubernetes.Autoscaling.Inputs.HorizontalPodAutoscalerSpecArgs
        {
            MaxReplicas = 0,
            ScaleTargetRef = new Kubernetes.Autoscaling.Inputs.CrossVersionObjectReferenceArgs
            {
                Kind = "string",
                Name = "string",
                ApiVersion = "string",
            },
            Behavior = new Kubernetes.Autoscaling.Inputs.HorizontalPodAutoscalerBehaviorArgs
            {
                ScaleDown = new Kubernetes.Autoscaling.Inputs.HPAScalingRulesArgs
                {
                    Policies = new[]
                    {
                        new Kubernetes.Autoscaling.Inputs.HPAScalingPolicyArgs
                        {
                            PeriodSeconds = 0,
                            Type = "string",
                            Value = 0,
                        },
                    },
                    SelectPolicy = "string",
                    StabilizationWindowSeconds = 0,
                },
                ScaleUp = new Kubernetes.Autoscaling.Inputs.HPAScalingRulesArgs
                {
                    Policies = new[]
                    {
                        new Kubernetes.Autoscaling.Inputs.HPAScalingPolicyArgs
                        {
                            PeriodSeconds = 0,
                            Type = "string",
                            Value = 0,
                        },
                    },
                    SelectPolicy = "string",
                    StabilizationWindowSeconds = 0,
                },
            },
            Metrics = new[]
            {
                new Kubernetes.Autoscaling.Inputs.MetricSpecArgs
                {
                    Type = "string",
                    ContainerResource = new Kubernetes.Autoscaling.Inputs.ContainerResourceMetricSourceArgs
                    {
                        Container = "string",
                        Name = "string",
                        Target = new Kubernetes.Autoscaling.Inputs.MetricTargetArgs
                        {
                            Type = "string",
                            AverageUtilization = 0,
                            AverageValue = "string",
                            Value = "string",
                        },
                    },
                    External = new Kubernetes.Autoscaling.Inputs.ExternalMetricSourceArgs
                    {
                        Metric = new Kubernetes.Autoscaling.Inputs.MetricIdentifierArgs
                        {
                            Name = "string",
                            Selector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                        },
                        Target = new Kubernetes.Autoscaling.Inputs.MetricTargetArgs
                        {
                            Type = "string",
                            AverageUtilization = 0,
                            AverageValue = "string",
                            Value = "string",
                        },
                    },
                    Object = new Kubernetes.Autoscaling.Inputs.ObjectMetricSourceArgs
                    {
                        DescribedObject = new Kubernetes.Autoscaling.Inputs.CrossVersionObjectReferenceArgs
                        {
                            Kind = "string",
                            Name = "string",
                            ApiVersion = "string",
                        },
                        Metric = new Kubernetes.Autoscaling.Inputs.MetricIdentifierArgs
                        {
                            Name = "string",
                            Selector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                        },
                        Target = new Kubernetes.Autoscaling.Inputs.MetricTargetArgs
                        {
                            Type = "string",
                            AverageUtilization = 0,
                            AverageValue = "string",
                            Value = "string",
                        },
                    },
                    Pods = new Kubernetes.Autoscaling.Inputs.PodsMetricSourceArgs
                    {
                        Metric = new Kubernetes.Autoscaling.Inputs.MetricIdentifierArgs
                        {
                            Name = "string",
                            Selector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                        },
                        Target = new Kubernetes.Autoscaling.Inputs.MetricTargetArgs
                        {
                            Type = "string",
                            AverageUtilization = 0,
                            AverageValue = "string",
                            Value = "string",
                        },
                    },
                    Resource = new Kubernetes.Autoscaling.Inputs.ResourceMetricSourceArgs
                    {
                        Name = "string",
                        Target = new Kubernetes.Autoscaling.Inputs.MetricTargetArgs
                        {
                            Type = "string",
                            AverageUtilization = 0,
                            AverageValue = "string",
                            Value = "string",
                        },
                    },
                },
            },
            MinReplicas = 0,
        },
        Deployment = new KubernetesCoreDNS.Inputs.CoreDNSDeploymentArgs
        {
            Enabled = false,
            Name = "string",
        },
        ExtraSecrets = new[]
        {
            new Kubernetes.Core.Inputs.VolumeMountArgs
            {
                MountPath = "string",
                Name = "string",
                MountPropagation = "string",
                ReadOnly = false,
                SubPath = "string",
                SubPathExpr = "string",
            },
        },
        ExtraVolumeMounts = new[]
        {
            new Kubernetes.Core.Inputs.VolumeMountArgs
            {
                MountPath = "string",
                Name = "string",
                MountPropagation = "string",
                ReadOnly = false,
                SubPath = "string",
                SubPathExpr = "string",
            },
        },
        ExtraVolumes = new[]
        {
            new Kubernetes.Core.Inputs.VolumeArgs
            {
                Name = "string",
                GitRepo = new Kubernetes.Core.Inputs.GitRepoVolumeSourceArgs
                {
                    Repository = "string",
                    Directory = "string",
                    Revision = "string",
                },
                ConfigMap = new Kubernetes.Core.Inputs.ConfigMapVolumeSourceArgs
                {
                    DefaultMode = 0,
                    Items = new[]
                    {
                        new Kubernetes.Core.Inputs.KeyToPathArgs
                        {
                            Key = "string",
                            Path = "string",
                            Mode = 0,
                        },
                    },
                    Name = "string",
                    Optional = false,
                },
                Glusterfs = new Kubernetes.Core.Inputs.GlusterfsVolumeSourceArgs
                {
                    Endpoints = "string",
                    Path = "string",
                    ReadOnly = false,
                },
                Cinder = new Kubernetes.Core.Inputs.CinderVolumeSourceArgs
                {
                    VolumeID = "string",
                    FsType = "string",
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Core.Inputs.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                },
                HostPath = new Kubernetes.Core.Inputs.HostPathVolumeSourceArgs
                {
                    Path = "string",
                    Type = "string",
                },
                Csi = new Kubernetes.Core.Inputs.CSIVolumeSourceArgs
                {
                    Driver = "string",
                    FsType = "string",
                    NodePublishSecretRef = new Kubernetes.Core.Inputs.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    ReadOnly = false,
                    VolumeAttributes = 
                    {
                        { "string", "string" },
                    },
                },
                DownwardAPI = new Kubernetes.Core.Inputs.DownwardAPIVolumeSourceArgs
                {
                    DefaultMode = 0,
                    Items = new[]
                    {
                        new Kubernetes.Core.Inputs.DownwardAPIVolumeFileArgs
                        {
                            Path = "string",
                            FieldRef = new Kubernetes.Core.Inputs.ObjectFieldSelectorArgs
                            {
                                FieldPath = "string",
                                ApiVersion = "string",
                            },
                            Mode = 0,
                            ResourceFieldRef = new Kubernetes.Core.Inputs.ResourceFieldSelectorArgs
                            {
                                Resource = "string",
                                ContainerName = "string",
                                Divisor = "string",
                            },
                        },
                    },
                },
                EmptyDir = new Kubernetes.Core.Inputs.EmptyDirVolumeSourceArgs
                {
                    Medium = "string",
                    SizeLimit = "string",
                },
                Ephemeral = new Kubernetes.Core.Inputs.EphemeralVolumeSourceArgs
                {
                    ReadOnly = false,
                    VolumeClaimTemplate = new Kubernetes.Core.Inputs.PersistentVolumeClaimTemplateArgs
                    {
                        Spec = new Kubernetes.Core.Inputs.PersistentVolumeClaimSpecArgs
                        {
                            AccessModes = new[]
                            {
                                "string",
                            },
                            DataSource = new Kubernetes.Core.Inputs.TypedLocalObjectReferenceArgs
                            {
                                Kind = "string",
                                Name = "string",
                                ApiGroup = "string",
                            },
                            DataSourceRef = new Kubernetes.Core.Inputs.TypedLocalObjectReferenceArgs
                            {
                                Kind = "string",
                                Name = "string",
                                ApiGroup = "string",
                            },
                            Resources = new Kubernetes.Core.Inputs.ResourceRequirementsArgs
                            {
                                Limits = 
                                {
                                    { "string", "string" },
                                },
                                Requests = 
                                {
                                    { "string", "string" },
                                },
                            },
                            Selector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                            {
                                MatchExpressions = new[]
                                {
                                    new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                    {
                                        Key = "string",
                                        Operator = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                MatchLabels = 
                                {
                                    { "string", "string" },
                                },
                            },
                            StorageClassName = "string",
                            VolumeMode = "string",
                            VolumeName = "string",
                        },
                        Metadata = new Kubernetes.Meta.Inputs.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.Meta.Inputs.ManagedFieldsEntryArgs
                                {
                                    ApiVersion = "string",
                                    FieldsType = "string",
                                    FieldsV1 = "{}",
                                    Manager = "string",
                                    Operation = "string",
                                    Subresource = "string",
                                    Time = "string",
                                },
                            },
                            Name = "string",
                            Namespace = "string",
                            OwnerReferences = new[]
                            {
                                new Kubernetes.Meta.Inputs.OwnerReferenceArgs
                                {
                                    ApiVersion = "string",
                                    Kind = "string",
                                    Name = "string",
                                    Uid = "string",
                                    BlockOwnerDeletion = false,
                                    Controller = false,
                                },
                            },
                            ResourceVersion = "string",
                            SelfLink = "string",
                            Uid = "string",
                        },
                    },
                },
                Fc = new Kubernetes.Core.Inputs.FCVolumeSourceArgs
                {
                    FsType = "string",
                    Lun = 0,
                    ReadOnly = false,
                    TargetWWNs = new[]
                    {
                        "string",
                    },
                    Wwids = new[]
                    {
                        "string",
                    },
                },
                FlexVolume = new Kubernetes.Core.Inputs.FlexVolumeSourceArgs
                {
                    Driver = "string",
                    FsType = "string",
                    Options = 
                    {
                        { "string", "string" },
                    },
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Core.Inputs.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                },
                Iscsi = new Kubernetes.Core.Inputs.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.Core.Inputs.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                },
                GcePersistentDisk = new Kubernetes.Core.Inputs.GCEPersistentDiskVolumeSourceArgs
                {
                    PdName = "string",
                    FsType = "string",
                    Partition = 0,
                    ReadOnly = false,
                },
                AwsElasticBlockStore = new Kubernetes.Core.Inputs.AWSElasticBlockStoreVolumeSourceArgs
                {
                    VolumeID = "string",
                    FsType = "string",
                    Partition = 0,
                    ReadOnly = false,
                },
                Cephfs = new Kubernetes.Core.Inputs.CephFSVolumeSourceArgs
                {
                    Monitors = new[]
                    {
                        "string",
                    },
                    Path = "string",
                    ReadOnly = false,
                    SecretFile = "string",
                    SecretRef = new Kubernetes.Core.Inputs.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    User = "string",
                },
                AzureFile = new Kubernetes.Core.Inputs.AzureFileVolumeSourceArgs
                {
                    SecretName = "string",
                    ShareName = "string",
                    ReadOnly = false,
                },
                Flocker = new Kubernetes.Core.Inputs.FlockerVolumeSourceArgs
                {
                    DatasetName = "string",
                    DatasetUUID = "string",
                },
                AzureDisk = new Kubernetes.Core.Inputs.AzureDiskVolumeSourceArgs
                {
                    DiskName = "string",
                    DiskURI = "string",
                    CachingMode = "string",
                    FsType = "string",
                    Kind = "string",
                    ReadOnly = false,
                },
                Nfs = new Kubernetes.Core.Inputs.NFSVolumeSourceArgs
                {
                    Path = "string",
                    Server = "string",
                    ReadOnly = false,
                },
                PersistentVolumeClaim = new Kubernetes.Core.Inputs.PersistentVolumeClaimVolumeSourceArgs
                {
                    ClaimName = "string",
                    ReadOnly = false,
                },
                PhotonPersistentDisk = new Kubernetes.Core.Inputs.PhotonPersistentDiskVolumeSourceArgs
                {
                    PdID = "string",
                    FsType = "string",
                },
                PortworxVolume = new Kubernetes.Core.Inputs.PortworxVolumeSourceArgs
                {
                    VolumeID = "string",
                    FsType = "string",
                    ReadOnly = false,
                },
                Projected = new Kubernetes.Core.Inputs.ProjectedVolumeSourceArgs
                {
                    Sources = new[]
                    {
                        new Kubernetes.Core.Inputs.VolumeProjectionArgs
                        {
                            ConfigMap = new Kubernetes.Core.Inputs.ConfigMapProjectionArgs
                            {
                                Items = new[]
                                {
                                    new Kubernetes.Core.Inputs.KeyToPathArgs
                                    {
                                        Key = "string",
                                        Path = "string",
                                        Mode = 0,
                                    },
                                },
                                Name = "string",
                                Optional = false,
                            },
                            DownwardAPI = new Kubernetes.Core.Inputs.DownwardAPIProjectionArgs
                            {
                                Items = new[]
                                {
                                    new Kubernetes.Core.Inputs.DownwardAPIVolumeFileArgs
                                    {
                                        Path = "string",
                                        FieldRef = new Kubernetes.Core.Inputs.ObjectFieldSelectorArgs
                                        {
                                            FieldPath = "string",
                                            ApiVersion = "string",
                                        },
                                        Mode = 0,
                                        ResourceFieldRef = new Kubernetes.Core.Inputs.ResourceFieldSelectorArgs
                                        {
                                            Resource = "string",
                                            ContainerName = "string",
                                            Divisor = "string",
                                        },
                                    },
                                },
                            },
                            Secret = new Kubernetes.Core.Inputs.SecretProjectionArgs
                            {
                                Items = new[]
                                {
                                    new Kubernetes.Core.Inputs.KeyToPathArgs
                                    {
                                        Key = "string",
                                        Path = "string",
                                        Mode = 0,
                                    },
                                },
                                Name = "string",
                                Optional = false,
                            },
                            ServiceAccountToken = new Kubernetes.Core.Inputs.ServiceAccountTokenProjectionArgs
                            {
                                Path = "string",
                                Audience = "string",
                                ExpirationSeconds = 0,
                            },
                        },
                    },
                    DefaultMode = 0,
                },
                Quobyte = new Kubernetes.Core.Inputs.QuobyteVolumeSourceArgs
                {
                    Registry = "string",
                    Volume = "string",
                    Group = "string",
                    ReadOnly = false,
                    Tenant = "string",
                    User = "string",
                },
                Rbd = new Kubernetes.Core.Inputs.RBDVolumeSourceArgs
                {
                    Image = "string",
                    Monitors = new[]
                    {
                        "string",
                    },
                    FsType = "string",
                    Keyring = "string",
                    Pool = "string",
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Core.Inputs.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    User = "string",
                },
                ScaleIO = new Kubernetes.Core.Inputs.ScaleIOVolumeSourceArgs
                {
                    Gateway = "string",
                    SecretRef = new Kubernetes.Core.Inputs.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    System = "string",
                    FsType = "string",
                    ProtectionDomain = "string",
                    ReadOnly = false,
                    SslEnabled = false,
                    StorageMode = "string",
                    StoragePool = "string",
                    VolumeName = "string",
                },
                Secret = new Kubernetes.Core.Inputs.SecretVolumeSourceArgs
                {
                    DefaultMode = 0,
                    Items = new[]
                    {
                        new Kubernetes.Core.Inputs.KeyToPathArgs
                        {
                            Key = "string",
                            Path = "string",
                            Mode = 0,
                        },
                    },
                    Optional = false,
                    SecretName = "string",
                },
                Storageos = new Kubernetes.Core.Inputs.StorageOSVolumeSourceArgs
                {
                    FsType = "string",
                    ReadOnly = false,
                    SecretRef = new Kubernetes.Core.Inputs.LocalObjectReferenceArgs
                    {
                        Name = "string",
                    },
                    VolumeName = "string",
                    VolumeNamespace = "string",
                },
                VsphereVolume = new Kubernetes.Core.Inputs.VsphereVirtualDiskVolumeSourceArgs
                {
                    VolumePath = "string",
                    FsType = "string",
                    StoragePolicyID = "string",
                    StoragePolicyName = "string",
                },
            },
        },
        HelmOptions = new KubernetesCoreDNS.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 KubernetesCoreDNS.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,
        },
        Hpa = new KubernetesCoreDNS.Inputs.CoreDNSHPAArgs
        {
            Enabled = false,
            MaxReplicas = 0,
            Metrics = new Kubernetes.Autoscaling.Inputs.MetricSpecArgs
            {
                Type = "string",
                ContainerResource = new Kubernetes.Autoscaling.Inputs.ContainerResourceMetricSourceArgs
                {
                    Container = "string",
                    Name = "string",
                    Target = new Kubernetes.Autoscaling.Inputs.MetricTargetArgs
                    {
                        Type = "string",
                        AverageUtilization = 0,
                        AverageValue = "string",
                        Value = "string",
                    },
                },
                External = new Kubernetes.Autoscaling.Inputs.ExternalMetricSourceArgs
                {
                    Metric = new Kubernetes.Autoscaling.Inputs.MetricIdentifierArgs
                    {
                        Name = "string",
                        Selector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                    },
                    Target = new Kubernetes.Autoscaling.Inputs.MetricTargetArgs
                    {
                        Type = "string",
                        AverageUtilization = 0,
                        AverageValue = "string",
                        Value = "string",
                    },
                },
                Object = new Kubernetes.Autoscaling.Inputs.ObjectMetricSourceArgs
                {
                    DescribedObject = new Kubernetes.Autoscaling.Inputs.CrossVersionObjectReferenceArgs
                    {
                        Kind = "string",
                        Name = "string",
                        ApiVersion = "string",
                    },
                    Metric = new Kubernetes.Autoscaling.Inputs.MetricIdentifierArgs
                    {
                        Name = "string",
                        Selector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                    },
                    Target = new Kubernetes.Autoscaling.Inputs.MetricTargetArgs
                    {
                        Type = "string",
                        AverageUtilization = 0,
                        AverageValue = "string",
                        Value = "string",
                    },
                },
                Pods = new Kubernetes.Autoscaling.Inputs.PodsMetricSourceArgs
                {
                    Metric = new Kubernetes.Autoscaling.Inputs.MetricIdentifierArgs
                    {
                        Name = "string",
                        Selector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
                        {
                            MatchExpressions = new[]
                            {
                                new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                                {
                                    Key = "string",
                                    Operator = "string",
                                    Values = new[]
                                    {
                                        "string",
                                    },
                                },
                            },
                            MatchLabels = 
                            {
                                { "string", "string" },
                            },
                        },
                    },
                    Target = new Kubernetes.Autoscaling.Inputs.MetricTargetArgs
                    {
                        Type = "string",
                        AverageUtilization = 0,
                        AverageValue = "string",
                        Value = "string",
                    },
                },
                Resource = new Kubernetes.Autoscaling.Inputs.ResourceMetricSourceArgs
                {
                    Name = "string",
                    Target = new Kubernetes.Autoscaling.Inputs.MetricTargetArgs
                    {
                        Type = "string",
                        AverageUtilization = 0,
                        AverageValue = "string",
                        Value = "string",
                    },
                },
            },
            MinReplicas = 0,
        },
        Image = new KubernetesCoreDNS.Inputs.CoreDNSImageArgs
        {
            PullPolicy = "string",
            PullSecrets = new[]
            {
                "string",
            },
            Repository = "string",
            Tag = "string",
        },
        IsClusterService = false,
        LivenessProbe = new Kubernetes.Core.Inputs.ProbeArgs
        {
            Exec = new Kubernetes.Core.Inputs.ExecActionArgs
            {
                Command = new[]
                {
                    "string",
                },
            },
            FailureThreshold = 0,
            HttpGet = new Kubernetes.Core.Inputs.HTTPGetActionArgs
            {
                Port = 0,
                Host = "string",
                HttpHeaders = new[]
                {
                    new Kubernetes.Core.Inputs.HTTPHeaderArgs
                    {
                        Name = "string",
                        Value = "string",
                    },
                },
                Path = "string",
                Scheme = "string",
            },
            InitialDelaySeconds = 0,
            PeriodSeconds = 0,
            SuccessThreshold = 0,
            TcpSocket = new Kubernetes.Core.Inputs.TCPSocketActionArgs
            {
                Port = 0,
                Host = "string",
            },
            TerminationGracePeriodSeconds = 0,
            TimeoutSeconds = 0,
        },
        NodeSelector = 
        {
            { "string", "string" },
        },
        PodAnnotations = 
        {
            { "string", "string" },
        },
        PodDisruptionBudget = new Kubernetes.Policy.Inputs.PodDisruptionBudgetSpecArgs
        {
            MaxUnavailable = 0,
            MinAvailable = 0,
            Selector = new Kubernetes.Meta.Inputs.LabelSelectorArgs
            {
                MatchExpressions = new[]
                {
                    new Kubernetes.Meta.Inputs.LabelSelectorRequirementArgs
                    {
                        Key = "string",
                        Operator = "string",
                        Values = new[]
                        {
                            "string",
                        },
                    },
                },
                MatchLabels = 
                {
                    { "string", "string" },
                },
            },
        },
        PreStopSleep = 0,
        PriorityClassName = "string",
        Prometheus = new KubernetesCoreDNS.Inputs.CoreDNSPrometheusArgs
        {
            Monitor = new KubernetesCoreDNS.Inputs.CoreDNSPrometheusMonitorArgs
            {
                AdditionalLabels = 
                {
                    { "string", "string" },
                },
                Enabled = false,
                Namespace = "string",
            },
            Service = new KubernetesCoreDNS.Inputs.CoreDNSPrometheusServiceArgs
            {
                Annotations = 
                {
                    { "string", "string" },
                },
                Enabled = false,
            },
        },
        Rbac = new KubernetesCoreDNS.Inputs.CoreDNSRBACArgs
        {
            Create = false,
            Name = "string",
            PspEnable = false,
        },
        ReadinessProbe = new Kubernetes.Core.Inputs.ProbeArgs
        {
            Exec = new Kubernetes.Core.Inputs.ExecActionArgs
            {
                Command = new[]
                {
                    "string",
                },
            },
            FailureThreshold = 0,
            HttpGet = new Kubernetes.Core.Inputs.HTTPGetActionArgs
            {
                Port = 0,
                Host = "string",
                HttpHeaders = new[]
                {
                    new Kubernetes.Core.Inputs.HTTPHeaderArgs
                    {
                        Name = "string",
                        Value = "string",
                    },
                },
                Path = "string",
                Scheme = "string",
            },
            InitialDelaySeconds = 0,
            PeriodSeconds = 0,
            SuccessThreshold = 0,
            TcpSocket = new Kubernetes.Core.Inputs.TCPSocketActionArgs
            {
                Port = 0,
                Host = "string",
            },
            TerminationGracePeriodSeconds = 0,
            TimeoutSeconds = 0,
        },
        ReplicaCount = 0,
        Resources = new Kubernetes.Core.Inputs.ResourceRequirementsArgs
        {
            Limits = 
            {
                { "string", "string" },
            },
            Requests = 
            {
                { "string", "string" },
            },
        },
        RollingUpdate = new Kubernetes.Apps.Inputs.RollingUpdateDeploymentArgs
        {
            MaxSurge = 0,
            MaxUnavailable = 0,
        },
        Servers = new[]
        {
            new KubernetesCoreDNS.Inputs.CoreDNSServerArgs
            {
                Plugins = new[]
                {
                    new KubernetesCoreDNS.Inputs.CoreDNSServerPluginArgs
                    {
                        ConfigBlock = "string",
                        Name = "string",
                        Parameters = "string",
                    },
                },
                Port = 0,
                Zones = new[]
                {
                    new KubernetesCoreDNS.Inputs.CoreDNSServerZoneArgs
                    {
                        Scheme = "string",
                        Use_tcp = false,
                        Zone = "string",
                    },
                },
            },
        },
        Service = new KubernetesCoreDNS.Inputs.CoreDNSServiceArgs
        {
            Annotations = 
            {
                { "string", "string" },
            },
            ClusterIP = "string",
            ExternalIPs = new[]
            {
                "string",
            },
            ExternalTrafficPolicy = "string",
            LoadBalancerIP = "string",
            Name = "string",
        },
        ServiceAccount = new KubernetesCoreDNS.Inputs.CoreDNSServiceAccountArgs
        {
            Annotations = 
            {
                { "string", "string" },
            },
            Create = false,
            Name = "string",
        },
        ServiceType = "string",
        TerminationGracePeriodSeconds = 0,
        Tolerations = new[]
        {
            new Kubernetes.Core.Inputs.TolerationArgs
            {
                Effect = "string",
                Key = "string",
                Operator = "string",
                TolerationSeconds = 0,
                Value = "string",
            },
        },
        ZoneFiles = new[]
        {
            new KubernetesCoreDNS.Inputs.CoreDNSZoneFileArgs
            {
                Contents = "string",
                Domain = "string",
                String = "string",
            },
        },
    });
    
    example, err := kubernetescoredns.NewCoreDNS(ctx, "coreDNSResource", &kubernetescoredns.CoreDNSArgs{
    	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"),
    							},
    						},
    						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"),
    						},
    					},
    					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"),
    							},
    						},
    						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"),
    						},
    					},
    					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"),
    					},
    				},
    			},
    		},
    	},
    	Autoscaler: &kubernetescoredns.CoreDNSAutoscalerArgs{
    		CoresPerReplica: pulumi.Int(0),
    		Enabled:         pulumi.Bool(false),
    		Image: &kubernetescoredns.CoreDNSImageArgs{
    			PullPolicy: pulumi.String("string"),
    			PullSecrets: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Repository: pulumi.String("string"),
    			Tag:        pulumi.String("string"),
    		},
    		IncludeUnschedulableNodes: pulumi.Bool(false),
    		Max:                       pulumi.Int(0),
    		Min:                       pulumi.Int(0),
    		NodesPerReplica:           pulumi.Int(0),
    		PreventSinglePointFailure: pulumi.Bool(false),
    	},
    	Autoscaling: &autoscalingv2beta2.HorizontalPodAutoscalerSpecArgs{
    		MaxReplicas: pulumi.Int(0),
    		ScaleTargetRef: &autoscalingv2beta2.CrossVersionObjectReferenceArgs{
    			Kind:       pulumi.String("string"),
    			Name:       pulumi.String("string"),
    			ApiVersion: pulumi.String("string"),
    		},
    		Behavior: &autoscalingv2beta2.HorizontalPodAutoscalerBehaviorArgs{
    			ScaleDown: &autoscalingv2beta2.HPAScalingRulesArgs{
    				Policies: autoscalingv2beta2.HPAScalingPolicyArray{
    					&autoscalingv2beta2.HPAScalingPolicyArgs{
    						PeriodSeconds: pulumi.Int(0),
    						Type:          pulumi.String("string"),
    						Value:         pulumi.Int(0),
    					},
    				},
    				SelectPolicy:               pulumi.String("string"),
    				StabilizationWindowSeconds: pulumi.Int(0),
    			},
    			ScaleUp: &autoscalingv2beta2.HPAScalingRulesArgs{
    				Policies: autoscalingv2beta2.HPAScalingPolicyArray{
    					&autoscalingv2beta2.HPAScalingPolicyArgs{
    						PeriodSeconds: pulumi.Int(0),
    						Type:          pulumi.String("string"),
    						Value:         pulumi.Int(0),
    					},
    				},
    				SelectPolicy:               pulumi.String("string"),
    				StabilizationWindowSeconds: pulumi.Int(0),
    			},
    		},
    		Metrics: autoscalingv2beta2.MetricSpecArray{
    			&autoscalingv2beta2.MetricSpecArgs{
    				Type: pulumi.String("string"),
    				ContainerResource: &autoscalingv2beta2.ContainerResourceMetricSourceArgs{
    					Container: pulumi.String("string"),
    					Name:      pulumi.String("string"),
    					Target: &autoscalingv2beta2.MetricTargetArgs{
    						Type:               pulumi.String("string"),
    						AverageUtilization: pulumi.Int(0),
    						AverageValue:       pulumi.String("string"),
    						Value:              pulumi.String("string"),
    					},
    				},
    				External: &autoscalingv2beta2.ExternalMetricSourceArgs{
    					Metric: &autoscalingv2beta2.MetricIdentifierArgs{
    						Name: 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"),
    							},
    						},
    					},
    					Target: &autoscalingv2beta2.MetricTargetArgs{
    						Type:               pulumi.String("string"),
    						AverageUtilization: pulumi.Int(0),
    						AverageValue:       pulumi.String("string"),
    						Value:              pulumi.String("string"),
    					},
    				},
    				Object: &autoscalingv2beta2.ObjectMetricSourceArgs{
    					DescribedObject: &autoscalingv2beta2.CrossVersionObjectReferenceArgs{
    						Kind:       pulumi.String("string"),
    						Name:       pulumi.String("string"),
    						ApiVersion: pulumi.String("string"),
    					},
    					Metric: &autoscalingv2beta2.MetricIdentifierArgs{
    						Name: 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"),
    							},
    						},
    					},
    					Target: &autoscalingv2beta2.MetricTargetArgs{
    						Type:               pulumi.String("string"),
    						AverageUtilization: pulumi.Int(0),
    						AverageValue:       pulumi.String("string"),
    						Value:              pulumi.String("string"),
    					},
    				},
    				Pods: &autoscalingv2beta2.PodsMetricSourceArgs{
    					Metric: &autoscalingv2beta2.MetricIdentifierArgs{
    						Name: 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"),
    							},
    						},
    					},
    					Target: &autoscalingv2beta2.MetricTargetArgs{
    						Type:               pulumi.String("string"),
    						AverageUtilization: pulumi.Int(0),
    						AverageValue:       pulumi.String("string"),
    						Value:              pulumi.String("string"),
    					},
    				},
    				Resource: &autoscalingv2beta2.ResourceMetricSourceArgs{
    					Name: pulumi.String("string"),
    					Target: &autoscalingv2beta2.MetricTargetArgs{
    						Type:               pulumi.String("string"),
    						AverageUtilization: pulumi.Int(0),
    						AverageValue:       pulumi.String("string"),
    						Value:              pulumi.String("string"),
    					},
    				},
    			},
    		},
    		MinReplicas: pulumi.Int(0),
    	},
    	Deployment: &kubernetescoredns.CoreDNSDeploymentArgs{
    		Enabled: pulumi.Bool(false),
    		Name:    pulumi.String("string"),
    	},
    	ExtraSecrets: corev1.VolumeMountArray{
    		&corev1.VolumeMountArgs{
    			MountPath:        pulumi.String("string"),
    			Name:             pulumi.String("string"),
    			MountPropagation: pulumi.String("string"),
    			ReadOnly:         pulumi.Bool(false),
    			SubPath:          pulumi.String("string"),
    			SubPathExpr:      pulumi.String("string"),
    		},
    	},
    	ExtraVolumeMounts: corev1.VolumeMountArray{
    		&corev1.VolumeMountArgs{
    			MountPath:        pulumi.String("string"),
    			Name:             pulumi.String("string"),
    			MountPropagation: pulumi.String("string"),
    			ReadOnly:         pulumi.Bool(false),
    			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"),
    			},
    			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),
    			},
    			Glusterfs: &corev1.GlusterfsVolumeSourceArgs{
    				Endpoints: pulumi.String("string"),
    				Path:      pulumi.String("string"),
    				ReadOnly:  pulumi.Bool(false),
    			},
    			Cinder: &corev1.CinderVolumeSourceArgs{
    				VolumeID: pulumi.String("string"),
    				FsType:   pulumi.String("string"),
    				ReadOnly: pulumi.Bool(false),
    				SecretRef: &corev1.LocalObjectReferenceArgs{
    					Name: pulumi.String("string"),
    				},
    			},
    			HostPath: &corev1.HostPathVolumeSourceArgs{
    				Path: pulumi.String("string"),
    				Type: pulumi.String("string"),
    			},
    			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.TypedLocalObjectReferenceArgs{
    							Kind:     pulumi.String("string"),
    							Name:     pulumi.String("string"),
    							ApiGroup: pulumi.String("string"),
    						},
    						Resources: &corev1.ResourceRequirementsArgs{
    							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"),
    						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"),
    				},
    			},
    			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"),
    				},
    			},
    			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),
    			},
    			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"),
    			},
    			AzureFile: &corev1.AzureFileVolumeSourceArgs{
    				SecretName: pulumi.String("string"),
    				ShareName:  pulumi.String("string"),
    				ReadOnly:   pulumi.Bool(false),
    			},
    			Flocker: &corev1.FlockerVolumeSourceArgs{
    				DatasetName: pulumi.String("string"),
    				DatasetUUID: 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),
    			},
    			PersistentVolumeClaim: &corev1.PersistentVolumeClaimVolumeSourceArgs{
    				ClaimName: pulumi.String("string"),
    				ReadOnly:  pulumi.Bool(false),
    			},
    			PhotonPersistentDisk: &corev1.PhotonPersistentDiskVolumeSourceArgs{
    				PdID:   pulumi.String("string"),
    				FsType: pulumi.String("string"),
    			},
    			PortworxVolume: &corev1.PortworxVolumeSourceArgs{
    				VolumeID: pulumi.String("string"),
    				FsType:   pulumi.String("string"),
    				ReadOnly: pulumi.Bool(false),
    			},
    			Projected: &corev1.ProjectedVolumeSourceArgs{
    				Sources: corev1.VolumeProjectionArray{
    					&corev1.VolumeProjectionArgs{
    						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"),
    			},
    		},
    	},
    	HelmOptions: &kubernetescoredns.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: &kubernetescoredns.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),
    	},
    	Hpa: &kubernetescoredns.CoreDNSHPAArgs{
    		Enabled:     pulumi.Bool(false),
    		MaxReplicas: pulumi.Int(0),
    		Metrics: &autoscalingv2beta2.MetricSpecArgs{
    			Type: pulumi.String("string"),
    			ContainerResource: &autoscalingv2beta2.ContainerResourceMetricSourceArgs{
    				Container: pulumi.String("string"),
    				Name:      pulumi.String("string"),
    				Target: &autoscalingv2beta2.MetricTargetArgs{
    					Type:               pulumi.String("string"),
    					AverageUtilization: pulumi.Int(0),
    					AverageValue:       pulumi.String("string"),
    					Value:              pulumi.String("string"),
    				},
    			},
    			External: &autoscalingv2beta2.ExternalMetricSourceArgs{
    				Metric: &autoscalingv2beta2.MetricIdentifierArgs{
    					Name: 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"),
    						},
    					},
    				},
    				Target: &autoscalingv2beta2.MetricTargetArgs{
    					Type:               pulumi.String("string"),
    					AverageUtilization: pulumi.Int(0),
    					AverageValue:       pulumi.String("string"),
    					Value:              pulumi.String("string"),
    				},
    			},
    			Object: &autoscalingv2beta2.ObjectMetricSourceArgs{
    				DescribedObject: &autoscalingv2beta2.CrossVersionObjectReferenceArgs{
    					Kind:       pulumi.String("string"),
    					Name:       pulumi.String("string"),
    					ApiVersion: pulumi.String("string"),
    				},
    				Metric: &autoscalingv2beta2.MetricIdentifierArgs{
    					Name: 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"),
    						},
    					},
    				},
    				Target: &autoscalingv2beta2.MetricTargetArgs{
    					Type:               pulumi.String("string"),
    					AverageUtilization: pulumi.Int(0),
    					AverageValue:       pulumi.String("string"),
    					Value:              pulumi.String("string"),
    				},
    			},
    			Pods: &autoscalingv2beta2.PodsMetricSourceArgs{
    				Metric: &autoscalingv2beta2.MetricIdentifierArgs{
    					Name: 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"),
    						},
    					},
    				},
    				Target: &autoscalingv2beta2.MetricTargetArgs{
    					Type:               pulumi.String("string"),
    					AverageUtilization: pulumi.Int(0),
    					AverageValue:       pulumi.String("string"),
    					Value:              pulumi.String("string"),
    				},
    			},
    			Resource: &autoscalingv2beta2.ResourceMetricSourceArgs{
    				Name: pulumi.String("string"),
    				Target: &autoscalingv2beta2.MetricTargetArgs{
    					Type:               pulumi.String("string"),
    					AverageUtilization: pulumi.Int(0),
    					AverageValue:       pulumi.String("string"),
    					Value:              pulumi.String("string"),
    				},
    			},
    		},
    		MinReplicas: pulumi.Int(0),
    	},
    	Image: &kubernetescoredns.CoreDNSImageArgs{
    		PullPolicy: pulumi.String("string"),
    		PullSecrets: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		Repository: pulumi.String("string"),
    		Tag:        pulumi.String("string"),
    	},
    	IsClusterService: pulumi.Bool(false),
    	LivenessProbe: &corev1.ProbeArgs{
    		Exec: &corev1.ExecActionArgs{
    			Command: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    		FailureThreshold: pulumi.Int(0),
    		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),
    	},
    	NodeSelector: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	PodAnnotations: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	PodDisruptionBudget: &policyv1.PodDisruptionBudgetSpecArgs{
    		MaxUnavailable: pulumi.Any(0),
    		MinAvailable:   pulumi.Any(0),
    		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"),
    			},
    		},
    	},
    	PreStopSleep:      pulumi.Int(0),
    	PriorityClassName: pulumi.String("string"),
    	Prometheus: &kubernetescoredns.CoreDNSPrometheusArgs{
    		Monitor: &kubernetescoredns.CoreDNSPrometheusMonitorArgs{
    			AdditionalLabels: pulumi.StringMap{
    				"string": pulumi.String("string"),
    			},
    			Enabled:   pulumi.Bool(false),
    			Namespace: pulumi.String("string"),
    		},
    		Service: &kubernetescoredns.CoreDNSPrometheusServiceArgs{
    			Annotations: pulumi.StringMap{
    				"string": pulumi.String("string"),
    			},
    			Enabled: pulumi.Bool(false),
    		},
    	},
    	Rbac: &kubernetescoredns.CoreDNSRBACArgs{
    		Create:    pulumi.Bool(false),
    		Name:      pulumi.String("string"),
    		PspEnable: pulumi.Bool(false),
    	},
    	ReadinessProbe: &corev1.ProbeArgs{
    		Exec: &corev1.ExecActionArgs{
    			Command: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    		FailureThreshold: pulumi.Int(0),
    		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{
    		Limits: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		Requests: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    	},
    	RollingUpdate: &appsv1.RollingUpdateDeploymentArgs{
    		MaxSurge:       pulumi.Any(0),
    		MaxUnavailable: pulumi.Any(0),
    	},
    	Servers: kubernetescoredns.CoreDNSServerArray{
    		&kubernetescoredns.CoreDNSServerArgs{
    			Plugins: kubernetescoredns.CoreDNSServerPluginArray{
    				&kubernetescoredns.CoreDNSServerPluginArgs{
    					ConfigBlock: pulumi.String("string"),
    					Name:        pulumi.String("string"),
    					Parameters:  pulumi.String("string"),
    				},
    			},
    			Port: pulumi.Int(0),
    			Zones: kubernetescoredns.CoreDNSServerZoneArray{
    				&kubernetescoredns.CoreDNSServerZoneArgs{
    					Scheme:  pulumi.String("string"),
    					Use_tcp: pulumi.Bool(false),
    					Zone:    pulumi.String("string"),
    				},
    			},
    		},
    	},
    	Service: &kubernetescoredns.CoreDNSServiceArgs{
    		Annotations: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		ClusterIP: pulumi.String("string"),
    		ExternalIPs: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		ExternalTrafficPolicy: pulumi.String("string"),
    		LoadBalancerIP:        pulumi.String("string"),
    		Name:                  pulumi.String("string"),
    	},
    	ServiceAccount: &kubernetescoredns.CoreDNSServiceAccountArgs{
    		Annotations: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		Create: pulumi.Bool(false),
    		Name:   pulumi.String("string"),
    	},
    	ServiceType:                   pulumi.String("string"),
    	TerminationGracePeriodSeconds: 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"),
    		},
    	},
    	ZoneFiles: kubernetescoredns.CoreDNSZoneFileArray{
    		&kubernetescoredns.CoreDNSZoneFileArgs{
    			Contents: pulumi.String("string"),
    			Domain:   pulumi.String("string"),
    			String:   pulumi.String("string"),
    		},
    	},
    })
    
    var coreDNSResource = new CoreDNS("coreDNSResource", CoreDNSArgs.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())
                        .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())
                    .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())
                        .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())
                    .namespaceSelector(LabelSelectorArgs.builder()
                        .matchExpressions(LabelSelectorRequirementArgs.builder()
                            .key("string")
                            .operator("string")
                            .values("string")
                            .build())
                        .matchLabels(Map.of("string", "string"))
                        .build())
                    .namespaces("string")
                    .build())
                .build())
            .build())
        .autoscaler(CoreDNSAutoscalerArgs.builder()
            .coresPerReplica(0)
            .enabled(false)
            .image(CoreDNSImageArgs.builder()
                .pullPolicy("string")
                .pullSecrets("string")
                .repository("string")
                .tag("string")
                .build())
            .includeUnschedulableNodes(false)
            .max(0)
            .min(0)
            .nodesPerReplica(0)
            .preventSinglePointFailure(false)
            .build())
        .autoscaling(HorizontalPodAutoscalerSpecArgs.builder()
            .maxReplicas(0)
            .scaleTargetRef(CrossVersionObjectReferenceArgs.builder()
                .kind("string")
                .name("string")
                .apiVersion("string")
                .build())
            .behavior(HorizontalPodAutoscalerBehaviorArgs.builder()
                .scaleDown(HPAScalingRulesArgs.builder()
                    .policies(HPAScalingPolicyArgs.builder()
                        .periodSeconds(0)
                        .type("string")
                        .value(0)
                        .build())
                    .selectPolicy("string")
                    .stabilizationWindowSeconds(0)
                    .build())
                .scaleUp(HPAScalingRulesArgs.builder()
                    .policies(HPAScalingPolicyArgs.builder()
                        .periodSeconds(0)
                        .type("string")
                        .value(0)
                        .build())
                    .selectPolicy("string")
                    .stabilizationWindowSeconds(0)
                    .build())
                .build())
            .metrics(MetricSpecArgs.builder()
                .type("string")
                .containerResource(ContainerResourceMetricSourceArgs.builder()
                    .container("string")
                    .name("string")
                    .target(MetricTargetArgs.builder()
                        .type("string")
                        .averageUtilization(0)
                        .averageValue("string")
                        .value("string")
                        .build())
                    .build())
                .external(ExternalMetricSourceArgs.builder()
                    .metric(MetricIdentifierArgs.builder()
                        .name("string")
                        .selector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .build())
                    .target(MetricTargetArgs.builder()
                        .type("string")
                        .averageUtilization(0)
                        .averageValue("string")
                        .value("string")
                        .build())
                    .build())
                .object(ObjectMetricSourceArgs.builder()
                    .describedObject(CrossVersionObjectReferenceArgs.builder()
                        .kind("string")
                        .name("string")
                        .apiVersion("string")
                        .build())
                    .metric(MetricIdentifierArgs.builder()
                        .name("string")
                        .selector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .build())
                    .target(MetricTargetArgs.builder()
                        .type("string")
                        .averageUtilization(0)
                        .averageValue("string")
                        .value("string")
                        .build())
                    .build())
                .pods(PodsMetricSourceArgs.builder()
                    .metric(MetricIdentifierArgs.builder()
                        .name("string")
                        .selector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .build())
                    .target(MetricTargetArgs.builder()
                        .type("string")
                        .averageUtilization(0)
                        .averageValue("string")
                        .value("string")
                        .build())
                    .build())
                .resource(ResourceMetricSourceArgs.builder()
                    .name("string")
                    .target(MetricTargetArgs.builder()
                        .type("string")
                        .averageUtilization(0)
                        .averageValue("string")
                        .value("string")
                        .build())
                    .build())
                .build())
            .minReplicas(0)
            .build())
        .deployment(CoreDNSDeploymentArgs.builder()
            .enabled(false)
            .name("string")
            .build())
        .extraSecrets(VolumeMountArgs.builder()
            .mountPath("string")
            .name("string")
            .mountPropagation("string")
            .readOnly(false)
            .subPath("string")
            .subPathExpr("string")
            .build())
        .extraVolumeMounts(VolumeMountArgs.builder()
            .mountPath("string")
            .name("string")
            .mountPropagation("string")
            .readOnly(false)
            .subPath("string")
            .subPathExpr("string")
            .build())
        .extraVolumes(VolumeArgs.builder()
            .name("string")
            .gitRepo(GitRepoVolumeSourceArgs.builder()
                .repository("string")
                .directory("string")
                .revision("string")
                .build())
            .configMap(ConfigMapVolumeSourceArgs.builder()
                .defaultMode(0)
                .items(KeyToPathArgs.builder()
                    .key("string")
                    .path("string")
                    .mode(0)
                    .build())
                .name("string")
                .optional(false)
                .build())
            .glusterfs(GlusterfsVolumeSourceArgs.builder()
                .endpoints("string")
                .path("string")
                .readOnly(false)
                .build())
            .cinder(CinderVolumeSourceArgs.builder()
                .volumeID("string")
                .fsType("string")
                .readOnly(false)
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .build())
            .hostPath(HostPathVolumeSourceArgs.builder()
                .path("string")
                .type("string")
                .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(TypedLocalObjectReferenceArgs.builder()
                            .kind("string")
                            .name("string")
                            .apiGroup("string")
                            .build())
                        .resources(ResourceRequirementsArgs.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")
                        .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())
            .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())
            .gcePersistentDisk(GCEPersistentDiskVolumeSourceArgs.builder()
                .pdName("string")
                .fsType("string")
                .partition(0)
                .readOnly(false)
                .build())
            .awsElasticBlockStore(AWSElasticBlockStoreVolumeSourceArgs.builder()
                .volumeID("string")
                .fsType("string")
                .partition(0)
                .readOnly(false)
                .build())
            .cephfs(CephFSVolumeSourceArgs.builder()
                .monitors("string")
                .path("string")
                .readOnly(false)
                .secretFile("string")
                .secretRef(LocalObjectReferenceArgs.builder()
                    .name("string")
                    .build())
                .user("string")
                .build())
            .azureFile(AzureFileVolumeSourceArgs.builder()
                .secretName("string")
                .shareName("string")
                .readOnly(false)
                .build())
            .flocker(FlockerVolumeSourceArgs.builder()
                .datasetName("string")
                .datasetUUID("string")
                .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())
            .persistentVolumeClaim(PersistentVolumeClaimVolumeSourceArgs.builder()
                .claimName("string")
                .readOnly(false)
                .build())
            .photonPersistentDisk(PhotonPersistentDiskVolumeSourceArgs.builder()
                .pdID("string")
                .fsType("string")
                .build())
            .portworxVolume(PortworxVolumeSourceArgs.builder()
                .volumeID("string")
                .fsType("string")
                .readOnly(false)
                .build())
            .projected(ProjectedVolumeSourceArgs.builder()
                .sources(VolumeProjectionArgs.builder()
                    .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())
        .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())
        .hpa(CoreDNSHPAArgs.builder()
            .enabled(false)
            .maxReplicas(0)
            .metrics(MetricSpecArgs.builder()
                .type("string")
                .containerResource(ContainerResourceMetricSourceArgs.builder()
                    .container("string")
                    .name("string")
                    .target(MetricTargetArgs.builder()
                        .type("string")
                        .averageUtilization(0)
                        .averageValue("string")
                        .value("string")
                        .build())
                    .build())
                .external(ExternalMetricSourceArgs.builder()
                    .metric(MetricIdentifierArgs.builder()
                        .name("string")
                        .selector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .build())
                    .target(MetricTargetArgs.builder()
                        .type("string")
                        .averageUtilization(0)
                        .averageValue("string")
                        .value("string")
                        .build())
                    .build())
                .object(ObjectMetricSourceArgs.builder()
                    .describedObject(CrossVersionObjectReferenceArgs.builder()
                        .kind("string")
                        .name("string")
                        .apiVersion("string")
                        .build())
                    .metric(MetricIdentifierArgs.builder()
                        .name("string")
                        .selector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .build())
                    .target(MetricTargetArgs.builder()
                        .type("string")
                        .averageUtilization(0)
                        .averageValue("string")
                        .value("string")
                        .build())
                    .build())
                .pods(PodsMetricSourceArgs.builder()
                    .metric(MetricIdentifierArgs.builder()
                        .name("string")
                        .selector(LabelSelectorArgs.builder()
                            .matchExpressions(LabelSelectorRequirementArgs.builder()
                                .key("string")
                                .operator("string")
                                .values("string")
                                .build())
                            .matchLabels(Map.of("string", "string"))
                            .build())
                        .build())
                    .target(MetricTargetArgs.builder()
                        .type("string")
                        .averageUtilization(0)
                        .averageValue("string")
                        .value("string")
                        .build())
                    .build())
                .resource(ResourceMetricSourceArgs.builder()
                    .name("string")
                    .target(MetricTargetArgs.builder()
                        .type("string")
                        .averageUtilization(0)
                        .averageValue("string")
                        .value("string")
                        .build())
                    .build())
                .build())
            .minReplicas(0)
            .build())
        .image(CoreDNSImageArgs.builder()
            .pullPolicy("string")
            .pullSecrets("string")
            .repository("string")
            .tag("string")
            .build())
        .isClusterService(false)
        .livenessProbe(ProbeArgs.builder()
            .exec(ExecActionArgs.builder()
                .command("string")
                .build())
            .failureThreshold(0)
            .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())
        .nodeSelector(Map.of("string", "string"))
        .podAnnotations(Map.of("string", "string"))
        .podDisruptionBudget(PodDisruptionBudgetSpecArgs.builder()
            .maxUnavailable(0)
            .minAvailable(0)
            .selector(LabelSelectorArgs.builder()
                .matchExpressions(LabelSelectorRequirementArgs.builder()
                    .key("string")
                    .operator("string")
                    .values("string")
                    .build())
                .matchLabels(Map.of("string", "string"))
                .build())
            .build())
        .preStopSleep(0)
        .priorityClassName("string")
        .prometheus(CoreDNSPrometheusArgs.builder()
            .monitor(CoreDNSPrometheusMonitorArgs.builder()
                .additionalLabels(Map.of("string", "string"))
                .enabled(false)
                .namespace("string")
                .build())
            .service(CoreDNSPrometheusServiceArgs.builder()
                .annotations(Map.of("string", "string"))
                .enabled(false)
                .build())
            .build())
        .rbac(CoreDNSRBACArgs.builder()
            .create(false)
            .name("string")
            .pspEnable(false)
            .build())
        .readinessProbe(ProbeArgs.builder()
            .exec(ExecActionArgs.builder()
                .command("string")
                .build())
            .failureThreshold(0)
            .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()
            .limits(Map.of("string", "string"))
            .requests(Map.of("string", "string"))
            .build())
        .rollingUpdate(RollingUpdateDeploymentArgs.builder()
            .maxSurge(0)
            .maxUnavailable(0)
            .build())
        .servers(CoreDNSServerArgs.builder()
            .plugins(CoreDNSServerPluginArgs.builder()
                .configBlock("string")
                .name("string")
                .parameters("string")
                .build())
            .port(0)
            .zones(CoreDNSServerZoneArgs.builder()
                .scheme("string")
                .use_tcp(false)
                .zone("string")
                .build())
            .build())
        .service(CoreDNSServiceArgs.builder()
            .annotations(Map.of("string", "string"))
            .clusterIP("string")
            .externalIPs("string")
            .externalTrafficPolicy("string")
            .loadBalancerIP("string")
            .name("string")
            .build())
        .serviceAccount(CoreDNSServiceAccountArgs.builder()
            .annotations(Map.of("string", "string"))
            .create(false)
            .name("string")
            .build())
        .serviceType("string")
        .terminationGracePeriodSeconds(0)
        .tolerations(TolerationArgs.builder()
            .effect("string")
            .key("string")
            .operator("string")
            .tolerationSeconds(0)
            .value("string")
            .build())
        .zoneFiles(CoreDNSZoneFileArgs.builder()
            .contents("string")
            .domain("string")
            .string("string")
            .build())
        .build());
    
    core_dns_resource = kubernetes_coredns.CoreDNS("coreDNSResource",
        affinity=kubernetes.core.v1.AffinityArgs(
            node_affinity=kubernetes.core.v1.NodeAffinityArgs(
                preferred_during_scheduling_ignored_during_execution=[kubernetes.core.v1.PreferredSchedulingTermArgs(
                    preference=kubernetes.core.v1.NodeSelectorTermArgs(
                        match_expressions=[kubernetes.core.v1.NodeSelectorRequirementArgs(
                            key="string",
                            operator="string",
                            values=["string"],
                        )],
                        match_fields=[kubernetes.core.v1.NodeSelectorRequirementArgs(
                            key="string",
                            operator="string",
                            values=["string"],
                        )],
                    ),
                    weight=0,
                )],
                required_during_scheduling_ignored_during_execution=kubernetes.core.v1.NodeSelectorArgs(
                    node_selector_terms=[kubernetes.core.v1.NodeSelectorTermArgs(
                        match_expressions=[kubernetes.core.v1.NodeSelectorRequirementArgs(
                            key="string",
                            operator="string",
                            values=["string"],
                        )],
                        match_fields=[kubernetes.core.v1.NodeSelectorRequirementArgs(
                            key="string",
                            operator="string",
                            values=["string"],
                        )],
                    )],
                ),
            ),
            pod_affinity=kubernetes.core.v1.PodAffinityArgs(
                preferred_during_scheduling_ignored_during_execution=[kubernetes.core.v1.WeightedPodAffinityTermArgs(
                    pod_affinity_term=kubernetes.core.v1.PodAffinityTermArgs(
                        topology_key="string",
                        label_selector=kubernetes.meta.v1.LabelSelectorArgs(
                            match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                                key="string",
                                operator="string",
                                values=["string"],
                            )],
                            match_labels={
                                "string": "string",
                            },
                        ),
                        namespace_selector=kubernetes.meta.v1.LabelSelectorArgs(
                            match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                                key="string",
                                operator="string",
                                values=["string"],
                            )],
                            match_labels={
                                "string": "string",
                            },
                        ),
                        namespaces=["string"],
                    ),
                    weight=0,
                )],
                required_during_scheduling_ignored_during_execution=[kubernetes.core.v1.PodAffinityTermArgs(
                    topology_key="string",
                    label_selector=kubernetes.meta.v1.LabelSelectorArgs(
                        match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                            key="string",
                            operator="string",
                            values=["string"],
                        )],
                        match_labels={
                            "string": "string",
                        },
                    ),
                    namespace_selector=kubernetes.meta.v1.LabelSelectorArgs(
                        match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                            key="string",
                            operator="string",
                            values=["string"],
                        )],
                        match_labels={
                            "string": "string",
                        },
                    ),
                    namespaces=["string"],
                )],
            ),
            pod_anti_affinity=kubernetes.core.v1.PodAntiAffinityArgs(
                preferred_during_scheduling_ignored_during_execution=[kubernetes.core.v1.WeightedPodAffinityTermArgs(
                    pod_affinity_term=kubernetes.core.v1.PodAffinityTermArgs(
                        topology_key="string",
                        label_selector=kubernetes.meta.v1.LabelSelectorArgs(
                            match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                                key="string",
                                operator="string",
                                values=["string"],
                            )],
                            match_labels={
                                "string": "string",
                            },
                        ),
                        namespace_selector=kubernetes.meta.v1.LabelSelectorArgs(
                            match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                                key="string",
                                operator="string",
                                values=["string"],
                            )],
                            match_labels={
                                "string": "string",
                            },
                        ),
                        namespaces=["string"],
                    ),
                    weight=0,
                )],
                required_during_scheduling_ignored_during_execution=[kubernetes.core.v1.PodAffinityTermArgs(
                    topology_key="string",
                    label_selector=kubernetes.meta.v1.LabelSelectorArgs(
                        match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                            key="string",
                            operator="string",
                            values=["string"],
                        )],
                        match_labels={
                            "string": "string",
                        },
                    ),
                    namespace_selector=kubernetes.meta.v1.LabelSelectorArgs(
                        match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                            key="string",
                            operator="string",
                            values=["string"],
                        )],
                        match_labels={
                            "string": "string",
                        },
                    ),
                    namespaces=["string"],
                )],
            ),
        ),
        autoscaler=kubernetes_coredns.CoreDNSAutoscalerArgs(
            cores_per_replica=0,
            enabled=False,
            image=kubernetes_coredns.CoreDNSImageArgs(
                pull_policy="string",
                pull_secrets=["string"],
                repository="string",
                tag="string",
            ),
            include_unschedulable_nodes=False,
            max=0,
            min=0,
            nodes_per_replica=0,
            prevent_single_point_failure=False,
        ),
        autoscaling=kubernetes.autoscaling.v2beta2.HorizontalPodAutoscalerSpecArgs(
            max_replicas=0,
            scale_target_ref=kubernetes.autoscaling.v2beta2.CrossVersionObjectReferenceArgs(
                kind="string",
                name="string",
                api_version="string",
            ),
            behavior=kubernetes.autoscaling.v2beta2.HorizontalPodAutoscalerBehaviorArgs(
                scale_down=kubernetes.autoscaling.v2beta2.HPAScalingRulesArgs(
                    policies=[kubernetes.autoscaling.v2beta2.HPAScalingPolicyArgs(
                        period_seconds=0,
                        type="string",
                        value=0,
                    )],
                    select_policy="string",
                    stabilization_window_seconds=0,
                ),
                scale_up=kubernetes.autoscaling.v2beta2.HPAScalingRulesArgs(
                    policies=[kubernetes.autoscaling.v2beta2.HPAScalingPolicyArgs(
                        period_seconds=0,
                        type="string",
                        value=0,
                    )],
                    select_policy="string",
                    stabilization_window_seconds=0,
                ),
            ),
            metrics=[kubernetes.autoscaling.v2beta2.MetricSpecArgs(
                type="string",
                container_resource=kubernetes.autoscaling.v2beta2.ContainerResourceMetricSourceArgs(
                    container="string",
                    name="string",
                    target=kubernetes.autoscaling.v2beta2.MetricTargetArgs(
                        type="string",
                        average_utilization=0,
                        average_value="string",
                        value="string",
                    ),
                ),
                external=kubernetes.autoscaling.v2beta2.ExternalMetricSourceArgs(
                    metric=kubernetes.autoscaling.v2beta2.MetricIdentifierArgs(
                        name="string",
                        selector=kubernetes.meta.v1.LabelSelectorArgs(
                            match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                                key="string",
                                operator="string",
                                values=["string"],
                            )],
                            match_labels={
                                "string": "string",
                            },
                        ),
                    ),
                    target=kubernetes.autoscaling.v2beta2.MetricTargetArgs(
                        type="string",
                        average_utilization=0,
                        average_value="string",
                        value="string",
                    ),
                ),
                object=kubernetes.autoscaling.v2beta2.ObjectMetricSourceArgs(
                    described_object=kubernetes.autoscaling.v2beta2.CrossVersionObjectReferenceArgs(
                        kind="string",
                        name="string",
                        api_version="string",
                    ),
                    metric=kubernetes.autoscaling.v2beta2.MetricIdentifierArgs(
                        name="string",
                        selector=kubernetes.meta.v1.LabelSelectorArgs(
                            match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                                key="string",
                                operator="string",
                                values=["string"],
                            )],
                            match_labels={
                                "string": "string",
                            },
                        ),
                    ),
                    target=kubernetes.autoscaling.v2beta2.MetricTargetArgs(
                        type="string",
                        average_utilization=0,
                        average_value="string",
                        value="string",
                    ),
                ),
                pods=kubernetes.autoscaling.v2beta2.PodsMetricSourceArgs(
                    metric=kubernetes.autoscaling.v2beta2.MetricIdentifierArgs(
                        name="string",
                        selector=kubernetes.meta.v1.LabelSelectorArgs(
                            match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                                key="string",
                                operator="string",
                                values=["string"],
                            )],
                            match_labels={
                                "string": "string",
                            },
                        ),
                    ),
                    target=kubernetes.autoscaling.v2beta2.MetricTargetArgs(
                        type="string",
                        average_utilization=0,
                        average_value="string",
                        value="string",
                    ),
                ),
                resource=kubernetes.autoscaling.v2beta2.ResourceMetricSourceArgs(
                    name="string",
                    target=kubernetes.autoscaling.v2beta2.MetricTargetArgs(
                        type="string",
                        average_utilization=0,
                        average_value="string",
                        value="string",
                    ),
                ),
            )],
            min_replicas=0,
        ),
        deployment=kubernetes_coredns.CoreDNSDeploymentArgs(
            enabled=False,
            name="string",
        ),
        extra_secrets=[kubernetes.core.v1.VolumeMountArgs(
            mount_path="string",
            name="string",
            mount_propagation="string",
            read_only=False,
            sub_path="string",
            sub_path_expr="string",
        )],
        extra_volume_mounts=[kubernetes.core.v1.VolumeMountArgs(
            mount_path="string",
            name="string",
            mount_propagation="string",
            read_only=False,
            sub_path="string",
            sub_path_expr="string",
        )],
        extra_volumes=[kubernetes.core.v1.VolumeArgs(
            name="string",
            git_repo=kubernetes.core.v1.GitRepoVolumeSourceArgs(
                repository="string",
                directory="string",
                revision="string",
            ),
            config_map=kubernetes.core.v1.ConfigMapVolumeSourceArgs(
                default_mode=0,
                items=[kubernetes.core.v1.KeyToPathArgs(
                    key="string",
                    path="string",
                    mode=0,
                )],
                name="string",
                optional=False,
            ),
            glusterfs=kubernetes.core.v1.GlusterfsVolumeSourceArgs(
                endpoints="string",
                path="string",
                read_only=False,
            ),
            cinder=kubernetes.core.v1.CinderVolumeSourceArgs(
                volume_id="string",
                fs_type="string",
                read_only=False,
                secret_ref=kubernetes.core.v1.LocalObjectReferenceArgs(
                    name="string",
                ),
            ),
            host_path=kubernetes.core.v1.HostPathVolumeSourceArgs(
                path="string",
                type="string",
            ),
            csi=kubernetes.core.v1.CSIVolumeSourceArgs(
                driver="string",
                fs_type="string",
                node_publish_secret_ref=kubernetes.core.v1.LocalObjectReferenceArgs(
                    name="string",
                ),
                read_only=False,
                volume_attributes={
                    "string": "string",
                },
            ),
            downward_api=kubernetes.core.v1.DownwardAPIVolumeSourceArgs(
                default_mode=0,
                items=[kubernetes.core.v1.DownwardAPIVolumeFileArgs(
                    path="string",
                    field_ref=kubernetes.core.v1.ObjectFieldSelectorArgs(
                        field_path="string",
                        api_version="string",
                    ),
                    mode=0,
                    resource_field_ref=kubernetes.core.v1.ResourceFieldSelectorArgs(
                        resource="string",
                        container_name="string",
                        divisor="string",
                    ),
                )],
            ),
            empty_dir=kubernetes.core.v1.EmptyDirVolumeSourceArgs(
                medium="string",
                size_limit="string",
            ),
            ephemeral=kubernetes.core.v1.EphemeralVolumeSourceArgs(
                read_only=False,
                volume_claim_template=kubernetes.core.v1.PersistentVolumeClaimTemplateArgs(
                    spec=kubernetes.core.v1.PersistentVolumeClaimSpecArgs(
                        access_modes=["string"],
                        data_source=kubernetes.core.v1.TypedLocalObjectReferenceArgs(
                            kind="string",
                            name="string",
                            api_group="string",
                        ),
                        data_source_ref=kubernetes.core.v1.TypedLocalObjectReferenceArgs(
                            kind="string",
                            name="string",
                            api_group="string",
                        ),
                        resources=kubernetes.core.v1.ResourceRequirementsArgs(
                            limits={
                                "string": "string",
                            },
                            requests={
                                "string": "string",
                            },
                        ),
                        selector=kubernetes.meta.v1.LabelSelectorArgs(
                            match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                                key="string",
                                operator="string",
                                values=["string"],
                            )],
                            match_labels={
                                "string": "string",
                            },
                        ),
                        storage_class_name="string",
                        volume_mode="string",
                        volume_name="string",
                    ),
                    metadata=kubernetes.meta.v1.ObjectMetaArgs(
                        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=[kubernetes.meta.v1.ManagedFieldsEntryArgs(
                            api_version="string",
                            fields_type="string",
                            fields_v1="{}",
                            manager="string",
                            operation="string",
                            subresource="string",
                            time="string",
                        )],
                        name="string",
                        namespace="string",
                        owner_references=[kubernetes.meta.v1.OwnerReferenceArgs(
                            api_version="string",
                            kind="string",
                            name="string",
                            uid="string",
                            block_owner_deletion=False,
                            controller=False,
                        )],
                        resource_version="string",
                        self_link="string",
                        uid="string",
                    ),
                ),
            ),
            fc=kubernetes.core.v1.FCVolumeSourceArgs(
                fs_type="string",
                lun=0,
                read_only=False,
                target_wwns=["string"],
                wwids=["string"],
            ),
            flex_volume=kubernetes.core.v1.FlexVolumeSourceArgs(
                driver="string",
                fs_type="string",
                options={
                    "string": "string",
                },
                read_only=False,
                secret_ref=kubernetes.core.v1.LocalObjectReferenceArgs(
                    name="string",
                ),
            ),
            iscsi=kubernetes.core.v1.ISCSIVolumeSourceArgs(
                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=kubernetes.core.v1.LocalObjectReferenceArgs(
                    name="string",
                ),
            ),
            gce_persistent_disk=kubernetes.core.v1.GCEPersistentDiskVolumeSourceArgs(
                pd_name="string",
                fs_type="string",
                partition=0,
                read_only=False,
            ),
            aws_elastic_block_store=kubernetes.core.v1.AWSElasticBlockStoreVolumeSourceArgs(
                volume_id="string",
                fs_type="string",
                partition=0,
                read_only=False,
            ),
            cephfs=kubernetes.core.v1.CephFSVolumeSourceArgs(
                monitors=["string"],
                path="string",
                read_only=False,
                secret_file="string",
                secret_ref=kubernetes.core.v1.LocalObjectReferenceArgs(
                    name="string",
                ),
                user="string",
            ),
            azure_file=kubernetes.core.v1.AzureFileVolumeSourceArgs(
                secret_name="string",
                share_name="string",
                read_only=False,
            ),
            flocker=kubernetes.core.v1.FlockerVolumeSourceArgs(
                dataset_name="string",
                dataset_uuid="string",
            ),
            azure_disk=kubernetes.core.v1.AzureDiskVolumeSourceArgs(
                disk_name="string",
                disk_uri="string",
                caching_mode="string",
                fs_type="string",
                kind="string",
                read_only=False,
            ),
            nfs=kubernetes.core.v1.NFSVolumeSourceArgs(
                path="string",
                server="string",
                read_only=False,
            ),
            persistent_volume_claim=kubernetes.core.v1.PersistentVolumeClaimVolumeSourceArgs(
                claim_name="string",
                read_only=False,
            ),
            photon_persistent_disk=kubernetes.core.v1.PhotonPersistentDiskVolumeSourceArgs(
                pd_id="string",
                fs_type="string",
            ),
            portworx_volume=kubernetes.core.v1.PortworxVolumeSourceArgs(
                volume_id="string",
                fs_type="string",
                read_only=False,
            ),
            projected=kubernetes.core.v1.ProjectedVolumeSourceArgs(
                sources=[kubernetes.core.v1.VolumeProjectionArgs(
                    config_map=kubernetes.core.v1.ConfigMapProjectionArgs(
                        items=[kubernetes.core.v1.KeyToPathArgs(
                            key="string",
                            path="string",
                            mode=0,
                        )],
                        name="string",
                        optional=False,
                    ),
                    downward_api=kubernetes.core.v1.DownwardAPIProjectionArgs(
                        items=[kubernetes.core.v1.DownwardAPIVolumeFileArgs(
                            path="string",
                            field_ref=kubernetes.core.v1.ObjectFieldSelectorArgs(
                                field_path="string",
                                api_version="string",
                            ),
                            mode=0,
                            resource_field_ref=kubernetes.core.v1.ResourceFieldSelectorArgs(
                                resource="string",
                                container_name="string",
                                divisor="string",
                            ),
                        )],
                    ),
                    secret=kubernetes.core.v1.SecretProjectionArgs(
                        items=[kubernetes.core.v1.KeyToPathArgs(
                            key="string",
                            path="string",
                            mode=0,
                        )],
                        name="string",
                        optional=False,
                    ),
                    service_account_token=kubernetes.core.v1.ServiceAccountTokenProjectionArgs(
                        path="string",
                        audience="string",
                        expiration_seconds=0,
                    ),
                )],
                default_mode=0,
            ),
            quobyte=kubernetes.core.v1.QuobyteVolumeSourceArgs(
                registry="string",
                volume="string",
                group="string",
                read_only=False,
                tenant="string",
                user="string",
            ),
            rbd=kubernetes.core.v1.RBDVolumeSourceArgs(
                image="string",
                monitors=["string"],
                fs_type="string",
                keyring="string",
                pool="string",
                read_only=False,
                secret_ref=kubernetes.core.v1.LocalObjectReferenceArgs(
                    name="string",
                ),
                user="string",
            ),
            scale_io=kubernetes.core.v1.ScaleIOVolumeSourceArgs(
                gateway="string",
                secret_ref=kubernetes.core.v1.LocalObjectReferenceArgs(
                    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=kubernetes.core.v1.SecretVolumeSourceArgs(
                default_mode=0,
                items=[kubernetes.core.v1.KeyToPathArgs(
                    key="string",
                    path="string",
                    mode=0,
                )],
                optional=False,
                secret_name="string",
            ),
            storageos=kubernetes.core.v1.StorageOSVolumeSourceArgs(
                fs_type="string",
                read_only=False,
                secret_ref=kubernetes.core.v1.LocalObjectReferenceArgs(
                    name="string",
                ),
                volume_name="string",
                volume_namespace="string",
            ),
            vsphere_volume=kubernetes.core.v1.VsphereVirtualDiskVolumeSourceArgs(
                volume_path="string",
                fs_type="string",
                storage_policy_id="string",
                storage_policy_name="string",
            ),
        )],
        helm_options=kubernetes_coredns.ReleaseArgs(
            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=kubernetes_coredns.RepositoryOptsArgs(
                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,
        ),
        hpa=kubernetes_coredns.CoreDNSHPAArgs(
            enabled=False,
            max_replicas=0,
            metrics=kubernetes.autoscaling.v2beta2.MetricSpecArgs(
                type="string",
                container_resource=kubernetes.autoscaling.v2beta2.ContainerResourceMetricSourceArgs(
                    container="string",
                    name="string",
                    target=kubernetes.autoscaling.v2beta2.MetricTargetArgs(
                        type="string",
                        average_utilization=0,
                        average_value="string",
                        value="string",
                    ),
                ),
                external=kubernetes.autoscaling.v2beta2.ExternalMetricSourceArgs(
                    metric=kubernetes.autoscaling.v2beta2.MetricIdentifierArgs(
                        name="string",
                        selector=kubernetes.meta.v1.LabelSelectorArgs(
                            match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                                key="string",
                                operator="string",
                                values=["string"],
                            )],
                            match_labels={
                                "string": "string",
                            },
                        ),
                    ),
                    target=kubernetes.autoscaling.v2beta2.MetricTargetArgs(
                        type="string",
                        average_utilization=0,
                        average_value="string",
                        value="string",
                    ),
                ),
                object=kubernetes.autoscaling.v2beta2.ObjectMetricSourceArgs(
                    described_object=kubernetes.autoscaling.v2beta2.CrossVersionObjectReferenceArgs(
                        kind="string",
                        name="string",
                        api_version="string",
                    ),
                    metric=kubernetes.autoscaling.v2beta2.MetricIdentifierArgs(
                        name="string",
                        selector=kubernetes.meta.v1.LabelSelectorArgs(
                            match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                                key="string",
                                operator="string",
                                values=["string"],
                            )],
                            match_labels={
                                "string": "string",
                            },
                        ),
                    ),
                    target=kubernetes.autoscaling.v2beta2.MetricTargetArgs(
                        type="string",
                        average_utilization=0,
                        average_value="string",
                        value="string",
                    ),
                ),
                pods=kubernetes.autoscaling.v2beta2.PodsMetricSourceArgs(
                    metric=kubernetes.autoscaling.v2beta2.MetricIdentifierArgs(
                        name="string",
                        selector=kubernetes.meta.v1.LabelSelectorArgs(
                            match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                                key="string",
                                operator="string",
                                values=["string"],
                            )],
                            match_labels={
                                "string": "string",
                            },
                        ),
                    ),
                    target=kubernetes.autoscaling.v2beta2.MetricTargetArgs(
                        type="string",
                        average_utilization=0,
                        average_value="string",
                        value="string",
                    ),
                ),
                resource=kubernetes.autoscaling.v2beta2.ResourceMetricSourceArgs(
                    name="string",
                    target=kubernetes.autoscaling.v2beta2.MetricTargetArgs(
                        type="string",
                        average_utilization=0,
                        average_value="string",
                        value="string",
                    ),
                ),
            ),
            min_replicas=0,
        ),
        image=kubernetes_coredns.CoreDNSImageArgs(
            pull_policy="string",
            pull_secrets=["string"],
            repository="string",
            tag="string",
        ),
        is_cluster_service=False,
        liveness_probe=kubernetes.core.v1.ProbeArgs(
            exec_=kubernetes.core.v1.ExecActionArgs(
                command=["string"],
            ),
            failure_threshold=0,
            http_get=kubernetes.core.v1.HTTPGetActionArgs(
                port=0,
                host="string",
                http_headers=[kubernetes.core.v1.HTTPHeaderArgs(
                    name="string",
                    value="string",
                )],
                path="string",
                scheme="string",
            ),
            initial_delay_seconds=0,
            period_seconds=0,
            success_threshold=0,
            tcp_socket=kubernetes.core.v1.TCPSocketActionArgs(
                port=0,
                host="string",
            ),
            termination_grace_period_seconds=0,
            timeout_seconds=0,
        ),
        node_selector={
            "string": "string",
        },
        pod_annotations={
            "string": "string",
        },
        pod_disruption_budget=kubernetes.policy.v1.PodDisruptionBudgetSpecArgs(
            max_unavailable=0,
            min_available=0,
            selector=kubernetes.meta.v1.LabelSelectorArgs(
                match_expressions=[kubernetes.meta.v1.LabelSelectorRequirementArgs(
                    key="string",
                    operator="string",
                    values=["string"],
                )],
                match_labels={
                    "string": "string",
                },
            ),
        ),
        pre_stop_sleep=0,
        priority_class_name="string",
        prometheus=kubernetes_coredns.CoreDNSPrometheusArgs(
            monitor=kubernetes_coredns.CoreDNSPrometheusMonitorArgs(
                additional_labels={
                    "string": "string",
                },
                enabled=False,
                namespace="string",
            ),
            service=kubernetes_coredns.CoreDNSPrometheusServiceArgs(
                annotations={
                    "string": "string",
                },
                enabled=False,
            ),
        ),
        rbac=kubernetes_coredns.CoreDNSRBACArgs(
            create=False,
            name="string",
            psp_enable=False,
        ),
        readiness_probe=kubernetes.core.v1.ProbeArgs(
            exec_=kubernetes.core.v1.ExecActionArgs(
                command=["string"],
            ),
            failure_threshold=0,
            http_get=kubernetes.core.v1.HTTPGetActionArgs(
                port=0,
                host="string",
                http_headers=[kubernetes.core.v1.HTTPHeaderArgs(
                    name="string",
                    value="string",
                )],
                path="string",
                scheme="string",
            ),
            initial_delay_seconds=0,
            period_seconds=0,
            success_threshold=0,
            tcp_socket=kubernetes.core.v1.TCPSocketActionArgs(
                port=0,
                host="string",
            ),
            termination_grace_period_seconds=0,
            timeout_seconds=0,
        ),
        replica_count=0,
        resources=kubernetes.core.v1.ResourceRequirementsArgs(
            limits={
                "string": "string",
            },
            requests={
                "string": "string",
            },
        ),
        rolling_update=kubernetes.apps.v1.RollingUpdateDeploymentArgs(
            max_surge=0,
            max_unavailable=0,
        ),
        servers=[kubernetes_coredns.CoreDNSServerArgs(
            plugins=[kubernetes_coredns.CoreDNSServerPluginArgs(
                config_block="string",
                name="string",
                parameters="string",
            )],
            port=0,
            zones=[kubernetes_coredns.CoreDNSServerZoneArgs(
                scheme="string",
                use_tcp=False,
                zone="string",
            )],
        )],
        service=kubernetes_coredns.CoreDNSServiceArgs(
            annotations={
                "string": "string",
            },
            cluster_ip="string",
            external_ips=["string"],
            external_traffic_policy="string",
            load_balancer_ip="string",
            name="string",
        ),
        service_account=kubernetes_coredns.CoreDNSServiceAccountArgs(
            annotations={
                "string": "string",
            },
            create=False,
            name="string",
        ),
        service_type="string",
        termination_grace_period_seconds=0,
        tolerations=[kubernetes.core.v1.TolerationArgs(
            effect="string",
            key="string",
            operator="string",
            toleration_seconds=0,
            value="string",
        )],
        zone_files=[kubernetes_coredns.CoreDNSZoneFileArgs(
            contents="string",
            domain="string",
            string="string",
        )])
    
    const coreDNSResource = new kubernetes_coredns.CoreDNS("coreDNSResource", {
        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",
                            },
                        },
                        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",
                        },
                    },
                    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",
                            },
                        },
                        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",
                        },
                    },
                    namespaceSelector: {
                        matchExpressions: [{
                            key: "string",
                            operator: "string",
                            values: ["string"],
                        }],
                        matchLabels: {
                            string: "string",
                        },
                    },
                    namespaces: ["string"],
                }],
            },
        },
        autoscaler: {
            coresPerReplica: 0,
            enabled: false,
            image: {
                pullPolicy: "string",
                pullSecrets: ["string"],
                repository: "string",
                tag: "string",
            },
            includeUnschedulableNodes: false,
            max: 0,
            min: 0,
            nodesPerReplica: 0,
            preventSinglePointFailure: false,
        },
        autoscaling: {
            maxReplicas: 0,
            scaleTargetRef: {
                kind: "string",
                name: "string",
                apiVersion: "string",
            },
            behavior: {
                scaleDown: {
                    policies: [{
                        periodSeconds: 0,
                        type: "string",
                        value: 0,
                    }],
                    selectPolicy: "string",
                    stabilizationWindowSeconds: 0,
                },
                scaleUp: {
                    policies: [{
                        periodSeconds: 0,
                        type: "string",
                        value: 0,
                    }],
                    selectPolicy: "string",
                    stabilizationWindowSeconds: 0,
                },
            },
            metrics: [{
                type: "string",
                containerResource: {
                    container: "string",
                    name: "string",
                    target: {
                        type: "string",
                        averageUtilization: 0,
                        averageValue: "string",
                        value: "string",
                    },
                },
                external: {
                    metric: {
                        name: "string",
                        selector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                    },
                    target: {
                        type: "string",
                        averageUtilization: 0,
                        averageValue: "string",
                        value: "string",
                    },
                },
                object: {
                    describedObject: {
                        kind: "string",
                        name: "string",
                        apiVersion: "string",
                    },
                    metric: {
                        name: "string",
                        selector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                    },
                    target: {
                        type: "string",
                        averageUtilization: 0,
                        averageValue: "string",
                        value: "string",
                    },
                },
                pods: {
                    metric: {
                        name: "string",
                        selector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                    },
                    target: {
                        type: "string",
                        averageUtilization: 0,
                        averageValue: "string",
                        value: "string",
                    },
                },
                resource: {
                    name: "string",
                    target: {
                        type: "string",
                        averageUtilization: 0,
                        averageValue: "string",
                        value: "string",
                    },
                },
            }],
            minReplicas: 0,
        },
        deployment: {
            enabled: false,
            name: "string",
        },
        extraSecrets: [{
            mountPath: "string",
            name: "string",
            mountPropagation: "string",
            readOnly: false,
            subPath: "string",
            subPathExpr: "string",
        }],
        extraVolumeMounts: [{
            mountPath: "string",
            name: "string",
            mountPropagation: "string",
            readOnly: false,
            subPath: "string",
            subPathExpr: "string",
        }],
        extraVolumes: [{
            name: "string",
            gitRepo: {
                repository: "string",
                directory: "string",
                revision: "string",
            },
            configMap: {
                defaultMode: 0,
                items: [{
                    key: "string",
                    path: "string",
                    mode: 0,
                }],
                name: "string",
                optional: false,
            },
            glusterfs: {
                endpoints: "string",
                path: "string",
                readOnly: false,
            },
            cinder: {
                volumeID: "string",
                fsType: "string",
                readOnly: false,
                secretRef: {
                    name: "string",
                },
            },
            hostPath: {
                path: "string",
                type: "string",
            },
            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",
                        },
                        resources: {
                            limits: {
                                string: "string",
                            },
                            requests: {
                                string: "string",
                            },
                        },
                        selector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                        storageClassName: "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",
                },
            },
            iscsi: {
                iqn: "string",
                lun: 0,
                targetPortal: "string",
                chapAuthDiscovery: false,
                chapAuthSession: false,
                fsType: "string",
                initiatorName: "string",
                iscsiInterface: "string",
                portals: ["string"],
                readOnly: false,
                secretRef: {
                    name: "string",
                },
            },
            gcePersistentDisk: {
                pdName: "string",
                fsType: "string",
                partition: 0,
                readOnly: false,
            },
            awsElasticBlockStore: {
                volumeID: "string",
                fsType: "string",
                partition: 0,
                readOnly: false,
            },
            cephfs: {
                monitors: ["string"],
                path: "string",
                readOnly: false,
                secretFile: "string",
                secretRef: {
                    name: "string",
                },
                user: "string",
            },
            azureFile: {
                secretName: "string",
                shareName: "string",
                readOnly: false,
            },
            flocker: {
                datasetName: "string",
                datasetUUID: "string",
            },
            azureDisk: {
                diskName: "string",
                diskURI: "string",
                cachingMode: "string",
                fsType: "string",
                kind: "string",
                readOnly: false,
            },
            nfs: {
                path: "string",
                server: "string",
                readOnly: false,
            },
            persistentVolumeClaim: {
                claimName: "string",
                readOnly: false,
            },
            photonPersistentDisk: {
                pdID: "string",
                fsType: "string",
            },
            portworxVolume: {
                volumeID: "string",
                fsType: "string",
                readOnly: false,
            },
            projected: {
                sources: [{
                    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",
            },
        }],
        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,
        },
        hpa: {
            enabled: false,
            maxReplicas: 0,
            metrics: {
                type: "string",
                containerResource: {
                    container: "string",
                    name: "string",
                    target: {
                        type: "string",
                        averageUtilization: 0,
                        averageValue: "string",
                        value: "string",
                    },
                },
                external: {
                    metric: {
                        name: "string",
                        selector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                    },
                    target: {
                        type: "string",
                        averageUtilization: 0,
                        averageValue: "string",
                        value: "string",
                    },
                },
                object: {
                    describedObject: {
                        kind: "string",
                        name: "string",
                        apiVersion: "string",
                    },
                    metric: {
                        name: "string",
                        selector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                    },
                    target: {
                        type: "string",
                        averageUtilization: 0,
                        averageValue: "string",
                        value: "string",
                    },
                },
                pods: {
                    metric: {
                        name: "string",
                        selector: {
                            matchExpressions: [{
                                key: "string",
                                operator: "string",
                                values: ["string"],
                            }],
                            matchLabels: {
                                string: "string",
                            },
                        },
                    },
                    target: {
                        type: "string",
                        averageUtilization: 0,
                        averageValue: "string",
                        value: "string",
                    },
                },
                resource: {
                    name: "string",
                    target: {
                        type: "string",
                        averageUtilization: 0,
                        averageValue: "string",
                        value: "string",
                    },
                },
            },
            minReplicas: 0,
        },
        image: {
            pullPolicy: "string",
            pullSecrets: ["string"],
            repository: "string",
            tag: "string",
        },
        isClusterService: false,
        livenessProbe: {
            exec: {
                command: ["string"],
            },
            failureThreshold: 0,
            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,
        },
        nodeSelector: {
            string: "string",
        },
        podAnnotations: {
            string: "string",
        },
        podDisruptionBudget: {
            maxUnavailable: 0,
            minAvailable: 0,
            selector: {
                matchExpressions: [{
                    key: "string",
                    operator: "string",
                    values: ["string"],
                }],
                matchLabels: {
                    string: "string",
                },
            },
        },
        preStopSleep: 0,
        priorityClassName: "string",
        prometheus: {
            monitor: {
                additionalLabels: {
                    string: "string",
                },
                enabled: false,
                namespace: "string",
            },
            service: {
                annotations: {
                    string: "string",
                },
                enabled: false,
            },
        },
        rbac: {
            create: false,
            name: "string",
            pspEnable: false,
        },
        readinessProbe: {
            exec: {
                command: ["string"],
            },
            failureThreshold: 0,
            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: {
            limits: {
                string: "string",
            },
            requests: {
                string: "string",
            },
        },
        rollingUpdate: {
            maxSurge: 0,
            maxUnavailable: 0,
        },
        servers: [{
            plugins: [{
                configBlock: "string",
                name: "string",
                parameters: "string",
            }],
            port: 0,
            zones: [{
                scheme: "string",
                use_tcp: false,
                zone: "string",
            }],
        }],
        service: {
            annotations: {
                string: "string",
            },
            clusterIP: "string",
            externalIPs: ["string"],
            externalTrafficPolicy: "string",
            loadBalancerIP: "string",
            name: "string",
        },
        serviceAccount: {
            annotations: {
                string: "string",
            },
            create: false,
            name: "string",
        },
        serviceType: "string",
        terminationGracePeriodSeconds: 0,
        tolerations: [{
            effect: "string",
            key: "string",
            operator: "string",
            tolerationSeconds: 0,
            value: "string",
        }],
        zoneFiles: [{
            contents: "string",
            domain: "string",
            string: "string",
        }],
    });
    
    type: kubernetes-coredns:CoreDNS
    properties:
        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
                        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
                      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
                        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
                      namespaceSelector:
                        matchExpressions:
                            - key: string
                              operator: string
                              values:
                                - string
                        matchLabels:
                            string: string
                      namespaces:
                        - string
                      topologyKey: string
        autoscaler:
            coresPerReplica: 0
            enabled: false
            image:
                pullPolicy: string
                pullSecrets:
                    - string
                repository: string
                tag: string
            includeUnschedulableNodes: false
            max: 0
            min: 0
            nodesPerReplica: 0
            preventSinglePointFailure: false
        autoscaling:
            behavior:
                scaleDown:
                    policies:
                        - periodSeconds: 0
                          type: string
                          value: 0
                    selectPolicy: string
                    stabilizationWindowSeconds: 0
                scaleUp:
                    policies:
                        - periodSeconds: 0
                          type: string
                          value: 0
                    selectPolicy: string
                    stabilizationWindowSeconds: 0
            maxReplicas: 0
            metrics:
                - containerResource:
                    container: string
                    name: string
                    target:
                        averageUtilization: 0
                        averageValue: string
                        type: string
                        value: string
                  external:
                    metric:
                        name: string
                        selector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                    target:
                        averageUtilization: 0
                        averageValue: string
                        type: string
                        value: string
                  object:
                    describedObject:
                        apiVersion: string
                        kind: string
                        name: string
                    metric:
                        name: string
                        selector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                    target:
                        averageUtilization: 0
                        averageValue: string
                        type: string
                        value: string
                  pods:
                    metric:
                        name: string
                        selector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                    target:
                        averageUtilization: 0
                        averageValue: string
                        type: string
                        value: string
                  resource:
                    name: string
                    target:
                        averageUtilization: 0
                        averageValue: string
                        type: string
                        value: string
                  type: string
            minReplicas: 0
            scaleTargetRef:
                apiVersion: string
                kind: string
                name: string
        deployment:
            enabled: false
            name: string
        extraSecrets:
            - mountPath: string
              mountPropagation: string
              name: string
              readOnly: false
              subPath: string
              subPathExpr: string
        extraVolumeMounts:
            - mountPath: string
              mountPropagation: string
              name: string
              readOnly: false
              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
                        resources:
                            limits:
                                string: string
                            requests:
                                string: string
                        selector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                        storageClassName: 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
              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:
                    - 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
        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
        hpa:
            enabled: false
            maxReplicas: 0
            metrics:
                containerResource:
                    container: string
                    name: string
                    target:
                        averageUtilization: 0
                        averageValue: string
                        type: string
                        value: string
                external:
                    metric:
                        name: string
                        selector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                    target:
                        averageUtilization: 0
                        averageValue: string
                        type: string
                        value: string
                object:
                    describedObject:
                        apiVersion: string
                        kind: string
                        name: string
                    metric:
                        name: string
                        selector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                    target:
                        averageUtilization: 0
                        averageValue: string
                        type: string
                        value: string
                pods:
                    metric:
                        name: string
                        selector:
                            matchExpressions:
                                - key: string
                                  operator: string
                                  values:
                                    - string
                            matchLabels:
                                string: string
                    target:
                        averageUtilization: 0
                        averageValue: string
                        type: string
                        value: string
                resource:
                    name: string
                    target:
                        averageUtilization: 0
                        averageValue: string
                        type: string
                        value: string
                type: string
            minReplicas: 0
        image:
            pullPolicy: string
            pullSecrets:
                - string
            repository: string
            tag: string
        isClusterService: false
        livenessProbe:
            exec:
                command:
                    - string
            failureThreshold: 0
            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
        nodeSelector:
            string: string
        podAnnotations:
            string: string
        podDisruptionBudget:
            maxUnavailable: 0
            minAvailable: 0
            selector:
                matchExpressions:
                    - key: string
                      operator: string
                      values:
                        - string
                matchLabels:
                    string: string
        preStopSleep: 0
        priorityClassName: string
        prometheus:
            monitor:
                additionalLabels:
                    string: string
                enabled: false
                namespace: string
            service:
                annotations:
                    string: string
                enabled: false
        rbac:
            create: false
            name: string
            pspEnable: false
        readinessProbe:
            exec:
                command:
                    - string
            failureThreshold: 0
            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:
            limits:
                string: string
            requests:
                string: string
        rollingUpdate:
            maxSurge: 0
            maxUnavailable: 0
        servers:
            - plugins:
                - configBlock: string
                  name: string
                  parameters: string
              port: 0
              zones:
                - scheme: string
                  use_tcp: false
                  zone: string
        service:
            annotations:
                string: string
            clusterIP: string
            externalIPs:
                - string
            externalTrafficPolicy: string
            loadBalancerIP: string
            name: string
        serviceAccount:
            annotations:
                string: string
            create: false
            name: string
        serviceType: string
        terminationGracePeriodSeconds: 0
        tolerations:
            - effect: string
              key: string
              operator: string
              tolerationSeconds: 0
              value: string
        zoneFiles:
            - contents: string
              domain: string
              string: string
    

    CoreDNS Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The CoreDNS resource accepts the following input properties:

    Affinity Pulumi.Kubernetes.Types.Inputs.Core.V1.Affinity
    Affinity settings for pod assignment . This type is defined in the Kubernetes package.
    Autoscaler Pulumi.KubernetesCoreDNS.Inputs.CoreDNSAutoscaler
    Configue a cluster-proportional-autoscaler for coredns. See https://github.com/kubernetes-incubator/cluster-proportional-autoscaler.
    Autoscaling Pulumi.Kubernetes.Types.Inputs.Autoscaling.V2Beta2.HorizontalPodAutoscalerSpec
    Create HorizontalPodAutoscaler object. This type is defined in the Kubernetes package.
    Deployment Pulumi.KubernetesCoreDNS.Inputs.CoreDNSDeployment
    Configure the CoreDNS Deployment.
    ExtraSecrets List<Pulumi.Kubernetes.Types.Inputs.Core.V1.VolumeMount>
    Optional array of secrets to mount inside coredns container. Possible usecase: need for secure connection with etcd backend. Optional array of mount points for extraVolumes.
    ExtraVolumeMounts List<Pulumi.Kubernetes.Types.Inputs.Core.V1.VolumeMount>
    Optional array of mount points for extraVolumes.
    ExtraVolumes List<Pulumi.Kubernetes.Types.Inputs.Core.V1.Volume>
    Optional array of extra volumes to create.
    HelmOptions Pulumi.KubernetesCoreDNS.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.
    Hpa Pulumi.KubernetesCoreDNS.Inputs.CoreDNSHPA
    Alternative configuration for HPA deployment if wanted.
    Image Pulumi.KubernetesCoreDNS.Inputs.CoreDNSImage
    The image to pull.
    IsClusterService bool
    Specifies whether chart should be deployed as cluster-service or normal k8s app.
    LivenessProbe Pulumi.Kubernetes.Types.Inputs.Core.V1.Probe
    Configure the liveness probe. To use the livenessProbe, the health plugin needs to be enabled in CoreDNS' server config. This type is defined in the Kubernetes package.
    NodeSelector Dictionary<string, string>
    Node labels for pod assignment.
    PodAnnotations Dictionary<string, string>
    Optional Pod only Annotations.
    PodDisruptionBudget Pulumi.Kubernetes.Types.Inputs.Policy.V1.PodDisruptionBudgetSpec
    Optional PodDisruptionBudget. This type is defined in the Kubernetes package.
    PreStopSleep int
    Under heavy load it takes more that standard time to remove Pod endpoint from a cluster. This will delay termination of our pod by preStopSleep. To make sure kube-proxy has enough time to catch up.
    PriorityClassName string
    Optional priority class to be used for the coredns pods. Used for autoscaler if autoscaler.priorityClassName not set.
    Prometheus Pulumi.KubernetesCoreDNS.Inputs.CoreDNSPrometheus
    Configure Prometheus installation.
    Rbac Pulumi.KubernetesCoreDNS.Inputs.CoreDNSRBAC
    Configure CoreDNS RBAC resources.
    ReadinessProbe Pulumi.Kubernetes.Types.Inputs.Core.V1.Probe
    Configure the readiness probe. To use the readinessProbe, the health plugin needs to be enabled in CoreDNS' server config. This type is defined in the Kubernetes package.
    ReplicaCount int
    Number of replicas.
    Resources Pulumi.Kubernetes.Types.Inputs.Core.V1.ResourceRequirements
    Container resource limits. This type is defined in the Kubernetes package.
    RollingUpdate Pulumi.Kubernetes.Types.Inputs.Apps.V1.RollingUpdateDeployment
    This type is defined in the Kubernetes package.
    Servers List<Pulumi.KubernetesCoreDNS.Inputs.CoreDNSServer>
    Configuration for CoreDNS and plugins. Default zone is what Kubernetes recommends: https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/#coredns-configmap-options
    Service Pulumi.KubernetesCoreDNS.Inputs.CoreDNSService
    Configure CoreDNS Service parameters.
    ServiceAccount Pulumi.KubernetesCoreDNS.Inputs.CoreDNSServiceAccount
    Configure CoreDNS Service Account.
    ServiceType string
    Kubernetes Service type.
    TerminationGracePeriodSeconds int
    Optional duration in seconds the pod needs to terminate gracefully.
    Tolerations List<Pulumi.Kubernetes.Types.Inputs.Core.V1.Toleration>
    Tolerations for pod assignment.
    ZoneFiles List<Pulumi.KubernetesCoreDNS.Inputs.CoreDNSZoneFile>
    Configure custom Zone files.
    Affinity AffinityArgs
    Affinity settings for pod assignment . This type is defined in the Kubernetes package.
    Autoscaler CoreDNSAutoscalerArgs
    Configue a cluster-proportional-autoscaler for coredns. See https://github.com/kubernetes-incubator/cluster-proportional-autoscaler.
    Autoscaling HorizontalPodAutoscalerSpecArgs
    Create HorizontalPodAutoscaler object. This type is defined in the Kubernetes package.
    Deployment CoreDNSDeploymentArgs
    Configure the CoreDNS Deployment.
    ExtraSecrets VolumeMountArgs
    Optional array of secrets to mount inside coredns container. Possible usecase: need for secure connection with etcd backend. Optional array of mount points for extraVolumes.
    ExtraVolumeMounts VolumeMountArgs
    Optional array of mount points for extraVolumes.
    ExtraVolumes VolumeArgs
    Optional array of extra volumes to create.
    HelmOptions 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.
    Hpa CoreDNSHPAArgs
    Alternative configuration for HPA deployment if wanted.
    Image CoreDNSImageArgs
    The image to pull.
    IsClusterService bool
    Specifies whether chart should be deployed as cluster-service or normal k8s app.
    LivenessProbe ProbeArgs
    Configure the liveness probe. To use the livenessProbe, the health plugin needs to be enabled in CoreDNS' server config. This type is defined in the Kubernetes package.
    NodeSelector map[string]string
    Node labels for pod assignment.
    PodAnnotations map[string]string
    Optional Pod only Annotations.
    PodDisruptionBudget PodDisruptionBudgetSpecArgs
    Optional PodDisruptionBudget. This type is defined in the Kubernetes package.
    PreStopSleep int
    Under heavy load it takes more that standard time to remove Pod endpoint from a cluster. This will delay termination of our pod by preStopSleep. To make sure kube-proxy has enough time to catch up.
    PriorityClassName string
    Optional priority class to be used for the coredns pods. Used for autoscaler if autoscaler.priorityClassName not set.
    Prometheus CoreDNSPrometheusArgs
    Configure Prometheus installation.
    Rbac CoreDNSRBACArgs
    Configure CoreDNS RBAC resources.
    ReadinessProbe ProbeArgs
    Configure the readiness probe. To use the readinessProbe, the health plugin needs to be enabled in CoreDNS' server config. This type is defined in the Kubernetes package.
    ReplicaCount int
    Number of replicas.
    Resources ResourceRequirementsArgs
    Container resource limits. This type is defined in the Kubernetes package.
    RollingUpdate RollingUpdateDeploymentArgs
    This type is defined in the Kubernetes package.
    Servers []CoreDNSServerArgs
    Configuration for CoreDNS and plugins. Default zone is what Kubernetes recommends: https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/#coredns-configmap-options
    Service CoreDNSServiceArgs
    Configure CoreDNS Service parameters.
    ServiceAccount CoreDNSServiceAccountArgs
    Configure CoreDNS Service Account.
    ServiceType string
    Kubernetes Service type.
    TerminationGracePeriodSeconds int
    Optional duration in seconds the pod needs to terminate gracefully.
    Tolerations TolerationArgs
    Tolerations for pod assignment.
    ZoneFiles []CoreDNSZoneFileArgs
    Configure custom Zone files.
    affinity Affinity
    Affinity settings for pod assignment . This type is defined in the Kubernetes package.
    autoscaler CoreDNSAutoscaler
    Configue a cluster-proportional-autoscaler for coredns. See https://github.com/kubernetes-incubator/cluster-proportional-autoscaler.
    autoscaling HorizontalPodAutoscalerSpec
    Create HorizontalPodAutoscaler object. This type is defined in the Kubernetes package.
    deployment CoreDNSDeployment
    Configure the CoreDNS Deployment.
    extraSecrets List<VolumeMount>
    Optional array of secrets to mount inside coredns container. Possible usecase: need for secure connection with etcd backend. Optional array of mount points for extraVolumes.
    extraVolumeMounts List<VolumeMount>
    Optional array of mount points for extraVolumes.
    extraVolumes List<Volume>
    Optional array of extra volumes to create.
    helmOptions 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.
    hpa CoreDNSHPA
    Alternative configuration for HPA deployment if wanted.
    image CoreDNSImage
    The image to pull.
    isClusterService Boolean
    Specifies whether chart should be deployed as cluster-service or normal k8s app.
    livenessProbe Probe
    Configure the liveness probe. To use the livenessProbe, the health plugin needs to be enabled in CoreDNS' server config. This type is defined in the Kubernetes package.
    nodeSelector Map<String,String>
    Node labels for pod assignment.
    podAnnotations Map<String,String>
    Optional Pod only Annotations.
    podDisruptionBudget PodDisruptionBudgetSpec
    Optional PodDisruptionBudget. This type is defined in the Kubernetes package.
    preStopSleep Integer
    Under heavy load it takes more that standard time to remove Pod endpoint from a cluster. This will delay termination of our pod by preStopSleep. To make sure kube-proxy has enough time to catch up.
    priorityClassName String
    Optional priority class to be used for the coredns pods. Used for autoscaler if autoscaler.priorityClassName not set.
    prometheus CoreDNSPrometheus
    Configure Prometheus installation.
    rbac CoreDNSRBAC
    Configure CoreDNS RBAC resources.
    readinessProbe Probe
    Configure the readiness probe. To use the readinessProbe, the health plugin needs to be enabled in CoreDNS' server config. This type is defined in the Kubernetes package.
    replicaCount Integer
    Number of replicas.
    resources ResourceRequirements
    Container resource limits. This type is defined in the Kubernetes package.
    rollingUpdate RollingUpdateDeployment
    This type is defined in the Kubernetes package.
    servers List<CoreDNSServer>
    Configuration for CoreDNS and plugins. Default zone is what Kubernetes recommends: https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/#coredns-configmap-options
    service CoreDNSService
    Configure CoreDNS Service parameters.
    serviceAccount CoreDNSServiceAccount
    Configure CoreDNS Service Account.
    serviceType String
    Kubernetes Service type.
    terminationGracePeriodSeconds Integer
    Optional duration in seconds the pod needs to terminate gracefully.
    tolerations List<Toleration>
    Tolerations for pod assignment.
    zoneFiles List<CoreDNSZoneFile>
    Configure custom Zone files.
    affinity pulumiKubernetestypesinputcorev1Affinity
    Affinity settings for pod assignment . This type is defined in the Kubernetes package.
    autoscaler CoreDNSAutoscaler
    Configue a cluster-proportional-autoscaler for coredns. See https://github.com/kubernetes-incubator/cluster-proportional-autoscaler.
    autoscaling pulumiKubernetestypesinputautoscalingv2beta2HorizontalPodAutoscalerSpec
    Create HorizontalPodAutoscaler object. This type is defined in the Kubernetes package.
    deployment CoreDNSDeployment
    Configure the CoreDNS Deployment.
    extraSecrets pulumiKubernetestypesinputcorev1VolumeMount[]
    Optional array of secrets to mount inside coredns container. Possible usecase: need for secure connection with etcd backend. Optional array of mount points for extraVolumes.
    extraVolumeMounts pulumiKubernetestypesinputcorev1VolumeMount[]
    Optional array of mount points for extraVolumes.
    extraVolumes pulumiKubernetestypesinputcorev1Volume[]
    Optional array of extra volumes to create.
    helmOptions 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.
    hpa CoreDNSHPA
    Alternative configuration for HPA deployment if wanted.
    image CoreDNSImage
    The image to pull.
    isClusterService boolean
    Specifies whether chart should be deployed as cluster-service or normal k8s app.
    livenessProbe pulumiKubernetestypesinputcorev1Probe
    Configure the liveness probe. To use the livenessProbe, the health plugin needs to be enabled in CoreDNS' server config. This type is defined in the Kubernetes package.
    nodeSelector {[key: string]: string}
    Node labels for pod assignment.
    podAnnotations {[key: string]: string}
    Optional Pod only Annotations.
    podDisruptionBudget pulumiKubernetestypesinputpolicyv1PodDisruptionBudgetSpec
    Optional PodDisruptionBudget. This type is defined in the Kubernetes package.
    preStopSleep number
    Under heavy load it takes more that standard time to remove Pod endpoint from a cluster. This will delay termination of our pod by preStopSleep. To make sure kube-proxy has enough time to catch up.
    priorityClassName string
    Optional priority class to be used for the coredns pods. Used for autoscaler if autoscaler.priorityClassName not set.
    prometheus CoreDNSPrometheus
    Configure Prometheus installation.
    rbac CoreDNSRBAC
    Configure CoreDNS RBAC resources.
    readinessProbe pulumiKubernetestypesinputcorev1Probe
    Configure the readiness probe. To use the readinessProbe, the health plugin needs to be enabled in CoreDNS' server config. This type is defined in the Kubernetes package.
    replicaCount number
    Number of replicas.
    resources pulumiKubernetestypesinputcorev1ResourceRequirements
    Container resource limits. This type is defined in the Kubernetes package.
    rollingUpdate pulumiKubernetestypesinputappsv1RollingUpdateDeployment
    This type is defined in the Kubernetes package.
    servers CoreDNSServer[]
    Configuration for CoreDNS and plugins. Default zone is what Kubernetes recommends: https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/#coredns-configmap-options
    service CoreDNSService
    Configure CoreDNS Service parameters.
    serviceAccount CoreDNSServiceAccount
    Configure CoreDNS Service Account.
    serviceType string
    Kubernetes Service type.
    terminationGracePeriodSeconds number
    Optional duration in seconds the pod needs to terminate gracefully.
    tolerations pulumiKubernetestypesinputcorev1Toleration[]
    Tolerations for pod assignment.
    zoneFiles CoreDNSZoneFile[]
    Configure custom Zone files.
    affinity pulumi_kubernetes.core.v1.AffinityArgs
    Affinity settings for pod assignment . This type is defined in the Kubernetes package.
    autoscaler CoreDNSAutoscalerArgs
    Configue a cluster-proportional-autoscaler for coredns. See https://github.com/kubernetes-incubator/cluster-proportional-autoscaler.
    autoscaling pulumi_kubernetes.autoscaling.v2beta2.HorizontalPodAutoscalerSpecArgs
    Create HorizontalPodAutoscaler object. This type is defined in the Kubernetes package.
    deployment CoreDNSDeploymentArgs
    Configure the CoreDNS Deployment.
    extra_secrets Sequence[pulumi_kubernetes.core.v1.VolumeMountArgs]
    Optional array of secrets to mount inside coredns container. Possible usecase: need for secure connection with etcd backend. Optional array of mount points for extraVolumes.
    extra_volume_mounts Sequence[pulumi_kubernetes.core.v1.VolumeMountArgs]
    Optional array of mount points for extraVolumes.
    extra_volumes Sequence[pulumi_kubernetes.core.v1.VolumeArgs]
    Optional array of extra volumes to create.
    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.
    hpa CoreDNSHPAArgs
    Alternative configuration for HPA deployment if wanted.
    image CoreDNSImageArgs
    The image to pull.
    is_cluster_service bool
    Specifies whether chart should be deployed as cluster-service or normal k8s app.
    liveness_probe pulumi_kubernetes.core.v1.ProbeArgs
    Configure the liveness probe. To use the livenessProbe, the health plugin needs to be enabled in CoreDNS' server config. This type is defined in the Kubernetes package.
    node_selector Mapping[str, str]
    Node labels for pod assignment.
    pod_annotations Mapping[str, str]
    Optional Pod only Annotations.
    pod_disruption_budget pulumi_kubernetes.policy.v1.PodDisruptionBudgetSpecArgs
    Optional PodDisruptionBudget. This type is defined in the Kubernetes package.
    pre_stop_sleep int
    Under heavy load it takes more that standard time to remove Pod endpoint from a cluster. This will delay termination of our pod by preStopSleep. To make sure kube-proxy has enough time to catch up.
    priority_class_name str
    Optional priority class to be used for the coredns pods. Used for autoscaler if autoscaler.priorityClassName not set.
    prometheus CoreDNSPrometheusArgs
    Configure Prometheus installation.
    rbac CoreDNSRBACArgs
    Configure CoreDNS RBAC resources.
    readiness_probe pulumi_kubernetes.core.v1.ProbeArgs
    Configure the readiness probe. To use the readinessProbe, the health plugin needs to be enabled in CoreDNS' server config. This type is defined in the Kubernetes package.
    replica_count int
    Number of replicas.
    resources pulumi_kubernetes.core.v1.ResourceRequirementsArgs
    Container resource limits. This type is defined in the Kubernetes package.
    rolling_update pulumi_kubernetes.apps.v1.RollingUpdateDeploymentArgs
    This type is defined in the Kubernetes package.
    servers Sequence[CoreDNSServerArgs]
    Configuration for CoreDNS and plugins. Default zone is what Kubernetes recommends: https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/#coredns-configmap-options
    service CoreDNSServiceArgs
    Configure CoreDNS Service parameters.
    service_account CoreDNSServiceAccountArgs
    Configure CoreDNS Service Account.
    service_type str
    Kubernetes Service type.
    termination_grace_period_seconds int
    Optional duration in seconds the pod needs to terminate gracefully.
    tolerations Sequence[pulumi_kubernetes.core.v1.TolerationArgs]
    Tolerations for pod assignment.
    zone_files Sequence[CoreDNSZoneFileArgs]
    Configure custom Zone files.
    affinity Property Map
    Affinity settings for pod assignment . This type is defined in the Kubernetes package.
    autoscaler Property Map
    Configue a cluster-proportional-autoscaler for coredns. See https://github.com/kubernetes-incubator/cluster-proportional-autoscaler.
    autoscaling Property Map
    Create HorizontalPodAutoscaler object. This type is defined in the Kubernetes package.
    deployment Property Map
    Configure the CoreDNS Deployment.
    extraSecrets List<Property Map>
    Optional array of secrets to mount inside coredns container. Possible usecase: need for secure connection with etcd backend. Optional array of mount points for extraVolumes.
    extraVolumeMounts List<Property Map>
    Optional array of mount points for extraVolumes.
    extraVolumes List<Property Map>
    Optional array of extra volumes to create.
    helmOptions 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.
    hpa Property Map
    Alternative configuration for HPA deployment if wanted.
    image Property Map
    The image to pull.
    isClusterService Boolean
    Specifies whether chart should be deployed as cluster-service or normal k8s app.
    livenessProbe Property Map
    Configure the liveness probe. To use the livenessProbe, the health plugin needs to be enabled in CoreDNS' server config. This type is defined in the Kubernetes package.
    nodeSelector Map<String>
    Node labels for pod assignment.
    podAnnotations Map<String>
    Optional Pod only Annotations.
    podDisruptionBudget Property Map
    Optional PodDisruptionBudget. This type is defined in the Kubernetes package.
    preStopSleep Number
    Under heavy load it takes more that standard time to remove Pod endpoint from a cluster. This will delay termination of our pod by preStopSleep. To make sure kube-proxy has enough time to catch up.
    priorityClassName String
    Optional priority class to be used for the coredns pods. Used for autoscaler if autoscaler.priorityClassName not set.
    prometheus Property Map
    Configure Prometheus installation.
    rbac Property Map
    Configure CoreDNS RBAC resources.
    readinessProbe Property Map
    Configure the readiness probe. To use the readinessProbe, the health plugin needs to be enabled in CoreDNS' server config. This type is defined in the Kubernetes package.
    replicaCount Number
    Number of replicas.
    resources Property Map
    Container resource limits. This type is defined in the Kubernetes package.
    rollingUpdate Property Map
    This type is defined in the Kubernetes package.
    servers List<Property Map>
    Configuration for CoreDNS and plugins. Default zone is what Kubernetes recommends: https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/#coredns-configmap-options
    service Property Map
    Configure CoreDNS Service parameters.
    serviceAccount Property Map
    Configure CoreDNS Service Account.
    serviceType String
    Kubernetes Service type.
    terminationGracePeriodSeconds Number
    Optional duration in seconds the pod needs to terminate gracefully.
    tolerations List<Property Map>
    Tolerations for pod assignment.
    zoneFiles List<Property Map>
    Configure custom Zone files.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the CoreDNS resource produces the following output properties:

    Status Pulumi.KubernetesCoreDNS.Outputs.ReleaseStatus
    Detailed information about the status of the underlying Helm deployment.
    Status ReleaseStatus
    Detailed information about the status of the underlying Helm deployment.
    status ReleaseStatus
    Detailed information about the status of the underlying Helm deployment.
    status ReleaseStatus
    Detailed information about the status of the underlying Helm deployment.
    status ReleaseStatus
    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

    CoreDNSAutoscaler, CoreDNSAutoscalerArgs

    CoresPerReplica int
    Number of cores in the cluster per coredns replica.
    Enabled bool
    Enabled the cluster-proportional-autoscaler.
    Image Pulumi.KubernetesCoreDNS.Inputs.CoreDNSImage
    The image to pull from for the autoscaler.
    IncludeUnschedulableNodes bool
    Whether to include unschedulable nodes in the nodes/cores calculations - this requires version 1.8.0+ of the autoscaler.
    Max int
    Max size of replicaCount
    Min int
    Min size of replicaCount
    NodesPerReplica int
    Number of nodes in the cluster per coredns replica.
    PreventSinglePointFailure bool
    If true does not allow single points of failure to form.
    CoresPerReplica int
    Number of cores in the cluster per coredns replica.
    Enabled bool
    Enabled the cluster-proportional-autoscaler.
    Image CoreDNSImage
    The image to pull from for the autoscaler.
    IncludeUnschedulableNodes bool
    Whether to include unschedulable nodes in the nodes/cores calculations - this requires version 1.8.0+ of the autoscaler.
    Max int
    Max size of replicaCount
    Min int
    Min size of replicaCount
    NodesPerReplica int
    Number of nodes in the cluster per coredns replica.
    PreventSinglePointFailure bool
    If true does not allow single points of failure to form.
    coresPerReplica Integer
    Number of cores in the cluster per coredns replica.
    enabled Boolean
    Enabled the cluster-proportional-autoscaler.
    image CoreDNSImage
    The image to pull from for the autoscaler.
    includeUnschedulableNodes Boolean
    Whether to include unschedulable nodes in the nodes/cores calculations - this requires version 1.8.0+ of the autoscaler.
    max Integer
    Max size of replicaCount
    min Integer
    Min size of replicaCount
    nodesPerReplica Integer
    Number of nodes in the cluster per coredns replica.
    preventSinglePointFailure Boolean
    If true does not allow single points of failure to form.
    coresPerReplica number
    Number of cores in the cluster per coredns replica.
    enabled boolean
    Enabled the cluster-proportional-autoscaler.
    image CoreDNSImage
    The image to pull from for the autoscaler.
    includeUnschedulableNodes boolean
    Whether to include unschedulable nodes in the nodes/cores calculations - this requires version 1.8.0+ of the autoscaler.
    max number
    Max size of replicaCount
    min number
    Min size of replicaCount
    nodesPerReplica number
    Number of nodes in the cluster per coredns replica.
    preventSinglePointFailure boolean
    If true does not allow single points of failure to form.
    cores_per_replica int
    Number of cores in the cluster per coredns replica.
    enabled bool
    Enabled the cluster-proportional-autoscaler.
    image CoreDNSImage
    The image to pull from for the autoscaler.
    include_unschedulable_nodes bool
    Whether to include unschedulable nodes in the nodes/cores calculations - this requires version 1.8.0+ of the autoscaler.
    max int
    Max size of replicaCount
    min int
    Min size of replicaCount
    nodes_per_replica int
    Number of nodes in the cluster per coredns replica.
    prevent_single_point_failure bool
    If true does not allow single points of failure to form.
    coresPerReplica Number
    Number of cores in the cluster per coredns replica.
    enabled Boolean
    Enabled the cluster-proportional-autoscaler.
    image Property Map
    The image to pull from for the autoscaler.
    includeUnschedulableNodes Boolean
    Whether to include unschedulable nodes in the nodes/cores calculations - this requires version 1.8.0+ of the autoscaler.
    max Number
    Max size of replicaCount
    min Number
    Min size of replicaCount
    nodesPerReplica Number
    Number of nodes in the cluster per coredns replica.
    preventSinglePointFailure Boolean
    If true does not allow single points of failure to form.

    CoreDNSDeployment, CoreDNSDeploymentArgs

    Enabled bool
    Optionally disable the main deployment and its respective resources.
    Name string
    Name of the deployment if deployment.enabled is true. Otherwise the name of an existing deployment for the autoscaler or HPA to target.
    Enabled bool
    Optionally disable the main deployment and its respective resources.
    Name string
    Name of the deployment if deployment.enabled is true. Otherwise the name of an existing deployment for the autoscaler or HPA to target.
    enabled Boolean
    Optionally disable the main deployment and its respective resources.
    name String
    Name of the deployment if deployment.enabled is true. Otherwise the name of an existing deployment for the autoscaler or HPA to target.
    enabled boolean
    Optionally disable the main deployment and its respective resources.
    name string
    Name of the deployment if deployment.enabled is true. Otherwise the name of an existing deployment for the autoscaler or HPA to target.
    enabled bool
    Optionally disable the main deployment and its respective resources.
    name str
    Name of the deployment if deployment.enabled is true. Otherwise the name of an existing deployment for the autoscaler or HPA to target.
    enabled Boolean
    Optionally disable the main deployment and its respective resources.
    name String
    Name of the deployment if deployment.enabled is true. Otherwise the name of an existing deployment for the autoscaler or HPA to target.

    CoreDNSHPA, CoreDNSHPAArgs

    Enabled bool
    MaxReplicas int
    Metrics MetricSpec
    This type is defined in the Kubernetes package.
    MinReplicas int
    enabled Boolean
    maxReplicas Integer
    metrics MetricSpec
    This type is defined in the Kubernetes package.
    minReplicas Integer
    enabled Boolean
    maxReplicas Number
    metrics Property Map
    This type is defined in the Kubernetes package.
    minReplicas Number

    CoreDNSImage, CoreDNSImageArgs

    PullPolicy string
    Image pull policy.
    PullSecrets List<string>
    Specify container image pull secrets.
    Repository string
    The image repository to pull from.
    Tag string
    The image tag to pull from.
    PullPolicy string
    Image pull policy.
    PullSecrets []string
    Specify container image pull secrets.
    Repository string
    The image repository to pull from.
    Tag string
    The image tag to pull from.
    pullPolicy String
    Image pull policy.
    pullSecrets List<String>
    Specify container image pull secrets.
    repository String
    The image repository to pull from.
    tag String
    The image tag to pull from.
    pullPolicy string
    Image pull policy.
    pullSecrets string[]
    Specify container image pull secrets.
    repository string
    The image repository to pull from.
    tag string
    The image tag to pull from.
    pull_policy str
    Image pull policy.
    pull_secrets Sequence[str]
    Specify container image pull secrets.
    repository str
    The image repository to pull from.
    tag str
    The image tag to pull from.
    pullPolicy String
    Image pull policy.
    pullSecrets List<String>
    Specify container image pull secrets.
    repository String
    The image repository to pull from.
    tag String
    The image tag to pull from.

    CoreDNSPrometheus, CoreDNSPrometheusArgs

    CoreDNSPrometheusMonitor, CoreDNSPrometheusMonitorArgs

    AdditionalLabels Dictionary<string, string>
    Additional labels that can be used so ServiceMonitor will be discovered by Prometheus.
    Enabled bool
    Set this to true to create ServiceMonitor for Prometheus operator.
    Namespace string
    Selector to select which namespaces the Endpoints objects are discovered from.
    AdditionalLabels map[string]string
    Additional labels that can be used so ServiceMonitor will be discovered by Prometheus.
    Enabled bool
    Set this to true to create ServiceMonitor for Prometheus operator.
    Namespace string
    Selector to select which namespaces the Endpoints objects are discovered from.
    additionalLabels Map<String,String>
    Additional labels that can be used so ServiceMonitor will be discovered by Prometheus.
    enabled Boolean
    Set this to true to create ServiceMonitor for Prometheus operator.
    namespace String
    Selector to select which namespaces the Endpoints objects are discovered from.
    additionalLabels {[key: string]: string}
    Additional labels that can be used so ServiceMonitor will be discovered by Prometheus.
    enabled boolean
    Set this to true to create ServiceMonitor for Prometheus operator.
    namespace string
    Selector to select which namespaces the Endpoints objects are discovered from.
    additional_labels Mapping[str, str]
    Additional labels that can be used so ServiceMonitor will be discovered by Prometheus.
    enabled bool
    Set this to true to create ServiceMonitor for Prometheus operator.
    namespace str
    Selector to select which namespaces the Endpoints objects are discovered from.
    additionalLabels Map<String>
    Additional labels that can be used so ServiceMonitor will be discovered by Prometheus.
    enabled Boolean
    Set this to true to create ServiceMonitor for Prometheus operator.
    namespace String
    Selector to select which namespaces the Endpoints objects are discovered from.

    CoreDNSPrometheusService, CoreDNSPrometheusServiceArgs

    Annotations Dictionary<string, string>
    Annotations to add to the metrics Service.
    Enabled bool
    Set this to true to create Service for Prometheus metrics.
    Annotations map[string]string
    Annotations to add to the metrics Service.
    Enabled bool
    Set this to true to create Service for Prometheus metrics.
    annotations Map<String,String>
    Annotations to add to the metrics Service.
    enabled Boolean
    Set this to true to create Service for Prometheus metrics.
    annotations {[key: string]: string}
    Annotations to add to the metrics Service.
    enabled boolean
    Set this to true to create Service for Prometheus metrics.
    annotations Mapping[str, str]
    Annotations to add to the metrics Service.
    enabled bool
    Set this to true to create Service for Prometheus metrics.
    annotations Map<String>
    Annotations to add to the metrics Service.
    enabled Boolean
    Set this to true to create Service for Prometheus metrics.

    CoreDNSRBAC, CoreDNSRBACArgs

    Create bool
    If true, create & use RBAC resources
    Name string
    The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template.
    PspEnable bool
    If true, create and use PodSecurityPolicy
    Create bool
    If true, create & use RBAC resources
    Name string
    The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template.
    PspEnable bool
    If true, create and use PodSecurityPolicy
    create Boolean
    If true, create & use RBAC resources
    name String
    The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template.
    pspEnable Boolean
    If true, create and use PodSecurityPolicy
    create boolean
    If true, create & use RBAC resources
    name string
    The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template.
    pspEnable boolean
    If true, create and use PodSecurityPolicy
    create bool
    If true, create & use RBAC resources
    name str
    The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template.
    psp_enable bool
    If true, create and use PodSecurityPolicy
    create Boolean
    If true, create & use RBAC resources
    name String
    The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template.
    pspEnable Boolean
    If true, create and use PodSecurityPolicy

    CoreDNSServer, CoreDNSServerArgs

    Plugins List<Pulumi.KubernetesCoreDNS.Inputs.CoreDNSServerPlugin>
    the plugins to use for this server block.
    Port int
    optional, defaults to "" (which equals 53 in CoreDNS).
    Zones List<Pulumi.KubernetesCoreDNS.Inputs.CoreDNSServerZone>
    the zones block can be left out entirely, defaults to "."
    Plugins []CoreDNSServerPlugin
    the plugins to use for this server block.
    Port int
    optional, defaults to "" (which equals 53 in CoreDNS).
    Zones []CoreDNSServerZone
    the zones block can be left out entirely, defaults to "."
    plugins List<CoreDNSServerPlugin>
    the plugins to use for this server block.
    port Integer
    optional, defaults to "" (which equals 53 in CoreDNS).
    zones List<CoreDNSServerZone>
    the zones block can be left out entirely, defaults to "."
    plugins CoreDNSServerPlugin[]
    the plugins to use for this server block.
    port number
    optional, defaults to "" (which equals 53 in CoreDNS).
    zones CoreDNSServerZone[]
    the zones block can be left out entirely, defaults to "."
    plugins Sequence[CoreDNSServerPlugin]
    the plugins to use for this server block.
    port int
    optional, defaults to "" (which equals 53 in CoreDNS).
    zones Sequence[CoreDNSServerZone]
    the zones block can be left out entirely, defaults to "."
    plugins List<Property Map>
    the plugins to use for this server block.
    port Number
    optional, defaults to "" (which equals 53 in CoreDNS).
    zones List<Property Map>
    the zones block can be left out entirely, defaults to "."

    CoreDNSServerPlugin, CoreDNSServerPluginArgs

    ConfigBlock string
    if the plugin supports extra block style config, supply it here
    Name string
    name of plugin, if used multiple times ensure that the plugin supports it!
    Parameters string
    list of parameters after the plugin
    ConfigBlock string
    if the plugin supports extra block style config, supply it here
    Name string
    name of plugin, if used multiple times ensure that the plugin supports it!
    Parameters string
    list of parameters after the plugin
    configBlock String
    if the plugin supports extra block style config, supply it here
    name String
    name of plugin, if used multiple times ensure that the plugin supports it!
    parameters String
    list of parameters after the plugin
    configBlock string
    if the plugin supports extra block style config, supply it here
    name string
    name of plugin, if used multiple times ensure that the plugin supports it!
    parameters string
    list of parameters after the plugin
    config_block str
    if the plugin supports extra block style config, supply it here
    name str
    name of plugin, if used multiple times ensure that the plugin supports it!
    parameters str
    list of parameters after the plugin
    configBlock String
    if the plugin supports extra block style config, supply it here
    name String
    name of plugin, if used multiple times ensure that the plugin supports it!
    parameters String
    list of parameters after the plugin

    CoreDNSServerZone, CoreDNSServerZoneArgs

    Scheme string
    optional, defaults to "" (which equals "dns://" in CoreDNS)
    Use_tcp bool
    set this parameter to optionally expose the port on tcp as well as udp for the DNS protocol. Note that this will not work if you are also exposing tls or grpc on the same server.
    Zone string
    optional, defaults to "."
    Scheme string
    optional, defaults to "" (which equals "dns://" in CoreDNS)
    Use_tcp bool
    set this parameter to optionally expose the port on tcp as well as udp for the DNS protocol. Note that this will not work if you are also exposing tls or grpc on the same server.
    Zone string
    optional, defaults to "."
    scheme String
    optional, defaults to "" (which equals "dns://" in CoreDNS)
    use_tcp Boolean
    set this parameter to optionally expose the port on tcp as well as udp for the DNS protocol. Note that this will not work if you are also exposing tls or grpc on the same server.
    zone String
    optional, defaults to "."
    scheme string
    optional, defaults to "" (which equals "dns://" in CoreDNS)
    use_tcp boolean
    set this parameter to optionally expose the port on tcp as well as udp for the DNS protocol. Note that this will not work if you are also exposing tls or grpc on the same server.
    zone string
    optional, defaults to "."
    scheme str
    optional, defaults to "" (which equals "dns://" in CoreDNS)
    use_tcp bool
    set this parameter to optionally expose the port on tcp as well as udp for the DNS protocol. Note that this will not work if you are also exposing tls or grpc on the same server.
    zone str
    optional, defaults to "."
    scheme String
    optional, defaults to "" (which equals "dns://" in CoreDNS)
    use_tcp Boolean
    set this parameter to optionally expose the port on tcp as well as udp for the DNS protocol. Note that this will not work if you are also exposing tls or grpc on the same server.
    zone String
    optional, defaults to "."

    CoreDNSService, CoreDNSServiceArgs

    Annotations Dictionary<string, string>
    Annotations to add to service.
    ClusterIP string
    IP address to assign to service.
    ExternalIPs List<string>
    External IP addresses.
    ExternalTrafficPolicy string
    Enable client source IP preservation.
    LoadBalancerIP string
    IP address to assign to load balancer (if supported).
    Name string
    The name of the Service. If not set, a name is generated using the fullname template.
    Annotations map[string]string
    Annotations to add to service.
    ClusterIP string
    IP address to assign to service.
    ExternalIPs []string
    External IP addresses.
    ExternalTrafficPolicy string
    Enable client source IP preservation.
    LoadBalancerIP string
    IP address to assign to load balancer (if supported).
    Name string
    The name of the Service. If not set, a name is generated using the fullname template.
    annotations Map<String,String>
    Annotations to add to service.
    clusterIP String
    IP address to assign to service.
    externalIPs List<String>
    External IP addresses.
    externalTrafficPolicy String
    Enable client source IP preservation.
    loadBalancerIP String
    IP address to assign to load balancer (if supported).
    name String
    The name of the Service. If not set, a name is generated using the fullname template.
    annotations {[key: string]: string}
    Annotations to add to service.
    clusterIP string
    IP address to assign to service.
    externalIPs string[]
    External IP addresses.
    externalTrafficPolicy string
    Enable client source IP preservation.
    loadBalancerIP string
    IP address to assign to load balancer (if supported).
    name string
    The name of the Service. If not set, a name is generated using the fullname template.
    annotations Mapping[str, str]
    Annotations to add to service.
    cluster_ip str
    IP address to assign to service.
    external_ips Sequence[str]
    External IP addresses.
    external_traffic_policy str
    Enable client source IP preservation.
    load_balancer_ip str
    IP address to assign to load balancer (if supported).
    name str
    The name of the Service. If not set, a name is generated using the fullname template.
    annotations Map<String>
    Annotations to add to service.
    clusterIP String
    IP address to assign to service.
    externalIPs List<String>
    External IP addresses.
    externalTrafficPolicy String
    Enable client source IP preservation.
    loadBalancerIP String
    IP address to assign to load balancer (if supported).
    name String
    The name of the Service. If not set, a name is generated using the fullname template.

    CoreDNSServiceAccount, CoreDNSServiceAccountArgs

    Annotations Dictionary<string, string>
    Create bool
    If true, create & use serviceAccount.
    Name string
    The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template
    Annotations map[string]string
    Create bool
    If true, create & use serviceAccount.
    Name string
    The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template
    annotations Map<String,String>
    create Boolean
    If true, create & use serviceAccount.
    name String
    The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template
    annotations {[key: string]: string}
    create boolean
    If true, create & use serviceAccount.
    name string
    The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template
    annotations Mapping[str, str]
    create bool
    If true, create & use serviceAccount.
    name str
    The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template
    annotations Map<String>
    create Boolean
    If true, create & use serviceAccount.
    name String
    The name of the ServiceAccount to use. If not set and create is true, a name is generated using the fullname template

    CoreDNSZoneFile, CoreDNSZoneFileArgs

    Contents string
    Domain string
    String string
    Contents string
    Domain string
    String string
    contents String
    domain String
    string String
    contents string
    domain string
    string string
    contents String
    domain String
    string String

    Release, ReleaseArgs

    Atomic bool
    If set, installation process purges chart on fail. skipAwait will be disabled automatically if atomic is used.
    Chart string
    Chart name to be installed. A path may be used.
    CleanupOnFail bool
    Allow deletion of new resources created in this upgrade when upgrade fails.
    CreateNamespace bool
    Create the namespace if it does not exist.
    DependencyUpdate 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 version is set, this is ignored.
    DisableCRDHooks bool
    Prevent CRD hooks from, running, but run other hooks. See helm install --no-crd-hook
    DisableOpenapiValidation bool
    If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
    DisableWebhooks bool
    Prevent hooks from running.
    ForceUpdate bool
    Force resource update through delete/recreate if needed.
    Keyring string
    Location of public keys used for verification. Used only if verify is true
    Lint bool
    Run helm lint when planning.
    Manifest Dictionary<string, object>
    The rendered manifests as JSON. Not yet supported.
    MaxHistory 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.
    RecreatePods bool
    Perform pods restart during upgrade/rollback.
    RenderSubchartNotes bool
    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
    RepositoryOpts Pulumi.KubernetesCoreDNS.Inputs.RepositoryOpts
    Specification defining the Helm chart repository to use.
    ResetValues bool
    When upgrading, reset the values to the ones built into the chart.
    ResourceNames Dictionary<string, ImmutableArray<string>>
    Names of resources created by the release grouped by "kind/version".
    ReuseValues bool
    When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
    SkipAwait 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.
    SkipCrds 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.
    ValueYamlFiles List<AssetOrArchive>
    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.
    WaitForJobs bool
    Will wait until all Jobs have been completed before marking the release as successful. This is ignored if skipAwait is enabled.
    Atomic bool
    If set, installation process purges chart on fail. skipAwait will be disabled automatically if atomic is used.
    Chart string
    Chart name to be installed. A path may be used.
    CleanupOnFail bool
    Allow deletion of new resources created in this upgrade when upgrade fails.
    CreateNamespace bool
    Create the namespace if it does not exist.
    DependencyUpdate 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 version is set, this is ignored.
    DisableCRDHooks bool
    Prevent CRD hooks from, running, but run other hooks. See helm install --no-crd-hook
    DisableOpenapiValidation bool
    If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
    DisableWebhooks bool
    Prevent hooks from running.
    ForceUpdate bool
    Force resource update through delete/recreate if needed.
    Keyring string
    Location of public keys used for verification. Used only if verify is true
    Lint bool
    Run helm lint when planning.
    Manifest map[string]interface{}
    The rendered manifests as JSON. Not yet supported.
    MaxHistory 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.
    RecreatePods bool
    Perform pods restart during upgrade/rollback.
    RenderSubchartNotes bool
    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
    RepositoryOpts RepositoryOpts
    Specification defining the Helm chart repository to use.
    ResetValues bool
    When upgrading, reset the values to the ones built into the chart.
    ResourceNames map[string][]string
    Names of resources created by the release grouped by "kind/version".
    ReuseValues bool
    When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
    SkipAwait 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.
    SkipCrds 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.
    ValueYamlFiles AssetOrArchive
    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.
    WaitForJobs bool
    Will wait until all Jobs have been completed before marking the release as successful. This is ignored if skipAwait is enabled.
    atomic Boolean
    If set, installation process purges chart on fail. skipAwait will be disabled automatically if atomic is used.
    chart String
    Chart name to be installed. A path may be used.
    cleanupOnFail Boolean
    Allow deletion of new resources created in this upgrade when upgrade fails.
    createNamespace Boolean
    Create the namespace if it does not exist.
    dependencyUpdate 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 version is set, this is ignored.
    disableCRDHooks Boolean
    Prevent CRD hooks from, running, but run other hooks. See helm install --no-crd-hook
    disableOpenapiValidation Boolean
    If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
    disableWebhooks Boolean
    Prevent hooks from running.
    forceUpdate Boolean
    Force resource update through delete/recreate if needed.
    keyring String
    Location of public keys used for verification. Used only if verify is true
    lint Boolean
    Run helm lint when planning.
    manifest Map<String,Object>
    The rendered manifests as JSON. Not yet supported.
    maxHistory 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.
    recreatePods Boolean
    Perform pods restart during upgrade/rollback.
    renderSubchartNotes Boolean
    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
    repositoryOpts RepositoryOpts
    Specification defining the Helm chart repository to use.
    resetValues Boolean
    When upgrading, reset the values to the ones built into the chart.
    resourceNames Map<String,List<String>>
    Names of resources created by the release grouped by "kind/version".
    reuseValues Boolean
    When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
    skipAwait 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.
    skipCrds 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.
    valueYamlFiles List<AssetOrArchive>
    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.
    waitForJobs Boolean
    Will wait until all Jobs have been completed before marking the release as successful. This is ignored if skipAwait is enabled.
    atomic boolean
    If set, installation process purges chart on fail. skipAwait will be disabled automatically if atomic is used.
    chart string
    Chart name to be installed. A path may be used.
    cleanupOnFail boolean
    Allow deletion of new resources created in this upgrade when upgrade fails.
    createNamespace boolean
    Create the namespace if it does not exist.
    dependencyUpdate 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 version is set, this is ignored.
    disableCRDHooks boolean
    Prevent CRD hooks from, running, but run other hooks. See helm install --no-crd-hook
    disableOpenapiValidation boolean
    If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
    disableWebhooks boolean
    Prevent hooks from running.
    forceUpdate boolean
    Force resource update through delete/recreate if needed.
    keyring string
    Location of public keys used for verification. Used only if verify is true
    lint boolean
    Run helm lint when planning.
    manifest {[key: string]: any}
    The rendered manifests as JSON. Not yet supported.
    maxHistory 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.
    recreatePods boolean
    Perform pods restart during upgrade/rollback.
    renderSubchartNotes boolean
    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
    repositoryOpts RepositoryOpts
    Specification defining the Helm chart repository to use.
    resetValues boolean
    When upgrading, reset the values to the ones built into the chart.
    resourceNames {[key: string]: string[]}
    Names of resources created by the release grouped by "kind/version".
    reuseValues boolean
    When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
    skipAwait 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.
    skipCrds 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.
    valueYamlFiles (pulumiassetAsset | pulumiassetArchive)[]
    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.
    waitForJobs boolean
    Will wait until all Jobs have been completed before marking the release as successful. This is ignored if skipAwait is enabled.
    atomic bool
    If set, installation process purges chart on fail. skipAwait will be disabled automatically if atomic is used.
    chart str
    Chart name to be installed. A path may be used.
    cleanup_on_fail bool
    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 version is set, this is ignored.
    disable_crd_hooks bool
    Prevent CRD hooks from, running, but run other hooks. See helm install --no-crd-hook
    disable_openapi_validation bool
    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 verify is 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_notes bool
    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_files Sequence[Union[pulumi.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_jobs bool
    Will wait until all Jobs have been completed before marking the release as successful. This is ignored if skipAwait is enabled.
    atomic Boolean
    If set, installation process purges chart on fail. skipAwait will be disabled automatically if atomic is used.
    chart String
    Chart name to be installed. A path may be used.
    cleanupOnFail Boolean
    Allow deletion of new resources created in this upgrade when upgrade fails.
    createNamespace Boolean
    Create the namespace if it does not exist.
    dependencyUpdate 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 version is set, this is ignored.
    disableCRDHooks Boolean
    Prevent CRD hooks from, running, but run other hooks. See helm install --no-crd-hook
    disableOpenapiValidation Boolean
    If set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
    disableWebhooks Boolean
    Prevent hooks from running.
    forceUpdate Boolean
    Force resource update through delete/recreate if needed.
    keyring String
    Location of public keys used for verification. Used only if verify is true
    lint Boolean
    Run helm lint when planning.
    manifest Map<Any>
    The rendered manifests as JSON. Not yet supported.
    maxHistory 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.
    recreatePods Boolean
    Perform pods restart during upgrade/rollback.
    renderSubchartNotes Boolean
    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
    repositoryOpts Property Map
    Specification defining the Helm chart repository to use.
    resetValues Boolean
    When upgrading, reset the values to the ones built into the chart.
    resourceNames Map<List<String>>
    Names of resources created by the release grouped by "kind/version".
    reuseValues Boolean
    When upgrading, reuse the last release's values and merge in any overrides. If 'resetValues' is specified, this is ignored
    skipAwait 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.
    skipCrds 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.
    valueYamlFiles List<Asset>
    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.
    waitForJobs Boolean
    Will wait until all Jobs have been completed before marking the release as successful. This is ignored if skipAwait is enabled.

    ReleaseStatus, ReleaseStatusArgs

    AppVersion 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.
    AppVersion 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.
    appVersion 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.
    appVersion 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.
    appVersion 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

    CaFile string
    The Repository's CA File
    CertFile string
    The repository's cert file
    KeyFile 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
    CaFile string
    The Repository's CA File
    CertFile string
    The repository's cert file
    KeyFile 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
    caFile String
    The Repository's CA File
    certFile String
    The repository's cert file
    keyFile 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
    caFile string
    The Repository's CA File
    certFile string
    The repository's cert file
    keyFile 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
    caFile String
    The Repository's CA File
    certFile String
    The repository's cert file
    keyFile 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
    CoreDNS (Helm)
    License
    kubernetes-coredns logo
    Kubernetes CoreDNS v0.0.2 published on Thursday, May 26, 2022 by Pulumi