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

src.osconfig.v1.PatchDeploymentArgs.scala Maven / Gradle / Ivy

package besom.api.googlenative.osconfig.v1

final case class PatchDeploymentArgs private(
  description: besom.types.Output[scala.Option[String]],
  duration: besom.types.Output[scala.Option[String]],
  instanceFilter: besom.types.Output[besom.api.googlenative.osconfig.v1.inputs.PatchInstanceFilterArgs],
  name: besom.types.Output[scala.Option[String]],
  oneTimeSchedule: besom.types.Output[besom.api.googlenative.osconfig.v1.inputs.OneTimeScheduleArgs],
  patchConfig: besom.types.Output[scala.Option[besom.api.googlenative.osconfig.v1.inputs.PatchConfigArgs]],
  patchDeploymentId: besom.types.Output[String],
  project: besom.types.Output[scala.Option[String]],
  recurringSchedule: besom.types.Output[besom.api.googlenative.osconfig.v1.inputs.RecurringScheduleArgs],
  rollout: besom.types.Output[scala.Option[besom.api.googlenative.osconfig.v1.inputs.PatchRolloutArgs]]
)

object PatchDeploymentArgs:
  def apply(
    description: besom.types.Input.Optional[String] = scala.None,
    duration: besom.types.Input.Optional[String] = scala.None,
    instanceFilter: besom.types.Input[besom.api.googlenative.osconfig.v1.inputs.PatchInstanceFilterArgs],
    name: besom.types.Input.Optional[String] = scala.None,
    oneTimeSchedule: besom.types.Input[besom.api.googlenative.osconfig.v1.inputs.OneTimeScheduleArgs],
    patchConfig: besom.types.Input.Optional[besom.api.googlenative.osconfig.v1.inputs.PatchConfigArgs] = scala.None,
    patchDeploymentId: besom.types.Input[String],
    project: besom.types.Input.Optional[String] = scala.None,
    recurringSchedule: besom.types.Input[besom.api.googlenative.osconfig.v1.inputs.RecurringScheduleArgs],
    rollout: besom.types.Input.Optional[besom.api.googlenative.osconfig.v1.inputs.PatchRolloutArgs] = scala.None
  )(using besom.types.Context): PatchDeploymentArgs =
    new PatchDeploymentArgs(
      description = description.asOptionOutput(isSecret = false),
      duration = duration.asOptionOutput(isSecret = false),
      instanceFilter = instanceFilter.asOutput(isSecret = false),
      name = name.asOptionOutput(isSecret = false),
      oneTimeSchedule = oneTimeSchedule.asOutput(isSecret = false),
      patchConfig = patchConfig.asOptionOutput(isSecret = false),
      patchDeploymentId = patchDeploymentId.asOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      recurringSchedule = recurringSchedule.asOutput(isSecret = false),
      rollout = rollout.asOptionOutput(isSecret = false)
    )

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






© 2015 - 2025 Weber Informatics LLC | Privacy Policy