Package-level declarations

Types

Link copied to clipboard
data class AptRepositoryArgs(val archiveType: Output<AptRepositoryArchiveType>? = null, val components: Output<List<String>>, val distribution: Output<String>, val gpgKey: Output<String>? = null, val uri: Output<String>) : ConvertibleToJava<AptRepositoryArgs>

Represents a single Apt package repository. This repository is added to a repo file that is stored at /etc/apt/sources.list.d/google_osconfig.list.

Link copied to clipboard
Link copied to clipboard
data class AptSettingsArgs(val excludes: Output<List<String>>? = null, val exclusivePackages: Output<List<String>>? = null, val type: Output<AptSettingsType>? = null) : ConvertibleToJava<AptSettingsArgs>

Apt patching is completed by executing apt-get update && apt-get upgrade. Additional options can be set to control how this is executed.

Link copied to clipboard
Link copied to clipboard
data class AssignmentArgs(val groupLabels: Output<List<AssignmentGroupLabelArgs>>? = null, val instanceNamePrefixes: Output<List<String>>? = null, val instances: Output<List<String>>? = null, val osTypes: Output<List<AssignmentOsTypeArgs>>? = null, val zones: Output<List<String>>? = null) : ConvertibleToJava<AssignmentArgs>

An assignment represents the group or groups of VM instances that the policy applies to. If an assignment is empty, it applies to all VM instances. Otherwise, the targeted VM instances must meet all the criteria specified. So if both labels and zones are specified, the policy applies to VM instances with those labels and in those zones.

Link copied to clipboard
Link copied to clipboard
data class AssignmentGroupLabelArgs(val labels: Output<Map<String, String>>? = null) : ConvertibleToJava<AssignmentGroupLabelArgs>

Represents a group of VM intances that can be identified as having all these labels, for example "env=prod and app=web".

Link copied to clipboard
data class AssignmentOsTypeArgs(val osArchitecture: Output<String>? = null, val osShortName: Output<String>? = null, val osVersion: Output<String>? = null) : ConvertibleToJava<AssignmentOsTypeArgs>

Defines the criteria for selecting VM Instances by OS type.

Link copied to clipboard
data class ExecStepArgs(val linuxExecStepConfig: Output<ExecStepConfigArgs>? = null, val windowsExecStepConfig: Output<ExecStepConfigArgs>? = null) : ConvertibleToJava<ExecStepArgs>

A step that runs an executable for a PatchJob.

Link copied to clipboard
Link copied to clipboard
data class ExecStepConfigArgs(val allowedSuccessCodes: Output<List<Int>>? = null, val gcsObject: Output<GcsObjectArgs>? = null, val interpreter: Output<ExecStepConfigInterpreter>? = null, val localPath: Output<String>? = null) : ConvertibleToJava<ExecStepConfigArgs>

Common configurations for an ExecStep.

Link copied to clipboard
Link copied to clipboard
data class FixedOrPercentArgs(val fixed: Output<Int>? = null, val percent: Output<Int>? = null) : ConvertibleToJava<FixedOrPercentArgs>

Message encapsulating a value that can be either absolute ("fixed") or relative ("percent") to a value.

Link copied to clipboard
Link copied to clipboard
data class GcsObjectArgs(val bucket: Output<String>, val generationNumber: Output<String>, val object: Output<String>) : ConvertibleToJava<GcsObjectArgs>

Google Cloud Storage object representation.

Link copied to clipboard
Link copied to clipboard
data class GetGuestPolicyPlainArgs(val guestPolicyId: String, val project: String? = null) : ConvertibleToJava<GetGuestPolicyPlainArgs>
Link copied to clipboard
data class GetPatchDeploymentPlainArgs(val patchDeploymentId: String, val project: String? = null) : ConvertibleToJava<GetPatchDeploymentPlainArgs>
Link copied to clipboard
data class GooRepositoryArgs(val name: Output<String>, val url: Output<String>) : ConvertibleToJava<GooRepositoryArgs>

Represents a Goo package repository. These is added to a repo file that is stored at C:/ProgramData/GooGet/repos/google_osconfig.repo.

Link copied to clipboard
Link copied to clipboard
class GooSettingsArgs : ConvertibleToJava<GooSettingsArgs>

