
src.compute.v1.InstanceArgs.scala Maven / Gradle / Ivy
package besom.api.googlenative.compute.v1
final case class InstanceArgs private(
advancedMachineFeatures: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.AdvancedMachineFeaturesArgs]],
canIpForward: besom.types.Output[scala.Option[Boolean]],
confidentialInstanceConfig: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.ConfidentialInstanceConfigArgs]],
deletionProtection: besom.types.Output[scala.Option[Boolean]],
description: besom.types.Output[scala.Option[String]],
disks: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.compute.v1.inputs.AttachedDiskArgs]]],
displayDevice: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.DisplayDeviceArgs]],
guestAccelerators: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.compute.v1.inputs.AcceleratorConfigArgs]]],
hostname: besom.types.Output[scala.Option[String]],
instanceEncryptionKey: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.CustomerEncryptionKeyArgs]],
keyRevocationActionType: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.enums.InstanceKeyRevocationActionType]],
labels: besom.types.Output[scala.Option[scala.Predef.Map[String, String]]],
machineType: besom.types.Output[scala.Option[String]],
metadata: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.MetadataArgs]],
minCpuPlatform: besom.types.Output[scala.Option[String]],
name: besom.types.Output[scala.Option[String]],
networkInterfaces: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.compute.v1.inputs.NetworkInterfaceArgs]]],
networkPerformanceConfig: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.NetworkPerformanceConfigArgs]],
params: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.InstanceParamsArgs]],
privateIpv6GoogleAccess: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.enums.InstancePrivateIpv6GoogleAccess]],
project: besom.types.Output[scala.Option[String]],
requestId: besom.types.Output[scala.Option[String]],
reservationAffinity: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.ReservationAffinityArgs]],
resourcePolicies: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
scheduling: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.SchedulingArgs]],
serviceAccounts: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.compute.v1.inputs.ServiceAccountArgs]]],
shieldedInstanceConfig: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.ShieldedInstanceConfigArgs]],
shieldedInstanceIntegrityPolicy: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.ShieldedInstanceIntegrityPolicyArgs]],
sourceInstanceTemplate: besom.types.Output[scala.Option[String]],
sourceMachineImage: besom.types.Output[scala.Option[String]],
sourceMachineImageEncryptionKey: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.CustomerEncryptionKeyArgs]],
tags: besom.types.Output[scala.Option[besom.api.googlenative.compute.v1.inputs.TagsArgs]],
zone: besom.types.Output[scala.Option[String]]
)
object InstanceArgs:
def apply(
advancedMachineFeatures: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.AdvancedMachineFeaturesArgs] = scala.None,
canIpForward: besom.types.Input.Optional[Boolean] = scala.None,
confidentialInstanceConfig: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.ConfidentialInstanceConfigArgs] = scala.None,
deletionProtection: besom.types.Input.Optional[Boolean] = scala.None,
description: besom.types.Input.Optional[String] = scala.None,
disks: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.compute.v1.inputs.AttachedDiskArgs]]] = scala.None,
displayDevice: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.DisplayDeviceArgs] = scala.None,
guestAccelerators: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.compute.v1.inputs.AcceleratorConfigArgs]]] = scala.None,
hostname: besom.types.Input.Optional[String] = scala.None,
instanceEncryptionKey: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.CustomerEncryptionKeyArgs] = scala.None,
keyRevocationActionType: besom.types.Input.Optional[besom.api.googlenative.compute.v1.enums.InstanceKeyRevocationActionType] = scala.None,
labels: besom.types.Input.Optional[scala.Predef.Map[String, besom.types.Input[String]]] = scala.None,
machineType: besom.types.Input.Optional[String] = scala.None,
metadata: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.MetadataArgs] = scala.None,
minCpuPlatform: besom.types.Input.Optional[String] = scala.None,
name: besom.types.Input.Optional[String] = scala.None,
networkInterfaces: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.compute.v1.inputs.NetworkInterfaceArgs]]] = scala.None,
networkPerformanceConfig: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.NetworkPerformanceConfigArgs] = scala.None,
params: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.InstanceParamsArgs] = scala.None,
privateIpv6GoogleAccess: besom.types.Input.Optional[besom.api.googlenative.compute.v1.enums.InstancePrivateIpv6GoogleAccess] = scala.None,
project: besom.types.Input.Optional[String] = scala.None,
requestId: besom.types.Input.Optional[String] = scala.None,
reservationAffinity: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.ReservationAffinityArgs] = scala.None,
resourcePolicies: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
scheduling: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.SchedulingArgs] = scala.None,
serviceAccounts: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.compute.v1.inputs.ServiceAccountArgs]]] = scala.None,
shieldedInstanceConfig: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.ShieldedInstanceConfigArgs] = scala.None,
shieldedInstanceIntegrityPolicy: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.ShieldedInstanceIntegrityPolicyArgs] = scala.None,
sourceInstanceTemplate: besom.types.Input.Optional[String] = scala.None,
sourceMachineImage: besom.types.Input.Optional[String] = scala.None,
sourceMachineImageEncryptionKey: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.CustomerEncryptionKeyArgs] = scala.None,
tags: besom.types.Input.Optional[besom.api.googlenative.compute.v1.inputs.TagsArgs] = scala.None,
zone: besom.types.Input.Optional[String] = scala.None
)(using besom.types.Context): InstanceArgs =
new InstanceArgs(
advancedMachineFeatures = advancedMachineFeatures.asOptionOutput(isSecret = false),
canIpForward = canIpForward.asOptionOutput(isSecret = false),
confidentialInstanceConfig = confidentialInstanceConfig.asOptionOutput(isSecret = false),
deletionProtection = deletionProtection.asOptionOutput(isSecret = false),
description = description.asOptionOutput(isSecret = false),
disks = disks.asOptionOutput(isSecret = false),
displayDevice = displayDevice.asOptionOutput(isSecret = false),
guestAccelerators = guestAccelerators.asOptionOutput(isSecret = false),
hostname = hostname.asOptionOutput(isSecret = false),
instanceEncryptionKey = instanceEncryptionKey.asOptionOutput(isSecret = false),
keyRevocationActionType = keyRevocationActionType.asOptionOutput(isSecret = false),
labels = labels.asOptionOutput(isSecret = false),
machineType = machineType.asOptionOutput(isSecret = false),
metadata = metadata.asOptionOutput(isSecret = false),
minCpuPlatform = minCpuPlatform.asOptionOutput(isSecret = false),
name = name.asOptionOutput(isSecret = false),
networkInterfaces = networkInterfaces.asOptionOutput(isSecret = false),
networkPerformanceConfig = networkPerformanceConfig.asOptionOutput(isSecret = false),
params = params.asOptionOutput(isSecret = false),
privateIpv6GoogleAccess = privateIpv6GoogleAccess.asOptionOutput(isSecret = false),
project = project.asOptionOutput(isSecret = false),
requestId = requestId.asOptionOutput(isSecret = false),
reservationAffinity = reservationAffinity.asOptionOutput(isSecret = false),
resourcePolicies = resourcePolicies.asOptionOutput(isSecret = false),
scheduling = scheduling.asOptionOutput(isSecret = false),
serviceAccounts = serviceAccounts.asOptionOutput(isSecret = false),
shieldedInstanceConfig = shieldedInstanceConfig.asOptionOutput(isSecret = false),
shieldedInstanceIntegrityPolicy = shieldedInstanceIntegrityPolicy.asOptionOutput(isSecret = false),
sourceInstanceTemplate = sourceInstanceTemplate.asOptionOutput(isSecret = false),
sourceMachineImage = sourceMachineImage.asOptionOutput(isSecret = false),
sourceMachineImageEncryptionKey = sourceMachineImageEncryptionKey.asOptionOutput(isSecret = false),
tags = tags.asOptionOutput(isSecret = false),
zone = zone.asOptionOutput(isSecret = false)
)
given encoder(using besom.types.Context): besom.types.Encoder[InstanceArgs] =
besom.internal.Encoder.derived[InstanceArgs]
given argsEncoder(using besom.types.Context): besom.types.ArgsEncoder[InstanceArgs] =
besom.internal.ArgsEncoder.derived[InstanceArgs]
© 2015 - 2025 Weber Informatics LLC | Privacy Policy