Class: MintPress::OracleFMWInfrastructure::MOSPatcher

Inherits:
Object
  • Object
show all
Includes:
MintLogger, Mixins::Properties
Defined in:
src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb

Overview

Downloads Oracle patches from Support

Properties (Read/Write)

  • #document_url ⇒ String (Default Value: 'https://support.oracle.com/epmos/faces/DocumentDisplay?id=2806740.2')
    'The document URL to fetch bundle patches.'

    Property Attributes
    • default'https://support.oracle.com/epmos/faces/DocumentDisplay?id=2806740.2'
    
    
    30
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 30
    
    property :document_url, default: 'https://support.oracle.com/epmos/faces/DocumentDisplay?id=2806740.2', type: String, description: 'The document URL to fetch bundle patches.'
  • #patches_base_url ⇒ String (Default Value: 'https://updates.oracle.com/Orion/SimpleSearch/process_form?search_type=patch')
    'The base URL from where to download patches.'

    Property Attributes
    • default'https://updates.oracle.com/Orion/SimpleSearch/process_form?search_type=patch'
    
    
    31
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 31
    
    property :patches_base_url, default: 'https://updates.oracle.com/Orion/SimpleSearch/process_form?search_type=patch', type: String, description: 'The base URL from where to download patches.'
  • #patch_platform ⇒ String (Default Value: '226P')
    'Platform applicable for the patch, Default is x86-64.'

    Property Attributes
    • default'226P'
    
    
    33
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 33
    
    property :patch_platform, type: String, default: '226P', description: 'Platform applicable for the patch, Default is x86-64.'
  • #all_patches ⇒ [TrueClass, FalseClass] (Default Value: false)
    'Flag to control if we download all patches with +'

    Property Attributes
    • defaultfalse
    
    
    36
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 36
    
    property :all_patches, default: false, type: [TrueClass, FalseClass], description: 'Flag to control if we download all patches with +'
  • #cache_enabled ⇒ [TrueClass, FalseClass] (Default Value: false)
    'Flag to control if Mint should use a cache file to fetch patch numbers.'

    Property Attributes
    • defaultfalse
    
    
    38
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 38
    
    property :cache_enabled, default: false, type: [TrueClass, FalseClass], description: 'Flag to control if Mint should use a cache file to fetch patch numbers.'
  • #cache_file ⇒ String
    'Full path to the name of the cache file.'

    Property Attributes
    
    
    39
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 39
    
    property :cache_file, type: String, description: 'Full path to the name of the cache file.'
  • #username ⇒ String
    'Name of the user to login to Oracle Support. The user must have access to the document_id.'

    Property Attributes
    • requiredtrue
    
    
    41
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 41
    
    property :username, type: String, description: 'Name of the user to login to Oracle Support. The user must have access to the document_id.', required: true
  • #password ⇒ Mint::Secret
    'Password of the user to login to Oracle Support.'

    Property Attributes
    • fromString
    • requiredtrue
    
    
    42
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 42
    
    property :password, type: Mint::Secret, from: String, required: true, description: 'Password of the user to login to Oracle Support.'
  • #product_name ⇒ String (Default Value: nil)
    'Name of the product to search in Oracle Support, e.g. SOA Bundle Patch 12.2.1.4. Mint only accepts the name of the Patch Description column.'

    Property Attributes
    • defaultnil
    
    
    44
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 44
    
    property :product_name, type: String, default: nil, description: 'Name of the product to search in Oracle Support, e.g. SOA Bundle Patch 12.2.1.4. Mint only accepts the name of the Patch Description column.'
  • #cpu_month ⇒ String (Default Value: nil)
    'Name and year of the CPU patch, e.g. October 2023.'

    Property Attributes
    • defaultnil
    
    
    45
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 45
    
    property :cpu_month, type: String, default: nil, description: 'Name and year of the CPU patch, e.g. October 2023.'
  • #download_directory ⇒ String
    'Full path of the directory where patches should be downloaded. If the path does not exist, it will be created.'

    Property Attributes
    • requiredtrue
    
    
    47
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 47
    
    property :download_directory, type: String, required: true, description: 'Full path of the directory where patches should be downloaded. If the path does not exist, it will be created.'
  • #tmp_directory ⇒ String (Default Value: '/tmp')

    Property Attributes
    • requiredtrue
    • default'/tmp'
    
    
    48
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 48
    
    property :tmp_directory, type: String, required: true, default: '/tmp'
  • #proxy_uri ⇒ Hash
    'The proxy URI'

    Property Attributes
    • fromString
    
    
    52
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 52
    
    property :proxy_uri, type: Hash, from:String, description: 'The proxy URI'
  • #force_download_patch ⇒ [TrueClass, FalseClass] (Default Value: true)
    'Flag to control if a patch should be downloaded irrespective of whether its already downloaded'

    Property Attributes
    • defaulttrue
    
    
    53
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 53
    
    property :force_download_patch, default: true, type: [TrueClass, FalseClass], description: 'Flag to control if a patch should be downloaded irrespective of whether its already downloaded'
  • #download_url ⇒ String (Default Value: 'https://updates.oracle.com/Orion/Services/download')
    'The download URL'

    Property Attributes
    • default'https://updates.oracle.com/Orion/Services/download'
    
    
    56
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 56
    
    property :download_url, default: 'https://updates.oracle.com/Orion/Services/download', type: String, description: 'The download URL'
  • #title_page ⇒ String (Default Value: '2806740.2')
    'The title page for bundle patches.'

    Property Attributes
    • default'2806740.2'
    
    
    57
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 57
    
    property :title_page, default: '2806740.2', type: String, description: 'The title page for bundle patches.'
  • #login_url ⇒ String (Default Value: 'https://signon.oracle.com/signin')
    'The login URL'

    Property Attributes
    • default'https://signon.oracle.com/signin'
    
    
    58
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 58
    
    property :login_url, default: 'https://signon.oracle.com/signin', type: String, description: 'The login URL'
  • #timeout ⇒ Integer (Default Value: 30)
    'Timeout in Seconds. Defaults to 30'

    Property Attributes
    • default30
    
    
    62
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 62
    
    property :timeout, type: Integer, default: 30, description: 'Timeout in Seconds. Defaults to 30'
  • #retry_count ⇒ Integer (Default Value: 3)
    'Exception retry counter. Defaults to 3'

    Property Attributes
    • default3
    
    
    63
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 63
    
    property :retry_count, type: Integer, default: 3, description: 'Exception retry counter. Defaults to 3'
  • #driver_options ⇒ Array (Default Value: ['--headless'])
    'Options to pass to the WebDriver.'

    Property Attributes
    • default['--headless']
    
    
    64
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 64
    
    property :driver_options, type: Array, default: ['--headless'], description: 'Options to pass to the WebDriver.'
  • #driver_path ⇒ String
    'geckodriver path'

    Property Attributes
    
    
    65
    # File 'src/oracle-fmwinfra/lib/oracle-fmwinfra/mos-patch.rb', line 65
    
    property :driver_path, type: String, description: 'geckodriver path'