Googet patching is performed by running googet update.

Link copied to clipboard
Link copied to clipboard
data class MonthlyScheduleArgs(val monthDay: Output<Int>, val weekDayOfMonth: Output<WeekDayOfMonthArgs>) : ConvertibleToJava<MonthlyScheduleArgs>

Represents a monthly schedule. An example of a valid monthly schedule is "on the third Tuesday of the month" or "on the 15th of the month".

Link copied to clipboard
data class OneTimeScheduleArgs(val executeTime: Output<String>) : ConvertibleToJava<OneTimeScheduleArgs>

Sets the time for a one time patch deployment. Timestamp is in RFC3339 text format.

Link copied to clipboard
data class PackageArgs(val desiredState: Output<PackageDesiredState>? = null, val manager: Output<PackageManager>? = null, val name: Output<String>) : ConvertibleToJava<PackageArgs>

Package is a reference to the software package to be installed or removed. The agent on the VM instance uses the system package manager to apply the config. These are the commands that the agent uses to install or remove packages. Apt install: apt-get update && apt-get -y install package1 package2 package3 remove: apt-get -y remove package1 package2 package3 Yum install: yum -y install package1 package2 package3 remove: yum -y remove package1 package2 package3 Zypper install: zypper install package1 package2 package3 remove: zypper rm package1 package2 Googet install: googet -noconfirm install package1 package2 package3 remove: googet -noconfirm remove package1 package2 package3

Link copied to clipboard
Link copied to clipboard
data class PackageRepositoryArgs(val apt: Output<AptRepositoryArgs>? = null, val goo: Output<GooRepositoryArgs>? = null, val yum: Output<YumRepositoryArgs>? = null, val zypper: Output<ZypperRepositoryArgs>? = null) : ConvertibleToJava<PackageRepositoryArgs>

A package repository.

Link copied to clipboard
data class PatchConfigArgs(val apt: Output<AptSettingsArgs>? = null, val goo: Output<GooSettingsArgs>? = null, val migInstancesAllowed: Output<Boolean>? = null, val postStep: Output<ExecStepArgs>? = null, val preStep: Output<ExecStepArgs>? = null, val rebootConfig: Output<PatchConfigRebootConfig>? = null, val windowsUpdate: Output<WindowsUpdateSettingsArgs>? = null, val yum: Output<YumSettingsArgs>? = null, val zypper: Output<ZypperSettingsArgs>? = null) : ConvertibleToJava<PatchConfigArgs>

Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance.

Link copied to clipboard
Link copied to clipboard
data class PatchInstanceFilterArgs(val all: Output<Boolean>? = null, val groupLabels: Output<List<PatchInstanceFilterGroupLabelArgs>>? = null, val instanceNamePrefixes: Output<List<String>>? = null, val instances: Output<List<String>>? = null, val zones: Output<List<String>>? = null) : ConvertibleToJava<PatchInstanceFilterArgs>

A filter to target VM instances for patching. The targeted VMs must meet all criteria specified. So if both labels and zones are specified, the patch job targets only VMs with those labels and in those zones.

Link copied to clipboard
data class PatchInstanceFilterGroupLabelArgs(val labels: Output<Map<String, String>>? = null) : ConvertibleToJava<PatchInstanceFilterGroupLabelArgs>

Represents a group of VMs that can be identified as having all these labels, for example "env=prod and app=web".

Link copied to clipboard
data class PatchRolloutArgs(val disruptionBudget: Output<FixedOrPercentArgs>? = null, val mode: Output<PatchRolloutMode>? = null) : ConvertibleToJava<PatchRolloutArgs>

Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs.

Link copied to clipboard
Link copied to clipboard
data class RecurringScheduleArgs(val endTime: Output<String>? = null, val frequency: Output<RecurringScheduleFrequency>, val monthly: Output<MonthlyScheduleArgs>, val startTime: Output<String>? = null, val timeOfDay: Output<TimeOfDayArgs>, val timeZone: Output<TimeZoneArgs>, val weekly: Output<WeeklyScheduleArgs>) : ConvertibleToJava<RecurringScheduleArgs>

Sets the time for recurring patch deployments.

