Class: Google::Apis::OsconfigV1beta::PatchConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/osconfig_v1beta/classes.rb,
lib/google/apis/osconfig_v1beta/representations.rb,
lib/google/apis/osconfig_v1beta/representations.rb

Overview

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ PatchConfig

Returns a new instance of PatchConfig.



1254
1255
1256
# File 'lib/google/apis/osconfig_v1beta/classes.rb', line 1254

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#aptGoogle::Apis::OsconfigV1beta::AptSettings

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



1193
1194
1195
# File 'lib/google/apis/osconfig_v1beta/classes.rb', line 1193

def apt
  @apt
end

#gooGoogle::Apis::OsconfigV1beta::GooSettings

Googet patching is performed by running googet update. Corresponds to the JSON property goo



1198
1199
1200
# File 'lib/google/apis/osconfig_v1beta/classes.rb', line 1198

def goo
  @goo
end

#mig_instances_allowedBoolean Also known as: mig_instances_allowed?

Allows the patch job to run on Managed instance groups (MIGs). Corresponds to the JSON property migInstancesAllowed

Returns:

  • (Boolean)


1203
1204
1205
# File 'lib/google/apis/osconfig_v1beta/classes.rb', line 1203

def mig_instances_allowed
  @mig_instances_allowed
end

#post_stepGoogle::Apis::OsconfigV1beta::ExecStep

A step that runs an executable for a PatchJob. Corresponds to the JSON property postStep



1209
1210
1211
# File 'lib/google/apis/osconfig_v1beta/classes.rb', line 1209

def post_step
  @post_step
end

#pre_stepGoogle::Apis::OsconfigV1beta::ExecStep

A step that runs an executable for a PatchJob. Corresponds to the JSON property preStep



1214
1215
1216
# File 'lib/google/apis/osconfig_v1beta/classes.rb', line 1214

def pre_step
  @pre_step
end

#reboot_configString

Post-patch reboot settings. Corresponds to the JSON property rebootConfig

Returns:

  • (String)


1219
1220
1221
# File 'lib/google/apis/osconfig_v1beta/classes.rb', line 1219

def reboot_config
  @reboot_config
end

#skip_unpatchable_vmsBoolean Also known as: skip_unpatchable_vms?

Optional. Enables enhanced reporting for the patch job: 1. The patch job skips instances that cannot be patched and reports them as SKIPPED. An instance cannot be patched for two reasons: 1. The instance runs Container-Optimized OS (COS), which cannot be patched. 2. The instance is part of a managed instance group (MIG), and patching MIG instances is disabled in the patch job's configuration (PatchConfig.migInstancesAllowed is false). 2. The patch job is reported as SUCCEEDED if it completes without errors, even if some instances are SKIPPED. 3. The patch job is reported as COMPLETED_WITH_INACTIVE_VMS if it completes without errors, but does not patch instances that are INACTIVE. Corresponds to the JSON property skipUnpatchableVms

Returns:

  • (Boolean)


1233
1234
1235
# File 'lib/google/apis/osconfig_v1beta/classes.rb', line 1233

def skip_unpatchable_vms
  @skip_unpatchable_vms
end

#windows_updateGoogle::Apis::OsconfigV1beta::WindowsUpdateSettings

Windows patching is performed using the Windows Update Agent. Corresponds to the JSON property windowsUpdate



1239
1240
1241
# File 'lib/google/apis/osconfig_v1beta/classes.rb', line 1239

def windows_update
  @windows_update
end

#yumGoogle::Apis::OsconfigV1beta::YumSettings

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. Corresponds to the JSON property yum



1246
1247
1248
# File 'lib/google/apis/osconfig_v1beta/classes.rb', line 1246

def yum
  @yum
end

#zypperGoogle::Apis::OsconfigV1beta::ZypperSettings

Zypper patching is performed by running zypper patch. See also https://en. opensuse.org/SDB:Zypper_manual. Corresponds to the JSON property zypper



1252
1253
1254
# File 'lib/google/apis/osconfig_v1beta/classes.rb', line 1252

def zypper
  @zypper
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
# File 'lib/google/apis/osconfig_v1beta/classes.rb', line 1259

def update!(**args)
  @apt = args[:apt] if args.key?(:apt)
  @goo = args[:goo] if args.key?(:goo)
  @mig_instances_allowed = args[:mig_instances_allowed] if args.key?(:mig_instances_allowed)
  @post_step = args[:post_step] if args.key?(:post_step)
  @pre_step = args[:pre_step] if args.key?(:pre_step)
  @reboot_config = args[:reboot_config] if args.key?(:reboot_config)
  @skip_unpatchable_vms = args[:skip_unpatchable_vms] if args.key?(:skip_unpatchable_vms)
  @windows_update = args[:windows_update] if args.key?(:windows_update)
  @yum = args[:yum] if args.key?(:yum)
  @zypper = args[:zypper] if args.key?(:zypper)
end