
src.compute.alpha.NodeGroup.scala Maven / Gradle / Ivy
package besom.api.googlenative.compute.alpha
final case class NodeGroup private(
urn: besom.types.Output[besom.types.URN],
id: besom.types.Output[besom.types.ResourceId],
autoscalingPolicy: besom.types.Output[besom.api.googlenative.compute.alpha.outputs.NodeGroupAutoscalingPolicyResponse],
creationTimestamp: besom.types.Output[String],
description: besom.types.Output[String],
fingerprint: besom.types.Output[String],
initialNodeCount: besom.types.Output[Int],
kind: besom.types.Output[String],
locationHint: besom.types.Output[String],
maintenanceInterval: besom.types.Output[String],
maintenancePolicy: besom.types.Output[String],
maintenanceWindow: besom.types.Output[besom.api.googlenative.compute.alpha.outputs.NodeGroupMaintenanceWindowResponse],
name: besom.types.Output[String],
nodeTemplate: besom.types.Output[String],
project: besom.types.Output[String],
requestId: besom.types.Output[scala.Option[String]],
selfLink: besom.types.Output[String],
selfLinkWithId: besom.types.Output[String],
shareSettings: besom.types.Output[besom.api.googlenative.compute.alpha.outputs.ShareSettingsResponse],
size: besom.types.Output[Int],
status: besom.types.Output[String],
zone: besom.types.Output[String]
) extends besom.CustomResource
object NodeGroup extends besom.ResourceCompanion[NodeGroup]:
/** Resource constructor for NodeGroup.
*
* @param name [[besom.util.NonEmptyString]] The unique (stack-wise) name of the resource in Pulumi state (not on provider's side).
* NonEmptyString is inferred automatically from non-empty string literals, even when interpolated. If you encounter any
* issues with this, please try using `: NonEmptyString` type annotation. If you need to convert a dynamically generated
* string to NonEmptyString, use `NonEmptyString.apply` method - `NonEmptyString(str): Option[NonEmptyString]`.
*
* @param args [[NodeGroupArgs]] The configuration to use to create this resource.
*
* @param opts [[besom.CustomResourceOptions]] Resource options to use for this resource.
* Defaults to empty options. If you need to set some options, use [[besom.opts]] function to create them, for example:
*
* {{{
* val res = NodeGroup(
* "my-resource",
* NodeGroupArgs(...), // your args
* opts(provider = myProvider)
* )
* }}}
*/
def apply(using ctx: besom.types.Context)(
name: besom.util.NonEmptyString,
args: NodeGroupArgs,
opts: besom.ResourceOptsVariant.Custom ?=> besom.CustomResourceOptions = besom.CustomResourceOptions()
): besom.types.Output[NodeGroup] =
ctx.readOrRegisterResource[NodeGroup, NodeGroupArgs]("google-native:compute/alpha:NodeGroup", name, args, opts(using besom.ResourceOptsVariant.Custom))
private[besom] def typeToken: besom.types.ResourceType = "google-native:compute/alpha:NodeGroup"
given resourceDecoder(using besom.types.Context): besom.types.ResourceDecoder[NodeGroup] =
besom.internal.ResourceDecoder.derived[NodeGroup]
given decoder(using besom.types.Context): besom.types.Decoder[NodeGroup] =
besom.internal.Decoder.customResourceDecoder[NodeGroup]
given outputOps: {} with
extension(output: besom.types.Output[NodeGroup])
def urn : besom.types.Output[besom.types.URN] = output.flatMap(_.urn)
def id : besom.types.Output[besom.types.ResourceId] = output.flatMap(_.id)
def autoscalingPolicy : besom.types.Output[besom.api.googlenative.compute.alpha.outputs.NodeGroupAutoscalingPolicyResponse] = output.flatMap(_.autoscalingPolicy)
def creationTimestamp : besom.types.Output[String] = output.flatMap(_.creationTimestamp)
def description : besom.types.Output[String] = output.flatMap(_.description)
def fingerprint : besom.types.Output[String] = output.flatMap(_.fingerprint)
def initialNodeCount : besom.types.Output[Int] = output.flatMap(_.initialNodeCount)
def kind : besom.types.Output[String] = output.flatMap(_.kind)
def locationHint : besom.types.Output[String] = output.flatMap(_.locationHint)
def maintenanceInterval : besom.types.Output[String] = output.flatMap(_.maintenanceInterval)
def maintenancePolicy : besom.types.Output[String] = output.flatMap(_.maintenancePolicy)
def maintenanceWindow : besom.types.Output[besom.api.googlenative.compute.alpha.outputs.NodeGroupMaintenanceWindowResponse] = output.flatMap(_.maintenanceWindow)
def name : besom.types.Output[String] = output.flatMap(_.name)
def nodeTemplate : besom.types.Output[String] = output.flatMap(_.nodeTemplate)
def project : besom.types.Output[String] = output.flatMap(_.project)
def requestId : besom.types.Output[scala.Option[String]] = output.flatMap(_.requestId)
def selfLink : besom.types.Output[String] = output.flatMap(_.selfLink)
def selfLinkWithId : besom.types.Output[String] = output.flatMap(_.selfLinkWithId)
def shareSettings : besom.types.Output[besom.api.googlenative.compute.alpha.outputs.ShareSettingsResponse] = output.flatMap(_.shareSettings)
def size : besom.types.Output[Int] = output.flatMap(_.size)
def status : besom.types.Output[String] = output.flatMap(_.status)
def zone : besom.types.Output[String] = output.flatMap(_.zone)
© 2015 - 2025 Weber Informatics LLC | Privacy Policy