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

src.compute.alpha.DiskArgs.scala Maven / Gradle / Ivy

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

final case class DiskArgs private(
  accessMode: besom.types.Output[scala.Option[besom.api.googlenative.compute.alpha.enums.DiskAccessMode]],
  architecture: besom.types.Output[scala.Option[besom.api.googlenative.compute.alpha.enums.DiskArchitecture]],
  asyncPrimaryDisk: besom.types.Output[scala.Option[besom.api.googlenative.compute.alpha.inputs.DiskAsyncReplicationArgs]],
  description: besom.types.Output[scala.Option[String]],
  diskEncryptionKey: besom.types.Output[scala.Option[besom.api.googlenative.compute.alpha.inputs.CustomerEncryptionKeyArgs]],
  enableConfidentialCompute: besom.types.Output[scala.Option[Boolean]],
  eraseWindowsVssSignature: besom.types.Output[scala.Option[Boolean]],
  guestOsFeatures: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.compute.alpha.inputs.GuestOsFeatureArgs]]],
  interface: besom.types.Output[scala.Option[besom.api.googlenative.compute.alpha.enums.DiskInterface]],
  labels: besom.types.Output[scala.Option[scala.Predef.Map[String, String]]],
  licenseCodes: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  licenses: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  locationHint: besom.types.Output[scala.Option[String]],
  multiWriter: besom.types.Output[scala.Option[Boolean]],
  name: besom.types.Output[scala.Option[String]],
  options: besom.types.Output[scala.Option[String]],
  params: besom.types.Output[scala.Option[besom.api.googlenative.compute.alpha.inputs.DiskParamsArgs]],
  physicalBlockSizeBytes: besom.types.Output[scala.Option[String]],
  project: besom.types.Output[scala.Option[String]],
  provisionedIops: besom.types.Output[scala.Option[String]],
  provisionedThroughput: besom.types.Output[scala.Option[String]],
  replicaZones: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  requestId: besom.types.Output[scala.Option[String]],
  resourcePolicies: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  sizeGb: besom.types.Output[scala.Option[String]],
  sourceDisk: besom.types.Output[scala.Option[String]],
  sourceImage: besom.types.Output[scala.Option[String]],
  sourceImageEncryptionKey: besom.types.Output[scala.Option[besom.api.googlenative.compute.alpha.inputs.CustomerEncryptionKeyArgs]],
  sourceInstantSnapshot: besom.types.Output[scala.Option[String]],
  sourceSnapshot: besom.types.Output[scala.Option[String]],
  sourceSnapshotEncryptionKey: besom.types.Output[scala.Option[besom.api.googlenative.compute.alpha.inputs.CustomerEncryptionKeyArgs]],
  sourceStorageObject: besom.types.Output[scala.Option[String]],
  storagePool: besom.types.Output[scala.Option[String]],
  storageType: besom.types.Output[scala.Option[besom.api.googlenative.compute.alpha.enums.DiskStorageType]],
  `type`: besom.types.Output[scala.Option[String]],
  userLicenses: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  zone: besom.types.Output[scala.Option[String]]
)