Link copied to clipboard
data class SoftwareRecipeArgs(val artifacts: Output<List<SoftwareRecipeArtifactArgs>>? = null, val desiredState: Output<SoftwareRecipeDesiredState>? = null, val installSteps: Output<List<SoftwareRecipeStepArgs>>? = null, val name: Output<String>, val updateSteps: Output<List<SoftwareRecipeStepArgs>>? = null, val version: Output<String>? = null) : ConvertibleToJava<SoftwareRecipeArgs>

A software recipe is a set of instructions for installing and configuring a piece of software. It consists of a set of artifacts that are downloaded, and a set of steps that install, configure, and/or update the software. Recipes support installing and updating software from artifacts in the following formats: Zip archive, Tar archive, Windows MSI, Debian package, and RPM package. Additionally, recipes support executing a script (either defined in a file or directly in this api) in bash, sh, cmd, and powershell. Updating a software recipe If a recipe is assigned to an instance and there is a recipe with the same name but a lower version already installed and the assigned state of the recipe is UPDATED, then the recipe is updated to the new version. Script Working Directories Each script or execution step is run in its own temporary directory which is deleted after completing the step.

Link copied to clipboard
Link copied to clipboard
data class SoftwareRecipeArtifactArgs(val allowInsecure: Output<Boolean>? = null, val gcs: Output<SoftwareRecipeArtifactGcsArgs>? = null, val id: Output<String>, val remote: Output<SoftwareRecipeArtifactRemoteArgs>? = null) : ConvertibleToJava<SoftwareRecipeArtifactArgs>

Specifies a resource to be used in the recipe.

Link copied to clipboard
data class SoftwareRecipeArtifactGcsArgs(val bucket: Output<String>? = null, val generation: Output<String>? = null, val object: Output<String>? = null) : ConvertibleToJava<SoftwareRecipeArtifactGcsArgs>

Specifies an artifact available as a Google Cloud Storage object.

Link copied to clipboard
data class SoftwareRecipeArtifactRemoteArgs(val checksum: Output<String>? = null, val uri: Output<String>? = null) : ConvertibleToJava<SoftwareRecipeArtifactRemoteArgs>

Specifies an artifact available via some URI.

Link copied to clipboard
data class SoftwareRecipeStepArgs(val archiveExtraction: Output<SoftwareRecipeStepExtractArchiveArgs>? = null, val dpkgInstallation: Output<SoftwareRecipeStepInstallDpkgArgs>? = null, val fileCopy: Output<SoftwareRecipeStepCopyFileArgs>? = null, val fileExec: Output<SoftwareRecipeStepExecFileArgs>? = null, val msiInstallation: Output<SoftwareRecipeStepInstallMsiArgs>? = null, val rpmInstallation: Output<SoftwareRecipeStepInstallRpmArgs>? = null, val scriptRun: Output<SoftwareRecipeStepRunScriptArgs>? = null) : ConvertibleToJava<SoftwareRecipeStepArgs>

An action that can be taken as part of installing or updating a recipe.

Link copied to clipboard
data class SoftwareRecipeStepCopyFileArgs(val artifactId: Output<String>, val destination: Output<String>, val overwrite: Output<Boolean>? = null, val permissions: Output<String>? = null) : ConvertibleToJava<SoftwareRecipeStepCopyFileArgs>

Copies the artifact to the specified path on the instance.

Link copied to clipboard
data class SoftwareRecipeStepExecFileArgs(val allowedExitCodes: Output<List<Int>>? = null, val args: Output<List<String>>? = null, val artifactId: Output<String>? = null, val localPath: Output<String>? = null) : ConvertibleToJava<SoftwareRecipeStepExecFileArgs>

Executes an artifact or local file.

Link copied to clipboard
data class SoftwareRecipeStepExtractArchiveArgs(val artifactId: Output<String>, val destination: Output<String>? = null, val type: Output<SoftwareRecipeStepExtractArchiveType>) : ConvertibleToJava<SoftwareRecipeStepExtractArchiveArgs>

Extracts an archive of the type specified in the specified directory.

Link copied to clipboard
data class SoftwareRecipeStepInstallDpkgArgs(val artifactId: Output<String>) : ConvertibleToJava<SoftwareRecipeStepInstallDpkgArgs>

Installs a deb via dpkg.

