Class: Google::Apis::OsconfigV1::PatchConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/osconfig_v1/classes.rb,
lib/google/apis/osconfig_v1/representations.rb,
lib/google/apis/osconfig_v1/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.



2845
2846
2847
# File 'lib/google/apis/osconfig_v1/classes.rb', line 2845

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

Instance Attribute Details

#aptGoogle::Apis::OsconfigV1::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



2784
2785
2786
# File 'lib/google/apis/osconfig_v1/classes.rb', line 2784

def apt
  @apt
end

#gooGoogle::Apis::OsconfigV1::GooSettings

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



2789
2790
2791
# File 'lib/google/apis/osconfig_v1/classes.rb', line 2789

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)


2794
2795
2796
# File 'lib/google/apis/osconfig_v1/classes.rb', line 2794

def mig_instances_allowed
  @mig_instances_allowed
end

#post_stepGoogle::Apis::OsconfigV1::ExecStep

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



2800
2801
2802
# File 'lib/google/apis/osconfig_v1/classes.rb', line 2800

def post_step
  @post_step
end

#pre_stepGoogle::Apis::OsconfigV1::ExecStep

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



2805
2806
2807
# File 'lib/google/apis/osconfig_v1/classes.rb', line 2805

def pre_step
  @pre_step
end

#reboot_configString

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

Returns:

  • (String)


2810
2811
2812
# File 'lib/google/apis/osconfig_v1/classes.rb', line 2810

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)


2824
2825
2826
# File 'lib/google/apis/osconfig_v1/classes.rb', line 2824

def skip_unpatchable_vms
  @skip_unpatchable_vms
end

#windows_updateGoogle::Apis::OsconfigV1::WindowsUpdateSettings

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



2830
2831
2832
# File 'lib/google/apis/osconfig_v1/classes.rb', line 2830

def windows_update
  @windows_update
end

#yumGoogle::Apis::OsconfigV1::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



2837
2838
2839
# File 'lib/google/apis/osconfig_v1/classes.rb', line 2837

def yum
  @yum
end

#zypperGoogle::Apis::OsconfigV1::ZypperSettings

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



2843
2844
2845
# File 'lib/google/apis/osconfig_v1/classes.rb', line 2843

def zypper
  @zypper
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
# File 'lib/google/apis/osconfig_v1/classes.rb', line 2850

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