object DiskArgs:
  def apply(
    accessMode: besom.types.Input.Optional[besom.api.googlenative.compute.alpha.enums.DiskAccessMode] = scala.None,
    architecture: besom.types.Input.Optional[besom.api.googlenative.compute.alpha.enums.DiskArchitecture] = scala.None,
    asyncPrimaryDisk: besom.types.Input.Optional[besom.api.googlenative.compute.alpha.inputs.DiskAsyncReplicationArgs] = scala.None,
    description: besom.types.Input.Optional[String] = scala.None,
    diskEncryptionKey: besom.types.Input.Optional[besom.api.googlenative.compute.alpha.inputs.CustomerEncryptionKeyArgs] = scala.None,
    enableConfidentialCompute: besom.types.Input.Optional[Boolean] = scala.None,
    eraseWindowsVssSignature: besom.types.Input.Optional[Boolean] = scala.None,
    guestOsFeatures: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.compute.alpha.inputs.GuestOsFeatureArgs]]] = scala.None,
    interface: besom.types.Input.Optional[besom.api.googlenative.compute.alpha.enums.DiskInterface] = scala.None,
    labels: besom.types.Input.Optional[scala.Predef.Map[String, besom.types.Input[String]]] = scala.None,
    licenseCodes: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    licenses: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    locationHint: besom.types.Input.Optional[String] = scala.None,
    multiWriter: besom.types.Input.Optional[Boolean] = scala.None,
    name: besom.types.Input.Optional[String] = scala.None,
    options: besom.types.Input.Optional[String] = scala.None,
    params: besom.types.Input.Optional[besom.api.googlenative.compute.alpha.inputs.DiskParamsArgs] = scala.None,
    physicalBlockSizeBytes: besom.types.Input.Optional[String] = scala.None,
    project: besom.types.Input.Optional[String] = scala.None,
    provisionedIops: besom.types.Input.Optional[String] = scala.None,
    provisionedThroughput: besom.types.Input.Optional[String] = scala.None,
    replicaZones: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    requestId: besom.types.Input.Optional[String] = scala.None,
    resourcePolicies: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    sizeGb: besom.types.Input.Optional[String] = scala.None,
    sourceDisk: besom.types.Input.Optional[String] = scala.None,
    sourceImage: besom.types.Input.Optional[String] = scala.None,
    sourceImageEncryptionKey: besom.types.Input.Optional[besom.api.googlenative.compute.alpha.inputs.CustomerEncryptionKeyArgs] = scala.None,
    sourceInstantSnapshot: besom.types.Input.Optional[String] = scala.None,
    sourceSnapshot: besom.types.Input.Optional[String] = scala.None,
    sourceSnapshotEncryptionKey: besom.types.Input.Optional[besom.api.googlenative.compute.alpha.inputs.CustomerEncryptionKeyArgs] = scala.None,
    sourceStorageObject: besom.types.Input.Optional[String] = scala.None,
    storagePool: besom.types.Input.Optional[String] = scala.None,
    storageType: besom.types.Input.Optional[besom.api.googlenative.compute.alpha.enums.DiskStorageType] = scala.None,
    `type`: besom.types.Input.Optional[String] = scala.None,
    userLicenses: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    zone: besom.types.Input.Optional[String] = scala.None
  )(using besom.types.Context): DiskArgs =
    new DiskArgs(
      accessMode = accessMode.asOptionOutput(isSecret = false),
      architecture = architecture.asOptionOutput(isSecret = false),
      asyncPrimaryDisk = asyncPrimaryDisk.asOptionOutput(isSecret = false),
      description = description.asOptionOutput(isSecret = false),
      diskEncryptionKey = diskEncryptionKey.asOptionOutput(isSecret = false),
      enableConfidentialCompute = enableConfidentialCompute.asOptionOutput(isSecret = false),
      eraseWindowsVssSignature = eraseWindowsVssSignature.asOptionOutput(isSecret = false),
      guestOsFeatures = guestOsFeatures.asOptionOutput(isSecret = false),
      interface = interface.asOptionOutput(isSecret = false),
      labels = labels.asOptionOutput(isSecret = false),
      licenseCodes = licenseCodes.asOptionOutput(isSecret = false),
      licenses = licenses.asOptionOutput(isSecret = false),
      locationHint = locationHint.asOptionOutput(isSecret = false),
      multiWriter = multiWriter.asOptionOutput(isSecret = false),
      name = name.asOptionOutput(isSecret = false),
      options = options.asOptionOutput(isSecret = false),
      params = params.asOptionOutput(isSecret = false),
      physicalBlockSizeBytes = physicalBlockSizeBytes.asOptionOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      provisionedIops = provisionedIops.asOptionOutput(isSecret = false),
      provisionedThroughput = provisionedThroughput.asOptionOutput(isSecret = false),
      replicaZones = replicaZones.asOptionOutput(isSecret = false),
      requestId = requestId.asOptionOutput(isSecret = false),
      resourcePolicies = resourcePolicies.asOptionOutput(isSecret = false),
      sizeGb = sizeGb.asOptionOutput(isSecret = false),
      sourceDisk = sourceDisk.asOptionOutput(isSecret = false),
      sourceImage = sourceImage.asOptionOutput(isSecret = false),
      sourceImageEncryptionKey = sourceImageEncryptionKey.asOptionOutput(isSecret = false),
      sourceInstantSnapshot = sourceInstantSnapshot.asOptionOutput(isSecret = false),
      sourceSnapshot = sourceSnapshot.asOptionOutput(isSecret = false),
      sourceSnapshotEncryptionKey = sourceSnapshotEncryptionKey.asOptionOutput(isSecret = false),
      sourceStorageObject = sourceStorageObject.asOptionOutput(isSecret = false),
      storagePool = storagePool.asOptionOutput(isSecret = false),
      storageType = storageType.asOptionOutput(isSecret = false),
      `type` = `type`.asOptionOutput(isSecret = false),
      userLicenses = userLicenses.asOptionOutput(isSecret = false),
      zone = zone.asOptionOutput(isSecret = false)
    )

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






© 2015 - 2025 Weber Informatics LLC | Privacy Policy