Class: MintPress::InfrastructureOci::SecurityListRule

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

Properties (Read/Write)

  • #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 }
    
    
    219
    220
    221
    222
    223
    224
    225
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 219
    
    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 }
    
    
    227
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 227
    
    property :compartment_id, type: String, default: Proc.new { self.platform.compartment }
  • #security_list ⇒ [MintPress::InfrastructureOci::SecurityList,String]
    'Either the Security list object or the ocid of the security list, the security list must exist before you create the rule.'

    Property Attributes
    
    
    229
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 229
    
    property :security_list, type: [MintPress::InfrastructureOci::SecurityList,String], description: 'Either the Security list object or the ocid of the security list, the security list must exist before you create the rule.'
  • #description ⇒ String
    'Description of the security rule.'

    Property Attributes
    
    
    232
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 232
    
    property :description, type: String, description: 'Description of the security rule.'
  • #destination ⇒ String
    'this is the range of IP addresses that a packet originating from the instance can go to. This can also be a service, e.g. The cidrBlock value for a Service, if you re setting up a security list rule for traffic destined for a particular Service through a service gateway. For example: oci-phx-objectstorage.'

    Property Attributes
    
    
    233
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 233
    
    property :destination, type: String, description: 'this is the range of IP addresses that a packet originating from the instance can go to. This can also be a service, e.g. The cidrBlock value for a Service, if you re setting up a security list rule for traffic destined for a particular Service through a service gateway. For example: oci-phx-objectstorage.'
  • #destination_type ⇒ String (Default Value: 'CIDR_BLOCK')
    'Type of destination for the rule. The default is CIDR_BLOCK. CIDR_BLOCK: If the rule destination is an IP address range in CIDR notation. SERVICE_CIDR_BLOCK: If the rule destination is the cidrBlock value for a Service (the rule is for traffic destined for a particular Service through a service gateway).'

    Property Attributes
    • default'CIDR_BLOCK'
    • allowed_values['CIDR_BLOCK', 'SERVICE_CIDR_BLOCK']
    
    
    235
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 235
    
    property :destination_type, type: String, default: 'CIDR_BLOCK', allowed_values: ['CIDR_BLOCK', 'SERVICE_CIDR_BLOCK'],  description: 'Type of destination for the rule. The default is CIDR_BLOCK. CIDR_BLOCK: If the rule destination is an IP address range in CIDR notation. SERVICE_CIDR_BLOCK: If the rule destination is the cidrBlock value for a Service (the rule is for traffic destined for a particular Service through a service gateway).'
  • #source_type ⇒ String (Default Value: 'CIDR_BLOCK')
    'Type of source for the rule. The default is CIDR_BLOCK. CIDR_BLOCK: If the rule source is an IP address range in CIDR notation. SERVICE_CIDR_BLOCK: If the rule source is the cidrBlock value for a Service (the rule is for traffic destined for a particular Service through a service gateway).'

    Property Attributes
    • default'CIDR_BLOCK'
    • allowed_values['CIDR_BLOCK', 'SERVICE_CIDR_BLOCK']
    
    
    236
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 236
    
    property :source_type, type: String, default: 'CIDR_BLOCK', allowed_values: ['CIDR_BLOCK', 'SERVICE_CIDR_BLOCK'],  description: 'Type of source for the rule. The default is CIDR_BLOCK. CIDR_BLOCK: If the rule source is an IP address range in CIDR notation. SERVICE_CIDR_BLOCK: If the rule source is the cidrBlock value for a Service (the rule is for traffic destined for a particular Service through a service gateway).'
  • #icmp_options
    'ICMP Options'

    Property Attributes
    
    
    238
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 238
    
    property :icmp_options, description: 'ICMP Options'
  • #tcp_options
    'TCP Options'

    Property Attributes
    
    
    239
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 239
    
    property :tcp_options, description: 'TCP Options'
  • #udp_options
    'UDP Options'

    Property Attributes
    
    
    240
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 240
    
    property :udp_options, description: 'UDP Options'
  • #source ⇒ String
    'This is the range of IP addresses that a packet coming into the instance can come from.'

    Property Attributes
    
    
    242
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 242
    
    property :source, type: String, description: 'This is the range of IP addresses that a packet coming into the instance can come from.'
  • #is_stateless ⇒ [TrueClass, FalseClass] (Default Value: false)
    'A stateless rule allows traffic in one direction. Remember to add a corresponding stateless rule in the other direction if you need to support bidirectional traffic. For example, if egress traffic allows TCP destination port 80, there should be an ingress rule to allow TCP source port 80. Defaults to false, which means the rule is stateful and a corresponding rule is not necessary for bidirectional traffic.'

    Property Attributes
    • defaultfalse
    
    
    244
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 244
    
    property :is_stateless, type: [TrueClass, FalseClass], default: false, description: 'A stateless rule allows traffic in one direction. Remember to add a corresponding stateless rule in the other direction if you need to support bidirectional traffic. For example, if egress traffic allows TCP destination port 80, there should be an ingress rule to allow TCP source port 80. Defaults to false, which means the rule is stateful and a corresponding rule is not necessary for bidirectional traffic.'
  • #protocol ⇒ [String, Integer] (Default Value: 'all')
    'The transport protocol. Specify either all or an IPv4 protocol number as defined in Protocol Numbers. Options are supported only for ICMP ("1"), TCP ("6"), UDP ("17"), and ICMPv6 ("58").'

    Property Attributes
    • default'all'
    • insensitivetrue
    
    
    246
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 246
    
    property :protocol, type: [String, Integer], default: 'all', insensitive: true, description: 'The transport protocol. Specify either all or an IPv4 protocol number as defined in Protocol Numbers. Options are supported only for ICMP ("1"), TCP ("6"), UDP ("17"), and ICMPv6 ("58").'
  • #id ⇒ String
    'ID for the security rule'

    Property Attributes
    
    
    248
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 248
    
    property :id, type: String, description: 'ID for the security rule'
  • #direction ⇒ String (Default Value: 'egress')
    'Type of the rule.'

    Property Attributes
    • allowed_values['ingress', 'egress']
    • default'egress'
    • insensitivetrue
    
    
    250
    # File 'src/mintpress-infrastructure-oci/lib/mintpress-infrastructure-oci/oci_security_list.rb', line 250
    
    property :direction, type: String, allowed_values: ['ingress', 'egress'], default: 'egress', insensitive: true, description: 'Type of the rule.'

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 = {}) ⇒ SecurityListRule

Returns a new instance of SecurityListRule.

Instance Method Details

#addObject

#check_security_listObject

#createObject

#removeObject

#updateObject

#update_egress_ruleObject

#update_ingress_ruleObject

#update_ruleObject