Properties (Read Only)

Constant Summary

Constants included from MintLogger

MintLogger::DEBUG, MintLogger::ERROR, MintLogger::FATAL, MintLogger::INFO, MintLogger::UNKNOWN, MintLogger::VERBOSE, MintLogger::WARN

Instance Attribute Summary

Attributes included from Mixins::Properties

#autopush_set_cache, #dynamic_create, #harvest_on_access, #harvest_undefined_only, #harvested, #tree_root

Instance Method Summary collapse

Methods included from Mixins::Properties

#[], #[]=, #add_validate_report_result, #armour_set_property, #array_contains?, #array_is_a?, #check_autopush, #check_stack_overflow, #clone_property_object, #cloner_handle_single_property, #coerce_single, #contains_as_string?, #display_validate_report_result, #double_initialize?, #dump_to_hash, #find_parent, #find_parent_by_identity, #generate_accessor_functions, #get_canonical_renamed, #get_from_opts, #get_my_name, #get_property, #get_property_item, #has?, included, #initialize_validate_report, #inspect, #is_cloned_object?, #is_mintpress_object?, #is_probably_canonical?, #is_set?, #local_debug, #local_info, #local_verbose, #mintpress_property_definitions, #place_object_by_identity, #process_properties, #prop_set?, #property, #property_definitions, #property_details, #property_is_simple_object?, #push_root!, #require_property, #require_update, #retrieve_docstring, #sanitize, #set_map_dirty, #set_property, #set_property_item, #show_short_array, #strip_defaults!, #synchronize, #uncloned_property_definitions, #update_map, #validate, #validate_generic, #validate_properties, #validate_property, #validate_required, #version_allowed?, #weakref

Methods included from MintLogger::Utils::Common

#boolean_val, #has_value?, #no_value?, #nvl, #path_as_symbol, #ruby_level_to_send

Constructor Details

#initialize(opts = {}) ⇒ MOSPatcher

Returns a new instance of MOSPatcher.

Instance Method Details

#download_patchObject

#download_patch_via_id(patch_id, release = nil) ⇒ Object

#find_patchesObject