Class: MintPress::InfrastructureOci::VCN

Inherits:
Object
  • Object
show all
Includes:
MintLogger, TagUtils, Mixins::Properties
Defined in:
src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_vcn.rb

Properties (Read/Write)

  • #name ⇒ String
    'The name of the vcn'

    Property Attributes
    • alias:display_name
    
    
    23
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_vcn.rb', line 23
    
    property :name, type: String, description: 'The name of the vcn', alias: :display_name
  • #platform ⇒ MintPress::InfrastructureOci::OciPlatform (Default Value: Proc.new { if opts[:provider] MintPress::InfrastructureOci::OciPlatform.new(:provider => opts[:provider]) else MintPress::InfrastructureOci::OciPlatform.new end })
    'This incapsulates all properties required for the OCI provider.'

    Property Attributes
    • defaultProc.new { if opts[:provider] MintPress::InfrastructureOci::OciPlatform.new(:provider => opts[:provider]) else MintPress::InfrastructureOci::OciPlatform.new end }
    
    
    25
    26
    27
    28
    29
    30
    31
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_vcn.rb', line 25
    
    property :platform, type: MintPress::InfrastructureOci::OciPlatform, default: Proc.new {
      if opts[:provider]
        MintPress::InfrastructureOci::OciPlatform.new(:provider => opts[:provider])
      else
        MintPress::InfrastructureOci::OciPlatform.new
      end
    }, description: 'This incapsulates all properties required for the OCI provider.'
  • #compartment_id ⇒ String (Default Value: Proc.new { self.platform.compartment })

    Property Attributes
    • defaultProc.new { self.platform.compartment }
    
    
    33
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_vcn.rb', line 33
    
    property :compartment_id, type: String, default: Proc.new { self.platform.compartment }
  • #cidr_blocks ⇒ Array of ⇒ String
    'The list of one or more IPv4 CIDR blocks for the VCN that meet the following criteria: - The CIDR blocks must be valid.'

    Property Attributes
    • requiredtrue
    
    
    36
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_vcn.rb', line 36
    
    property :cidr_blocks, type: String, array: true, required: true, description: 'The list of one or more IPv4 CIDR blocks for the VCN that meet the following criteria: - The CIDR blocks must be valid.'
  • #dns_label ⇒ String (Default Value: nil)
    "A DNS label for the VCN, used in conjunction with the VNIC's hostname and subnet's DNS label to form a fully qualified domain name (FQDN) for each VNIC within this subnet (for example, bminstance1.subnet123.vcn1.oraclevcn.com)"

    Property Attributes
    • defaultnil
    
    
    37
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_vcn.rb', line 37
    
    property :dns_label, type: String, default: nil, description: "A DNS label for the VCN, used in conjunction with the VNIC's hostname and subnet's DNS label to form a fully qualified domain name (FQDN) for each VNIC within this subnet (for example, bminstance1.subnet123.vcn1.oraclevcn.com)"
  • #ipv6_private_cidr_blocks ⇒ Array of ⇒ String
    'The list of one or more ULA or Private IPv6 prefixes for the VCN that meets the following criteria: - The CIDR blocks must be valid. - Multiple CIDR blocks must not overlap each other or the on-premises network prefix. - The number of CIDR blocks must not exceed the limit of IPv6 prefixes allowed to a VCN.'

    Property Attributes
    
    
    38
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_vcn.rb', line 38
    
    property :ipv6_private_cidr_blocks, type: String, array: true, description: 'The list of one or more ULA or Private IPv6 prefixes for the VCN that meets the following criteria: - The CIDR blocks must be valid. - Multiple CIDR blocks must not overlap each other or the on-premises network prefix. - The number of CIDR blocks must not exceed the limit of IPv6 prefixes allowed to a VCN.'
  • #is_ipv6_enabled ⇒ [TrueClass, FalseClass] (Default Value: false)
    "Whether IPv6 is enabled for the VCN. Default is false. If enabled, Oracle will assign the VCN a IPv6 /56 CIDR block. You may skip having Oracle allocate the VCN a IPv6 /56 CIDR block by setting isOracleGuaAllocationEnabled to false. For important details about IPv6 addressing in a VCN"

    Property Attributes
    • defaultfalse
    
    
    39
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_vcn.rb', line 39
    
    property :is_ipv6_enabled, type: [TrueClass, FalseClass], default: false, description: "Whether IPv6 is enabled for the VCN. Default is false. If enabled, Oracle will assign the VCN a IPv6 /56 CIDR block. You may skip having Oracle allocate the VCN a IPv6 /56 CIDR block by setting isOracleGuaAllocationEnabled to false. For important details about IPv6 addressing in a VCN"
  • #is_oracle_gua_allocation_enabled ⇒ [TrueClass, FalseClass] (Default Value: false)
    "Specifies whether to skip Oracle allocated IPv6 GUA. By default, Oracle will allocate one GUA of /56 size for an IPv6 enabled VCN."

    Property Attributes
    • defaultfalse
    
    
    40
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_vcn.rb', line 40
    
    property :is_oracle_gua_allocation_enabled, type: [TrueClass, FalseClass], default: false, description: "Specifies whether to skip Oracle allocated IPv6 GUA. By default, Oracle will allocate one GUA of /56 size for an IPv6 enabled VCN."
  • #id ⇒ String
    'ID for the VCN'

    Property Attributes
    
    
    42
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_vcn.rb', line 42
    
    property :id, type: String, description: 'ID for the VCN'
  • #subnets ⇒ Hash of ⇒ MintPress::InfrastructureOci::Subnet

    Property Attributes
    • canonicaltrue
    
    
    44
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_vcn.rb', line 44
    
    property :subnets, type: MintPress::InfrastructureOci::Subnet, hash: true, canonical: true
  • #internet_gateways ⇒ Hash of ⇒ MintPress::InfrastructureOci::InternetGateway

    Property Attributes
    • canonicaltrue
    
    
    45
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_vcn.rb', line 45
    
    property :internet_gateways, type: MintPress::InfrastructureOci::InternetGateway, hash: true, canonical: true

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 TagUtils

#clear_tags, #fetch_resource_details, #import_tag_properties, #manage_tags, #merge_defined_tags, #remove_defined_tags, #remove_tags, #update_resource, #update_tags

Methods included from CommonUtils

#create_status_check_proc, #destroy_status_check_proc, #filter_nil_properties, #populate_properties

Methods included from MintLogger::Utils::Common

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

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

Constructor Details

#initialize(opts = {}) ⇒ VCN

Returns a new instance of VCN.

Instance Method Details

#createObject

#destroyObject

#exists?Boolean

Returns:

  • (Boolean)

#harvestObject

#updateObject