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.

    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:
                cont