All Downloads are FREE. Search and download functionalities are using the official Maven repository.

src.container.v1beta1.ClusterArgs.scala Maven / Gradle / Ivy

There is a newer version: 0.32.0-core.0.4
Show newest version
package besom.api.googlenative.container.v1beta1

final case class ClusterArgs private(
  addonsConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.AddonsConfigArgs]],
  authenticatorGroupsConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.AuthenticatorGroupsConfigArgs]],
  autopilot: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.AutopilotArgs]],
  autoscaling: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.ClusterAutoscalingArgs]],
  binaryAuthorization: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.BinaryAuthorizationArgs]],
  clusterIpv4Cidr: besom.types.Output[scala.Option[String]],
  clusterTelemetry: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.ClusterTelemetryArgs]],
  conditions: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.container.v1beta1.inputs.StatusConditionArgs]]],
  confidentialNodes: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.ConfidentialNodesArgs]],
  costManagementConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.CostManagementConfigArgs]],
  databaseEncryption: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.DatabaseEncryptionArgs]],
  defaultMaxPodsConstraint: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.MaxPodsConstraintArgs]],
  description: besom.types.Output[scala.Option[String]],
  enableK8sBetaApis: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.K8sBetaApiConfigArgs]],
  enableKubernetesAlpha: besom.types.Output[scala.Option[Boolean]],
  enableTpu: besom.types.Output[scala.Option[Boolean]],
  enterpriseConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.EnterpriseConfigArgs]],
  etag: besom.types.Output[scala.Option[String]],
  fleet: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.FleetArgs]],
  identityServiceConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.IdentityServiceConfigArgs]],
  initialClusterVersion: besom.types.Output[scala.Option[String]],
  initialNodeCount: besom.types.Output[scala.Option[Int]],
  instanceGroupUrls: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  ipAllocationPolicy: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.IpAllocationPolicyArgs]],
  legacyAbac: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.LegacyAbacArgs]],
  location: besom.types.Output[scala.Option[String]],
  locations: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  loggingConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.LoggingConfigArgs]],
  loggingService: besom.types.Output[scala.Option[String]],
  maintenancePolicy: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.MaintenancePolicyArgs]],
  master: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.MasterArgs]],
  masterAuth: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.MasterAuthArgs]],
  masterAuthorizedNetworksConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.MasterAuthorizedNetworksConfigArgs]],
  masterIpv4CidrBlock: besom.types.Output[scala.Option[String]],
  meshCertificates: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.MeshCertificatesArgs]],
  monitoringConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.MonitoringConfigArgs]],
  monitoringService: besom.types.Output[scala.Option[String]],
  name: besom.types.Output[scala.Option[String]],
  network: besom.types.Output[scala.Option[String]],
  networkConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.NetworkConfigArgs]],
  networkPolicy: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.NetworkPolicyArgs]],
  nodeConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.NodeConfigArgs]],
  nodePoolAutoConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.NodePoolAutoConfigArgs]],
  nodePoolDefaults: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.NodePoolDefaultsArgs]],
  nodePools: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.container.v1beta1.inputs.NodePoolArgs]]],
  notificationConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.NotificationConfigArgs]],
  parent: besom.types.Output[scala.Option[String]],
  parentProductConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.ParentProductConfigArgs]],
  podSecurityPolicyConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.PodSecurityPolicyConfigArgs]],
  privateCluster: besom.types.Output[scala.Option[Boolean]],
  privateClusterConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.PrivateClusterConfigArgs]],
  project: besom.types.Output[scala.Option[String]],
  protectConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.ProtectConfigArgs]],
  releaseChannel: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.ReleaseChannelArgs]],
  resourceLabels: besom.types.Output[scala.Option[scala.Predef.Map[String, String]]],
  resourceUsageExportConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.ResourceUsageExportConfigArgs]],
  securityPostureConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.SecurityPostureConfigArgs]],
  shieldedNodes: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.ShieldedNodesArgs]],
  subnetwork: besom.types.Output[scala.Option[String]],
  tpuConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.TpuConfigArgs]],
  verticalPodAutoscaling: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.VerticalPodAutoscalingArgs]],
  workloadAltsConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.WorkloadAltsConfigArgs]],
  workloadCertificates: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.WorkloadCertificatesArgs]],
  workloadIdentityConfig: besom.types.Output[scala.Option[besom.api.googlenative.container.v1beta1.inputs.WorkloadIdentityConfigArgs]],
  zone: besom.types.Output[scala.Option[String]]
)