Link copied to clipboard
data class SoftwareRecipeStepInstallMsiArgs(val allowedExitCodes: Output<List<Int>>? = null, val artifactId: Output<String>, val flags: Output<List<String>>? = null) : ConvertibleToJava<SoftwareRecipeStepInstallMsiArgs>

Installs an MSI file.

Link copied to clipboard
data class SoftwareRecipeStepInstallRpmArgs(val artifactId: Output<String>) : ConvertibleToJava<SoftwareRecipeStepInstallRpmArgs>

Installs an rpm file via the rpm utility.

Link copied to clipboard
data class SoftwareRecipeStepRunScriptArgs(val allowedExitCodes: Output<List<Int>>? = null, val interpreter: Output<SoftwareRecipeStepRunScriptInterpreter>? = null, val script: Output<String>) : ConvertibleToJava<SoftwareRecipeStepRunScriptArgs>

Runs a script through an interpreter.

Link copied to clipboard
data class TimeOfDayArgs(val hours: Output<Int>? = null, val minutes: Output<Int>? = null, val nanos: Output<Int>? = null, val seconds: Output<Int>? = null) : ConvertibleToJava<TimeOfDayArgs>

Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and google.protobuf.Timestamp.

Link copied to clipboard
Link copied to clipboard
data class TimeZoneArgs(val id: Output<String>? = null, val version: Output<String>? = null) : ConvertibleToJava<TimeZoneArgs>

Represents a time zone from the IANA Time Zone Database.

Link copied to clipboard
Link copied to clipboard
data class WeekDayOfMonthArgs(val dayOfWeek: Output<WeekDayOfMonthDayOfWeek>, val dayOffset: Output<Int>? = null, val weekOrdinal: Output<Int>) : ConvertibleToJava<WeekDayOfMonthArgs>

Represents one week day in a month. An example is "the 4th Sunday".

Link copied to clipboard
Link copied to clipboard
data class WeeklyScheduleArgs(val dayOfWeek: Output<WeeklyScheduleDayOfWeek>) : ConvertibleToJava<WeeklyScheduleArgs>

Represents a weekly schedule.

Link copied to clipboard
Link copied to clipboard
data class WindowsUpdateSettingsArgs(val classifications: Output<List<WindowsUpdateSettingsClassificationsItem>>? = null, val excludes: Output<List<String>>? = null, val exclusivePatches: Output<List<String>>? = null) : ConvertibleToJava<WindowsUpdateSettingsArgs>

Windows patching is performed using the Windows Update Agent.

Link copied to clipboard
data class YumRepositoryArgs(val baseUrl: Output<String>, val displayName: Output<String>? = null, val gpgKeys: Output<List<String>>? = null, val id: Output<String>) : ConvertibleToJava<YumRepositoryArgs>

Represents a single Yum package repository. This repository is added to a repo file that is stored at /etc/yum.repos.d/google_osconfig.repo.

Link copied to clipboard
Link copied to clipboard
data class YumSettingsArgs(val excludes: Output<List<String>>? = null, val exclusivePackages: Output<List<String>>? = null, val minimal: Output<Boolean>? = null, val security: Output<Boolean>? = null) : ConvertibleToJava<YumSettingsArgs>

Yum patching is performed by executing yum update. Additional options can be set to control how this is executed. Note that not all settings are supported on all platforms.

Link copied to clipboard
Link copied to clipboard
data class ZypperRepositoryArgs(val baseUrl: Output<String>, val displayName: Output<String>? = null, val gpgKeys: Output<List<String>>? = null, val id: Output<String>) : ConvertibleToJava<ZypperRepositoryArgs>

Represents a single Zypper package repository. This repository is added to a repo file that is stored at /etc/zypp/repos.d/google_osconfig.repo.

Link copied to clipboard
data class ZypperSettingsArgs(val categories: Output<List<String>>? = null, val excludes: Output<List<String>>? = null, val exclusivePatches: Output<List<String>>? = null, val severities: Output<List<String>>? = null, val withOptional: Output<Boolean>? = null, val withUpdate: Output<Boolean>? = null) : ConvertibleToJava<ZypperSettingsArgs>

Zypper patching is performed by running zypper patch. See also https://en.opensuse.org/SDB:Zypper_manual.

Link copied to clipboard