object ClusterArgs:
  def apply(
    addonsConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.AddonsConfigArgs] = scala.None,
    authenticatorGroupsConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.AuthenticatorGroupsConfigArgs] = scala.None,
    autopilot: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.AutopilotArgs] = scala.None,
    autoscaling: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.ClusterAutoscalingArgs] = scala.None,
    binaryAuthorization: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.BinaryAuthorizationArgs] = scala.None,
    clusterIpv4Cidr: besom.types.Input.Optional[String] = scala.None,
    clusterTelemetry: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.ClusterTelemetryArgs] = scala.None,
    conditions: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.container.v1beta1.inputs.StatusConditionArgs]]] = scala.None,
    confidentialNodes: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.ConfidentialNodesArgs] = scala.None,
    costManagementConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.CostManagementConfigArgs] = scala.None,
    databaseEncryption: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.DatabaseEncryptionArgs] = scala.None,
    defaultMaxPodsConstraint: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.MaxPodsConstraintArgs] = scala.None,
    description: besom.types.Input.Optional[String] = scala.None,
    enableK8sBetaApis: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.K8sBetaApiConfigArgs] = scala.None,
    enableKubernetesAlpha: besom.types.Input.Optional[Boolean] = scala.None,
    enableTpu: besom.types.Input.Optional[Boolean] = scala.None,
    enterpriseConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.EnterpriseConfigArgs] = scala.None,
    etag: besom.types.Input.Optional[String] = scala.None,
    fleet: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.FleetArgs] = scala.None,
    identityServiceConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.IdentityServiceConfigArgs] = scala.None,
    initialClusterVersion: besom.types.Input.Optional[String] = scala.None,
    initialNodeCount: besom.types.Input.Optional[Int] = scala.None,
    instanceGroupUrls: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    ipAllocationPolicy: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.IpAllocationPolicyArgs] = scala.None,
    legacyAbac: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.LegacyAbacArgs] = scala.None,
    location: besom.types.Input.Optional[String] = scala.None,
    locations: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    loggingConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.LoggingConfigArgs] = scala.None,
    loggingService: besom.types.Input.Optional[String] = scala.None,
    maintenancePolicy: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.MaintenancePolicyArgs] = scala.None,
    master: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.MasterArgs] = scala.None,
    masterAuth: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.MasterAuthArgs] = scala.None,
    masterAuthorizedNetworksConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.MasterAuthorizedNetworksConfigArgs] = scala.None,
    masterIpv4CidrBlock: besom.types.Input.Optional[String] = scala.None,
    meshCertificates: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.MeshCertificatesArgs] = scala.None,
    monitoringConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.MonitoringConfigArgs] = scala.None,
    monitoringService: besom.types.Input.Optional[String] = scala.None,
    name: besom.types.Input.Optional[String] = scala.None,
    network: besom.types.Input.Optional[String] = scala.None,
    networkConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.NetworkConfigArgs] = scala.None,
    networkPolicy: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.NetworkPolicyArgs] = scala.None,
    nodeConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.NodeConfigArgs] = scala.None,
    nodePoolAutoConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.NodePoolAutoConfigArgs] = scala.None,
    nodePoolDefaults: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.NodePoolDefaultsArgs] = scala.None,
    nodePools: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.container.v1beta1.inputs.NodePoolArgs]]] = scala.None,
    notificationConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.NotificationConfigArgs] = scala.None,
    parent: besom.types.Input.Optional[String] = scala.None,
    parentProductConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.ParentProductConfigArgs] = scala.None,
    podSecurityPolicyConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.PodSecurityPolicyConfigArgs] = scala.None,
    privateCluster: besom.types.Input.Optional[Boolean] = scala.None,
    privateClusterConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.PrivateClusterConfigArgs] = scala.None,
    project: besom.types.Input.Optional[String] = scala.None,
    protectConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.ProtectConfigArgs] = scala.None,
    releaseChannel: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.ReleaseChannelArgs] = scala.None,
    resourceLabels: besom.types.Input.Optional[scala.Predef.Map[String, besom.types.Input[String]]] = scala.None,
    resourceUsageExportConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.ResourceUsageExportConfigArgs] = scala.None,
    securityPostureConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.SecurityPostureConfigArgs] = scala.None,
    shieldedNodes: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.ShieldedNodesArgs] = scala.None,
    subnetwork: besom.types.Input.Optional[String] = scala.None,
    tpuConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.TpuConfigArgs] = scala.None,
    verticalPodAutoscaling: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.VerticalPodAutoscalingArgs] = scala.None,
    workloadAltsConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.WorkloadAltsConfigArgs] = scala.None,
    workloadCertificates: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.WorkloadCertificatesArgs] = scala.None,
    workloadIdentityConfig: besom.types.Input.Optional[besom.api.googlenative.container.v1beta1.inputs.WorkloadIdentityConfigArgs] = scala.None,
    zone: besom.types.Input.Optional[String] = scala.None
  )(using besom.types.Context): ClusterArgs =
    new ClusterArgs(
      addonsConfig = addonsConfig.asOptionOutput(isSecret = false),
      authenticatorGroupsConfig = authenticatorGroupsConfig.asOptionOutput(isSecret = false),
      autopilot = autopilot.asOptionOutput(isSecret = false),
      autoscaling = autoscaling.asOptionOutput(isSecret = false),
      binaryAuthorization = binaryAuthorization.asOptionOutput(isSecret = false),
      clusterIpv4Cidr = clusterIpv4Cidr.asOptionOutput(isSecret = false),
      clusterTelemetry = clusterTelemetry.asOptionOutput(isSecret = false),
      conditions = conditions.asOptionOutput(isSecret = false),
      confidentialNodes = confidentialNodes.asOptionOutput(isSecret = false),
      costManagementConfig = costManagementConfig.asOptionOutput(isSecret = false),
      databaseEncryption = databaseEncryption.asOptionOutput(isSecret = false),
      defaultMaxPodsConstraint = defaultMaxPodsConstraint.asOptionOutput(isSecret = false),
      description = description.asOptionOutput(isSecret = false),
      enableK8sBetaApis = enableK8sBetaApis.asOptionOutput(isSecret = false),
      enableKubernetesAlpha = enableKubernetesAlpha.asOptionOutput(isSecret = false),
      enableTpu = enableTpu.asOptionOutput(isSecret = false),
      enterpriseConfig = enterpriseConfig.asOptionOutput(isSecret = false),
      etag = etag.asOptionOutput(isSecret = false),
      fleet = fleet.asOptionOutput(isSecret = false),
      identityServiceConfig = identityServiceConfig.asOptionOutput(isSecret = false),
      initialClusterVersion = initialClusterVersion.asOptionOutput(isSecret = false),
      initialNodeCount = initialNodeCount.asOptionOutput(isSecret = false),
      instanceGroupUrls = instanceGroupUrls.asOptionOutput(isSecret = false),
      ipAllocationPolicy = ipAllocationPolicy.asOptionOutput(isSecret = false),
      legacyAbac = legacyAbac.asOptionOutput(isSecret = false),
      location = location.asOptionOutput(isSecret = false),
      locations = locations.asOptionOutput(isSecret = false),
      loggingConfig = loggingConfig.asOptionOutput(isSecret = false),
      loggingService = loggingService.asOptionOutput(isSecret = false),
      maintenancePolicy = maintenancePolicy.asOptionOutput(isSecret = false),
      master = master.asOptionOutput(isSecret = false),
      masterAuth = masterAuth.asOptionOutput(isSecret = false),
      masterAuthorizedNetworksConfig = masterAuthorizedNetworksConfig.asOptionOutput(isSecret = false),
      masterIpv4CidrBlock = masterIpv4CidrBlock.asOptionOutput(isSecret = false),
      meshCertificates = meshCertificates.asOptionOutput(isSecret = false),
      monitoringConfig = monitoringConfig.asOptionOutput(isSecret = false),
      monitoringService = monitoringService.asOptionOutput(isSecret = false),
      name = name.asOptionOutput(isSecret = false),
      network = network.asOptionOutput(isSecret = false),
      networkConfig = networkConfig.asOptionOutput(isSecret = false),
      networkPolicy = networkPolicy.asOptionOutput(isSecret = false),
      nodeConfig = nodeConfig.asOptionOutput(isSecret = false),
      nodePoolAutoConfig = nodePoolAutoConfig.asOptionOutput(isSecret = false),
      nodePoolDefaults = nodePoolDefaults.asOptionOutput(isSecret = false),
      nodePools = nodePools.asOptionOutput(isSecret = false),
      notificationConfig = notificationConfig.asOptionOutput(isSecret = false),
      parent = parent.asOptionOutput(isSecret = false),
      parentProductConfig = parentProductConfig.asOptionOutput(isSecret = false),
      podSecurityPolicyConfig = podSecurityPolicyConfig.asOptionOutput(isSecret = false),
      privateCluster = privateCluster.asOptionOutput(isSecret = false),
      privateClusterConfig = privateClusterConfig.asOptionOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      protectConfig = protectConfig.asOptionOutput(isSecret = false),
      releaseChannel = releaseChannel.asOptionOutput(isSecret = false),
      resourceLabels = resourceLabels.asOptionOutput(isSecret = false),
      resourceUsageExportConfig = resourceUsageExportConfig.asOptionOutput(isSecret = false),
      securityPostureConfig = securityPostureConfig.asOptionOutput(isSecret = false),
      shieldedNodes = shieldedNodes.asOptionOutput(isSecret = false),
      subnetwork = subnetwork.asOptionOutput(isSecret = false),
      tpuConfig = tpuConfig.asOptionOutput(isSecret = false),
      verticalPodAutoscaling = verticalPodAutoscaling.asOptionOutput(isSecret = false),
      workloadAltsConfig = workloadAltsConfig.asOptionOutput(isSecret = false),
      workloadCertificates = workloadCertificates.asOptionOutput(isSecret = false),
      workloadIdentityConfig = workloadIdentityConfig.asOptionOutput(isSecret = false),
      zone = zone.asOptionOutput(isSecret = false)
    )

  given encoder(using besom.types.Context): besom.types.Encoder[ClusterArgs] =
    besom.internal.Encoder.derived[ClusterArgs]
  given argsEncoder(using besom.types.Context): besom.types.ArgsEncoder[ClusterArgs] =
    besom.internal.ArgsEncoder.derived[ClusterArgs]






© 2015 - 2025 Weber Informatics LLC | Privacy Policy