Skip to content

Latest commit

 

History

History
2563 lines (1685 loc) · 91.6 KB

REFERENCE.md

File metadata and controls

2563 lines (1685 loc) · 91.6 KB

Reference

Table of Contents

Classes

  • oci_config: Installs the required OCI GEM on the system.

Resource types

  • oci_autoscaling_auto_scaling_configuration: An autoscaling configuration allows you to dynamically scale the resources in a Compute instance pool. For more information, see [Autoscaling
  • oci_budget_budget: A budget. Here is an example on how to use this: oci_budget_budget { 'tenant (root)/test_budget': ensure => 'present'
  • oci_core_app_catalog_subscription: a subscription for a listing resource version. This documentation is generated from the [Ruby OCI SDK](https://github.com/oracle/oci-ruby-sd
  • oci_core_boot_volume: A detachable boot volume device that contains the image used to boot a Compute instance. For more information, see [Overview of Boot Volumes]
  • oci_core_boot_volume_backup: A point-in-time copy of a boot volume that can then be used to create a new boot volume or recover a boot volume. For more information, see [
  • oci_core_cpe: An object you create when setting up an IPSec VPN between your on-premises network and VCN. The Cpe is a virtual representation of your cus
  • oci_core_dedicated_vm_host: A dedicated virtual machine host that enables you to host multiple VM instances on a dedicated host that is not shared with other tenancies.
  • oci_core_dhcp_options: A set of DHCP options. Used by the VCN to automatically provide configuration information to the instances when they boot up. There are two o
  • oci_core_drg: A dynamic routing gateway (DRG), which is a virtual router that provides a path for private network traffic between your VCN and your existin
  • oci_core_image: A boot disk image for launching an instance. For more information, see [Overview of the Compute Service](https://docs.cloud.oracle.com/Conten
  • oci_core_instance: A compute host. The image used to launch the instance determines its operating system and other software. The shape specified during the laun
  • oci_core_instance_configuration: An instance configuration is a template that defines the settings to use when creating Compute instances. For more information about instance
  • oci_core_instance_console_connection: The InstanceConsoleConnection API provides you with console access to Compute instances, enabling you to troubleshoot malfunctioning instan
  • oci_core_instance_pool: An instance pool is a group of instances within the same region that are created based off of the same instance configuration. For more infor
  • oci_core_internet_gateway: Represents a router that connects the edge of a VCN with the Internet. For an example scenario that uses an internet gateway, see [Typical Ne
  • oci_core_ip_sec_connection: A connection between a DRG and CPE. This connection consists of multiple IPSec tunnels. Creating this connection is one of the steps required
  • oci_core_local_peering_gateway: A local peering gateway (LPG) is an object on a VCN that lets that VCN peer with another VCN in the same region. Peering means that the two
  • oci_core_nat_gateway: A NAT (Network Address Translation) gateway, which represents a router that lets instances without public IPs contact the public internet wit
  • oci_core_network_security_group: A network security group (NSG) provides virtual firewall rules for a specific set of {Vnic} in a VCN. Compare NSGs with {SecurityList}, whi
  • oci_core_public_ip: A public IP is a conceptual term that refers to a public IP address and related properties. The publicIp object is the API representation
  • oci_core_remote_peering_connection: A remote peering connection (RPC) is an object on a DRG that lets the VCN that is attached to the DRG peer with a VCN in a different region.
  • oci_core_route_table: A collection of RouteRule objects, which are used to route packets based on destination IP to a particular network entity. For more informa
  • oci_core_security_list: A set of virtual firewall rules for your VCN. Security lists are configured at the subnet level, but the rules are applied to the ingress and
  • oci_core_service_gateway: Represents a router that lets your VCN privately access specific Oracle services such as Object Storage without exposing the VCN to the publi
  • oci_core_subnet: A logical subdivision of a VCN. Each subnet consists of a contiguous range of IP addresses that do not overlap with other subnets in the VCN.
  • oci_core_vcn: A virtual cloud network (VCN). For more information, see [Overview of the Networking Service](https://docs.cloud.oracle.com/Content/Network/C
  • oci_core_virtual_circuit: For use with Oracle Cloud Infrastructure FastConnect. A virtual circuit is an isolated network path that runs over one or more physical netw
  • oci_core_volume: A detachable block volume device that allows you to dynamically expand the storage capacity of an instance. For more information, see [Overvi
  • oci_core_volume_backup: A point-in-time copy of a volume that can then be used to create a new block volume or recover a block volume. For more information, see [Ove
  • oci_core_volume_backup_policy: A policy for automatically creating volume backups according to a recurring schedule. Has a set of one or more schedules that control when an
  • oci_core_volume_group: Specifies a volume group which is a collection of volumes. For more information, see [Volume Groups](https://docs.cloud.oracle.com/Content/Bl
  • oci_core_volume_group_backup: A point-in-time copy of a volume group that can then be used to create a new volume group or restore a volume group. For more information, se
  • oci_database_autonomous_database: An Oracle Autonomous Database. This documentation is generated from the Ruby OCI SDK.
  • oci_database_db_system: DbSystem model. This documentation is generated from the Ruby OCI SDK.
  • oci_file_storage_export: A file system and the path that you can use to mount it. Each export resource belongs to exactly one export set. The export's path attribute
  • oci_file_storage_file_system: An NFS file system. To allow access to a file system, add it to an export set and associate the export set with a mount target. The same file
  • oci_file_storage_mount_target: Provides access to a collection of file systems through one or more VNICs on a specified subnet. The set of file systems is controlled throug
  • oci_identity_compartment: A collection of related resources. Compartments are a fundamental component of Oracle Cloud Infrastructure for organizing and isolating your
  • oci_identity_dynamic_group: A dynamic group defines a matching rule. Every bare metal or virtual machine instance is deployed with an instance certificate. The certifica
  • oci_identity_group: A collection of users who all need the same type of access to a particular set of resources or compartment. For conceptual information about
  • oci_identity_identity_provider: The resulting base object when you add an identity provider to your tenancy. A {Saml2IdentityProvider} is a specific type of `IdentityProvide
  • oci_identity_policy: A document that specifies the type of access a group has to the resources in a compartment. For information about policies and other IAM Serv
  • oci_identity_tag_namespace: A managed container for defined tags. A tag namespace is unique in a tenancy. For more information, see [Managing Tags and Tag Namespaces](ht
  • oci_identity_user: An individual employee or system that needs to manage or use your company's Oracle Cloud Infrastructure resources. Users might need to launch
  • oci_key_management_key: An encryption key. Here is an example on how to use this: oci_key_management_key { 'tenant (root)/my_key}': ensure => 'present
  • oci_key_management_vault: A vault to manage keys. Here is an example on how to use this: oci_key_management_vault { 'tenant (root)/my_vault: ensure
  • oci_object_storage_bucket: Manage object storage buckets. Here is an example on how to use this: oci_object_storage_bucket { 'tenant (root)/my_bucket': ensu
  • oci_tenant: The tenant identifier. To get started with OCI in Puppet, you first have to identify the tenant you will use. See [this article](https://doc

Functions

Data types

Tasks

Plans

Classes

oci_config

oci_config

Parameters

The following parameters are available in the oci_config class.

version

Data type: String[1]

The version of the gem to install

tmp_dir

Data type: Stdlib::Absolutepath

The directory to use for temporary storing the gem file

Resource types

oci_autoscaling_auto_scaling_configuration

An autoscaling configuration allows you to dynamically scale the resources in a Compute instance pool. For more information, see Autoscaling.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_autoscaling_auto_scaling_configuration type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_budget_budget

A budget.

Here is an example on how to use this:

oci_budget_budget { 'tenant (root)/test_budget':
  ensure             => 'present',
  amount             => 100.0,
  description        => 'test Budget',
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_budget_budget type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_app_catalog_subscription

a subscription for a listing resource version.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_app_catalog_subscription type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_boot_volume

A detachable boot volume device that contains the image used to boot a Compute instance. For more information, see Overview of Boot Volumes.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_boot_volume type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_boot_volume_backup

A point-in-time copy of a boot volume that can then be used to create a new boot volume or recover a boot volume. For more information, see Overview of Boot Volume Backups To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_boot_volume_backup type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_cpe

An object you create when setting up an IPSec VPN between your on-premises network and VCN. The Cpe is a virtual representation of your customer-premises equipment, which is the actual router on-premises at your site at your end of the IPSec VPN connection. For more information, see Overview of the Networking Service.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

  oci_core_cpe { 'tenant (root)/test_cpe':
    ensure     => 'present',
    ip_address => '10.0.0.1',
  }

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_cpe type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_dedicated_vm_host

A dedicated virtual machine host that enables you to host multiple VM instances on a dedicated host that is not shared with other tenancies.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_dedicated_vm_host type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_dhcp_options

A set of DHCP options. Used by the VCN to automatically provide configuration information to the instances when they boot up. There are two options you can set:

  • {DhcpDnsOption}: Lets you specify how DNS (hostname resolution) is handled in the subnets in your VCN.

  • {DhcpSearchDomainOption}: Lets you specify a search domain name to use for DNS queries.

For more information, see DNS in Your Virtual Cloud Network and DHCP Options.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_dhcp_options { 'tenant (root)/my_options':
  ensure          => 'present',
  options         => [
  {
    'type' => 'DomainNameServer',
    'custom_dns_servers' => [],
    'server_type' => 'VcnLocalPlusInternet'
  },
  {
    'type' => 'SearchDomain',
    'search_domain_names' => ['vcn.oraclevcn.com']
  }],
  vcn => 'VirtualCloudNetwork-20200103-0949',
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_dhcp_options type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_drg

A dynamic routing gateway (DRG), which is a virtual router that provides a path for private network traffic between your VCN and your existing network. You use it with other Networking Service components to create an IPSec VPN or a connection that uses Oracle Cloud Infrastructure FastConnect. For more information, see Overview of the Networking Service.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

  oci_core_drg { 'tenant (root)/my_drg':
    ensure        => 'present',
    freeform_tags => {'test' => 'no'},
  }

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_drg type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_image

A boot disk image for launching an instance. For more information, see Overview of the Compute Service.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_image type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_instance

A compute host. The image used to launch the instance determines its operating system and other software. The shape specified during the launch process determines the number of CPUs and memory allocated to the instance. For more information, see Overview of the Compute Service.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_instance { 'tenant (root)/my_instance':
  ensure              => 'present',
  availability_domain => 'arMl:EU-FRANKFURT-1-AD-1',
  fault_domain        => 'FAULT-DOMAIN-2',
  image               => 'Oracle-Linux-7.7-2019.12.18-0',
  launch_mode         => 'NATIVE',
  region              => 'eu-frankfurt-1',
  shape               => 'VM.Standard2.1',
  vnics               => {
    'nic1' => {
      'nic_index' => 0,
      'hostname_label' => 'my_host',
      'is_primary' => true,
      'skip_source_dest_check' => true,
      'subnet' => 'Public Subnet'
    }
  },
  volumes             => {
    'data_disk_1' => {
      'attachment_type' => 'paravirtualized',
      'device' => '/dev/oracleoci/oraclevdb',
      'display_name' => 'data_disk_1',
      'is_read_only' => true,
    },
    'data_disk_2' => {
      'attachment_type' => 'paravirtualized',
      'device' => '/dev/oracleoci/oraclevdc',
      'display_name' => 'data_disk_2',
      'is_read_only' => true,
    }
  },
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_instance type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_instance_configuration

An instance configuration is a template that defines the settings to use when creating Compute instances. For more information about instance configurations, see Managing Compute Instances.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_instance_configuration type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_instance_console_connection

The InstanceConsoleConnection API provides you with console access to Compute instances, enabling you to troubleshoot malfunctioning instances remotely.

For more information about console access, see Accessing the Console.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_instance_console_connection type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_instance_pool

An instance pool is a group of instances within the same region that are created based off of the same instance configuration. For more information about instance pools and instance configurations, see Managing Compute Instances.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_instance_pool type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_internet_gateway

Represents a router that connects the edge of a VCN with the Internet. For an example scenario that uses an internet gateway, see Typical Networking Service Scenarios.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_internet_gateway { 'tenant (root)/my_igw':
  ensure     => 'present',
  vcn        => 'my_compartment/my_own_vcn}',
  is_enabled => true,
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_internet_gateway type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_ip_sec_connection

A connection between a DRG and CPE. This connection consists of multiple IPSec tunnels. Creating this connection is one of the steps required when setting up an IPSec VPN.

Important: Each tunnel in an IPSec connection can use either static routing or BGP dynamic routing (see the {IPSecConnectionTunnel} object's routing attribute). Originally only static routing was supported and every IPSec connection was required to have at least one static route configured. To maintain backward compatibility in the API when support for BPG dynamic routing was introduced, the API accepts an empty list of static routes if you configure both of the IPSec tunnels to use BGP dynamic routing. If you switch a tunnel's routing from BGP to STATIC, you must first ensure that the IPSec connection is configured with at least one valid CIDR block static route. Oracle uses the IPSec connection's static routes when routing a tunnel's traffic only if that tunnel's routing attribute = STATIC. Otherwise the static routes are ignored.

For more information about the workflow for setting up an IPSec connection, see IPSec VPN.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_ip_sec_connection { 'tenant (root)/my_ip_sec_connection':
  ensure        => 'present',
  drg           => 'my_compartment/my_drg',
  cpe           => 'my_compartment/my_cpe',
  static_routes => ['10.0.0.0/16'],
  oci_timeout   => 1200, # This can take a long time, so we need a longer timeout
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_ip_sec_connection type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_local_peering_gateway

A local peering gateway (LPG) is an object on a VCN that lets that VCN peer with another VCN in the same region. Peering means that the two VCNs can communicate using private IP addresses, but without the traffic traversing the internet or routing through your on-premises network. For more information, see VCN Peering.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_local_peering_gateway { 'tenant (root)/my_peering_gatewaye':
  ensure      => 'present',
  vcn         => 'my_compartment/my_vcn',
  route_table => 'my_compartment/my_route_table',
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_local_peering_gateway type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_nat_gateway

A NAT (Network Address Translation) gateway, which represents a router that lets instances without public IPs contact the public internet without exposing the instance to inbound internet traffic. For more information, see NAT Gateway.

To use any of the API operations, you must be authorized in an IAM policy. If you are not authorized, talk to an administrator. If you are an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_nat_gateway { 'tenant (root)/my_nat_gatewway':
  ensure      => 'present',
  vcn         => 'my_compartment/my_vcn',
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_nat_gateway type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_network_security_group

A network security group (NSG) provides virtual firewall rules for a specific set of {Vnic} in a VCN. Compare NSGs with {SecurityList}, which provide virtual firewall rules to all the VNICs in a subnet.

A network security group consists of two items:

  • The set of {Vnic} that all have the same security rule needs (for example, a group of Compute instances all running the same application)
  • A set of NSG {SecurityRule} that apply to the VNICs in the group

After creating an NSG, you can add VNICs and security rules to it. For example, when you create an instance, you can specify one or more NSGs to add the instance to (see {#create_vnic_details create_vnic_details}). Or you can add an existing instance to an NSG with {#update_vnic update_vnic}.

To add security rules to an NSG, see {#add_network_security_group_security_rules add_network_security_group_security_rules}.

To list the VNICs in an NSG, see {#list_network_security_group_vnics list_network_security_group_vnics}.

To list the security rules in an NSG, see {#list_network_security_group_security_rules list_network_security_group_security_rules}.

For more information about network security groups, see Network Security Groups.

Important: Oracle Cloud Infrastructure Compute service images automatically include firewall rules (for example, Linux iptables, Windows firewall). If there are issues with some type of access to an instance, make sure all of the following are set correctly:

  • Any security rules in any NSGs the instance's VNIC belongs to
  • Any {SecurityList} associated with the instance's subnet
  • The instance's OS firewall rules

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_network_security_group { 'tenant (root)/my_security_group':
  ensure      => 'present',
  vcn         => 'my_compartment/my_vcn',
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_network_security_group type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_public_ip

A public IP is a conceptual term that refers to a public IP address and related properties. The publicIp object is the API representation of a public IP.

There are two types of public IPs:

  1. Ephemeral
  2. Reserved

For more information and comparison of the two types, see Public IP Addresses.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

  oci_core_public_ip { 'tenant (root)/#my_ip_address':
    ensure   => 'present',
    lifetime => 'RESERVED',
  }

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_public_ip type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_remote_peering_connection

A remote peering connection (RPC) is an object on a DRG that lets the VCN that is attached to the DRG peer with a VCN in a different region. Peering means that the two VCNs can communicate using private IP addresses, but without the traffic traversing the internet or routing through your on-premises network. For more information, see VCN Peering.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_remote_peering_connection type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_route_table

A collection of RouteRule objects, which are used to route packets based on destination IP to a particular network entity. For more information, see Overview of the Networking Service.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_route_table { 'tenant (root)/my_route_table':
  ensure      => 'present',
  vcn         => 'my_compartment/my_vcn',
  route_rules => [
    {
      'cidr_block' => '0.0.0.0/0',
      'destination' => '0.0.0.0/0',
      'destination_type' => 'CIDR_BLOCK',
      'network_entity_type' => 'internetgateway',
      'network_entity' => 'my_compartment/my_ig'
    }
  ],
}
oci_core_cpe { 'tenant (root)/test_cpe':
  ensure     => 'present',
  ip_address => '10.0.0.1',
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_route_table type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_security_list

A set of virtual firewall rules for your VCN. Security lists are configured at the subnet level, but the rules are applied to the ingress and egress traffic for the individual instances in the subnet. The rules can be stateful or stateless. For more information, see Security Lists. Note: Compare security lists to {NetworkSecurityGroup}s, which let you apply a set of security rules to a specific set of VNICs instead of an entire subnet. Oracle recommends using network security groups instead of security lists, although you can use either or both together.

Important: Oracle Cloud Infrastructure Compute service images automatically include firewall rules (for example, Linux iptables, Windows firewall). If there are issues with some type of access to an instance, make sure both the security lists associated with the instance's subnet and the instance's firewall rules are set correctly.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_security_list { 'tenant (root)/my_security_list':
  ensure                 => 'present',
  vcn                    => 'my_compartment/my_vcn',
  egress_security_rules  => [
  {
    'destination' => '0.0.0.0/0',
    'destination_type' => 'CIDR_BLOCK',
    'is_stateless' => false,
    'protocol' => 'all'
  }],
  ingress_security_rules => [
  {
    'is_stateless' => false,
    'protocol' => '6',
    'source' => '0.0.0.0/0',
    'source_type' => 'CIDR_BLOCK',
    'tcp_options' => {
      'destination_port_range' => {
        'max' => 22,
        'min' => 22
      }
    }
  },
  {
    'icmp_options' => {
      'code' => 4,
      'type' => 3
    },
    'is_stateless' => false,
    'protocol' => '1',
    'source' => '0.0.0.0/0',
    'source_type' => 'CIDR_BLOCK'
  },
  {
    'icmp_options' => {
      'type' => 3
    },
    'is_stateless' => false,
    'protocol' => '1',
    'source' => '10.0.0.0/16',
    'source_type' => 'CIDR_BLOCK'
  }],
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_security_list type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_service_gateway

Represents a router that lets your VCN privately access specific Oracle services such as Object Storage without exposing the VCN to the public internet. Traffic leaving the VCN and destined for a supported Oracle service (see {#list_services list_services}) is routed through the service gateway and does not traverse the internet. The instances in the VCN do not need to have public IP addresses nor be in a public subnet. The VCN does not need an internet gateway for this traffic. For more information, see Access to Oracle Services: Service Gateway.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_service_gateway { 'tenant (root)/my_service_gateway':
  ensure     => 'present',
  vcn        => 'my_compartment/my_vcn',
  services   => [],
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_service_gateway type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_subnet

A logical subdivision of a VCN. Each subnet consists of a contiguous range of IP addresses that do not overlap with other subnets in the VCN. Example: 172.16.1.0/24. For more information, see Overview of the Networking Service and VCNs and Subnets.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_subnet { 'tenant (root)/my_subnet':
  ensure             => 'present',
  cidr_block         => '10.0.0.0/24',
  dhcp_options       => 'my_compartment/my_dhcp_options',
  dns_label          => 'subnet',
  route_table        => 'my_compartment/my_route_table_',
  security_lists     => ['my_compartment/my_security_list_'],
  subnet_domain_name => 'subnet.vcn.oraclevcn.com',
  vcn                => 'my_compartment/my_vcn',
  virtual_router_ip  => '10.0.0.1',
  virtual_router_mac => '00:00:17:9B:B0:3F',
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_subnet type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_vcn

A virtual cloud network (VCN). For more information, see Overview of the Networking Service.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_vcn { 'tenant (root)/my_vcn':
    ensure        => 'present',
    cidr_block    => '10.0.0.0/16',
    freeform_tags => {'test' => 'yes'},
  }

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_vcn type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_virtual_circuit

For use with Oracle Cloud Infrastructure FastConnect.

A virtual circuit is an isolated network path that runs over one or more physical network connections to provide a single, logical connection between the edge router on the customer's existing network and Oracle Cloud Infrastructure. Private virtual circuits support private peering, and public virtual circuits support public peering. For more information, see FastConnect Overview.

Each virtual circuit is made up of information shared between a customer, Oracle, and a provider (if the customer is using FastConnect via a provider). Who fills in a given property of a virtual circuit depends on whether the BGP session related to that virtual circuit goes from the customer's edge router to Oracle, or from the provider's edge router to Oracle. Also, in the case where the customer is using a provider, values for some of the properties may not be present immediately, but may get filled in as the provider and Oracle each do their part to provision the virtual circuit.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_virtual_circuit type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_volume

A detachable block volume device that allows you to dynamically expand the storage capacity of an instance. For more information, see Overview of Cloud Volume Storage.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_volume { 'tenant (root)/my_volume':
    ensure              => 'present',
    availability_domain => 'arMl:EU-FRANKFURT-1-AD-1',
    size_in_gbs         => 50,
  }

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_volume type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_volume_backup

A point-in-time copy of a volume that can then be used to create a new block volume or recover a block volume. For more information, see Overview of Cloud Volume Storage.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_volume_backup { 'tenant (root)/my_backup':
    ensure              => 'present',
    volume              => 'my_compartment/my_volume',
  }

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_volume_backup type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_volume_backup_policy

A policy for automatically creating volume backups according to a recurring schedule. Has a set of one or more schedules that control when and how backups are created.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_volume_backup_policy { 'tenant (root)/my_backup_policy':
    ensure              => 'present',
    schedules    => [
      {
        'backup_type' => 'INCREMENTAL',
        'offset_seconds' => 0,
        'period' => 'ONE_WEEK',
        'retention_seconds' => 2419200
      },
      {
        'backup_type' => 'INCREMENTAL',
        'offset_seconds' => 0,
        'period' => 'ONE_MONTH',
        'retention_seconds' => 31557600
      },
      {
        'backup_type' => 'FULL',
        'offset_seconds' => 0,
        'period' => 'ONE_YEAR',
        'retention_seconds' => 157680000
      }],
  }

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_volume_backup_policy type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_volume_group

Specifies a volume group which is a collection of volumes. For more information, see Volume Groups.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_core_volume_group { 'tenant (root)/my_volume_group':
  ensure              => 'present',
  availability_domain => 'arMl:EU-FRANKFURT-1-AD-1',
  volumes             => ['my_compartment/my_volume_1'],
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_volume_group type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_core_volume_group_backup

A point-in-time copy of a volume group that can then be used to create a new volume group or restore a volume group. For more information, see Volume Groups.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_core_volume_group_backup type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_database_autonomous_database

An Oracle Autonomous Database.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_database_autonomous_database type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_database_db_system

DbSystem model.

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_database_db_system type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_file_storage_export

A file system and the path that you can use to mount it. Each export resource belongs to exactly one export set.

The export's path attribute is not a path in the referenced file system, but the value used by clients for the path component of the remotetarget argument when mounting the file system.

The path must start with a slash (/) followed by a sequence of zero or more slash-separated path elements. For any two export resources associated with the same export set, except those in a 'DELETED' state, the path element sequence for the first export resource can't contain the complete path element sequence of the second export resource.

For example, the following are acceptable:

  • /example and /path
  • /example1 and /example2
  • /example and /example1

The following examples are not acceptable:

  • /example and /example/path
  • / and /example

Paths may not end in a slash (/). No path element can be a period (.) or two periods in sequence (..). All path elements must be 255 bytes or less.

No two non-'DELETED' export resources in the same export set can reference the same file system.

Use exportOptions to control access to an export. For more information, see Export Options.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

    oci_file_storage_export { 'tenant (root)/my_compartment:my_export5':
      ensure          => 'present',
      file_system     => 'my_file_system',
      mount_target    => 'my_mount_target',
      export_options  => [
        {
          'source' => '0.0.0.0/0',
          'require_privileged_source_port' => false,
          'access' => 'READ_WRITE',
          'identity_squash' => 'NONE',
          'anonymous_uid' => 65534,
          'anonymous_gid' => 65534
        }],
      }
    }

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_file_storage_export type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_file_storage_file_system

An NFS file system. To allow access to a file system, add it to an export set and associate the export set with a mount target. The same file system can be in multiple export sets and associated with multiple mount targets.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_file_storage_file_system { 'tenant (root)/my_file_system':
  ensure              => 'present',
  availability_domain => 'arMl:EU-FRANKFURT-1-AD-1',
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_file_storage_file_system type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_file_storage_mount_target

Provides access to a collection of file systems through one or more VNICs on a specified subnet. The set of file systems is controlled through the referenced export set.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_file_storage_mount_target { 'tenant (root)/my_mount_target':
  ensure              => 'present',
  availability_domain => 'arMl:EU-FRANKFURT-1-AD-1',
  subnet              => 'my_sub_net',
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_file_storage_mount_target type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_identity_compartment

A collection of related resources. Compartments are a fundamental component of Oracle Cloud Infrastructure for organizing and isolating your cloud resources. You use them to clearly separate resources for the purposes of measuring usage and billing, access (through the use of IAM Service policies), and isolation (separating the resources for one project or business unit from another). A common approach is to create a compartment for each major part of your organization. For more information, see Overview of the IAM Service and also Setting Up Your Tenancy.

To place a resource in a compartment, simply specify the compartment ID in the "Create" request object when initially creating the resource. For example, to launch an instance into a particular compartment, specify that compartment's OCID in the LaunchInstance request. You can't move an existing resource from one compartment to another.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_identity_compartment { 'tenant (root)/my_compartment':
  ensure          => 'present',
  description     => 'my own compartment',
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_identity_compartment type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_identity_dynamic_group

A dynamic group defines a matching rule. Every bare metal or virtual machine instance is deployed with an instance certificate. The certificate contains metadata about the instance. This includes the instance OCID and the compartment OCID, along with a few other optional properties. When an API call is made using this instance certificate as the authenticator, the certificate can be matched to one or multiple dynamic groups. The instance can then get access to the API based on the permissions granted in policies written for the dynamic groups.

This works like regular user/group membership. But in that case, the membership is a static relationship, whereas in a dynamic group, the membership of an instance certificate to a dynamic group is determined during runtime. For more information, see Managing Dynamic Groups.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_identity_dynamic_group { 'tenant (root)/my_dynamic_group':
    ensure        => 'present',
    description   => 'description',
    matching_rule => "any {ANY {instance.id = 'ocid1.instance.region1.sea.abzwkljrobrgevdin34ftbzurf6vqutavtfqadaa2xlj3e66qwudvljkffxa'}}",
  }

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_identity_dynamic_group type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_identity_group

A collection of users who all need the same type of access to a particular set of resources or compartment. For conceptual information about groups and other IAM Service components, see Overview of the IAM Service.

If you're federating with an identity provider (IdP), you need to create mappings between the groups defined in the IdP and groups you define in the IAM service. For more information, see Identity Providers and Federation. Also see {IdentityProvider} and {IdpGroupMapping}.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_identity_group { 'tenant (root)/my_group':
  ensure => 'present',
  users  => ['my_user_1','my_user_2']
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_identity_group type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_identity_identity_provider

The resulting base object when you add an identity provider to your tenancy. A {Saml2IdentityProvider} is a specific type of IdentityProvider that supports the SAML 2.0 protocol. Each IdentityProvider object has its own OCID. For more information, see Identity Providers and Federation.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

This class has direct subclasses. If you are using this class as input to a service operations then you should favor using a subclass over the base class

Here is an example on how to use this:

oci_identity_provider { 'tenant (root)/my_provider':
  ensure          => 'present',
  description     => 'my own provider',
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_identity_identity_provider type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_identity_policy

A document that specifies the type of access a group has to the resources in a compartment. For information about policies and other IAM Service components, see Overview of the IAM Service. If you're new to policies, see Getting Started with Policies.

The word "policy" is used by people in different ways:

  • An individual statement written in the policy language
  • A collection of statements in a single, named "policy" document (which has an Oracle Cloud ID (OCID) assigned to it)
  • The overall body of policies your organization uses to control access to resources

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_identity_policy { 'tenant (root)/my_policy}':
    ensure        => 'present',
    description   => 'My own policy',
    statements    => ['Allow group Administrators to manage all-resources in compartment my_compartment'],
  }

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_identity_policy type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_identity_tag_namespace

A managed container for defined tags. A tag namespace is unique in a tenancy. For more information, see Managing Tags and Tag Namespaces.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

  oci_identity_tag_namespace { 'tenant (root)/my_namespace':
      ensure              => 'present',
      description         => 'my namespace',
    }

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_identity_tag_namespace type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_identity_user

An individual employee or system that needs to manage or use your company's Oracle Cloud Infrastructure resources. Users might need to launch instances, manage remote disks, work with your cloud network, etc. Users have one or more IAM Service credentials ({ApiKey}, {UIPassword}, {SwiftPassword} and {AuthToken}). For more information, see User Credentials). End users of your application are not typically IAM Service users. For conceptual information about users and other IAM Service components, see Overview of the IAM Service.

These users are created directly within the Oracle Cloud Infrastructure system, via the IAM service. They are different from federated users, who authenticate themselves to the Oracle Cloud Infrastructure Console via an identity provider. For more information, see Identity Providers and Federation.

To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Getting Started with Policies.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Here is an example on how to use this:

oci_identity_user { 'tenant (root)/my_user':
  ensure          => 'present',
  description     => 'my user',
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_identity_user type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_key_management_key

An encryption key.

Here is an example on how to use this:

oci_key_management_key { 'tenant (root)/my_key}':
  ensure    => 'present',
  vault     => 'my_compartmentt/my_vault',
  key_shape =>  {
    algorithm => 'AES',
    length    => 16,
  },
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_key_management_key type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_key_management_vault

A vault to manage keys.

Here is an example on how to use this:

oci_key_management_vault { 'tenant (root)/my_vault:
  ensure        => 'present',
  vault_type    => 'DEFAULT',
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_key_management_vault type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_object_storage_bucket

Manage object storage buckets.

Here is an example on how to use this:

oci_object_storage_bucket { 'tenant (root)/my_bucket':
  ensure        => 'present',
  freeform_tags => {'test' => 'no'},
}

This documentation is generated from the Ruby OCI SDK.

Properties

The following properties are available in the oci_object_storage_bucket type.

ensure

Valid values: present, absent

The basic property that the resource should be in.

Default value: present

oci_tenant

The tenant identifier.

To get started with OCI in Puppet, you first have to identify the tenant you will use. See this article on how you can set up a tenancy in OCI.

Based on this information you can identify yourself to Puppet:

oci_tenant {'tenant':
  tenancy_ocid => 'ocid1.tenancy.oc1..aaaaaaaaqf48mdndf7mmzgtbhyaqyyqlnjqj42ezgitogrfnz2a5qbw3mqa',
  user_ocid    => 'ocid1.user.oc1..aaaaaaaaw4yqam25cqygpst5e2eepr7nukpn2chf3ds6ftcypttw7tmkqyga',
  fingerprint  => '72:22:6d:f8:02:de:ee:6e:f5:a7:95:b9:72:f3:d8:eb',
  region       => 'eu-frankfurt-1',
  private_key  => "
-----BEGIN RSA PRIVATE KEY-----
....

MIIEpQIBAAKCAQEA4Qtpf303eu65bPKGXloBgfXTK4TwGzRdpHngxmWwZrEm/E3j
...
-----END RSA PRIVATE KEY-----"
  }

Functions

oci_config::latest_image_for

Type: Ruby 4.x API

See the file "LICENSE" for the full license governing this code.

Function to fetch the fact ora_is_root_db and based on that information decide if the specified sid is a root database or not.

oci_config::latest_image_for(String[1] $operating_system, String[1] $operating_system_version, Optional[Regexp] $name)

See the file "LICENSE" for the full license governing this code.

Function to fetch the fact ora_is_root_db and based on that information decide if the specified sid is a root database or not.

Returns: String

operating_system

Data type: String[1]

operating_system_version

Data type: String[1]

name

Data type: Optional[Regexp]

oci_config::wait_until_unavailable

Type: Ruby 4.x API

Wait until all targets no longer accept connections.

Note: Not available in apply block

Examples

Wait for targets
wait_until_unavailable($targets, wait_time => 300)

oci_config::wait_until_unavailable(Boltlib::TargetSpec $targets, Optional[Hash[String[1], Any]] $options)

Wait until all targets no longer accept connections.

Note: Not available in apply block

Returns: ResultSet A list of results, one entry per target. Successful results have no value.

Examples
Wait for targets
wait_until_unavailable($targets, wait_time => 300)
targets

Data type: Boltlib::TargetSpec

A pattern identifying zero or more targets. See {get_targets} for accepted patterns.

options

Data type: Optional[Hash[String[1], Any]]

A hash of additional options.

Options:

  • description String: A description for logging. (default: 'wait until no longer available')
  • wait_time Numeric: The time to wait. (default: 120)
  • retry_interval Numeric: The interval to wait before retrying. (default: 1)
  • _catch_errors Boolean: Whether to catch raised errors.

Data types

Oci_Config::AttachLoadBalancerDetails

The details of a Load Balancer attachment

Alias of Struct[{ Optional[load_balancer_id] => String, Optional[load_balancer] => String, Optional[backend_set_name] => String, Optional[port] => Integer, Optional[vnic_selection] => String, }]

Oci_Config::AutonomousDatabaseConnectionStrings

The details of an autonomous Database connection String

Alias of Struct[{ Optional[high] => String[1], Optional[medium] => String[1], Optional[low] => String[1], Optional[dedicated] => String[1], Optional[all_connection_strings] => Hash[String, String], }]

Oci_Config::AutonomousDatabaseConnectionUrls

The details of an autonomous Database connection url

Alias of Struct[{ Optional['sql_dev_web_url'] => String[1], Optional['apex_url'] => String[1], Optional['machine_learning_user_management_url'] => String[1], }]

Oci_Config::BootVolumeSourceDetails

The details of a boot volume source

Alias of Struct[{ Optional['type'] => String[1], Optional[id] => String[1], Optional[name] => String[1], }]

Oci_Config::Capacity

The details of the capacity

Alias of Struct[{ Optional[initial] => Integer, Optional[min] => Integer, Optional[max] => Integer }]

Oci_Config::ClientOptions

The details of the client options

Alias of Struct[{ Optional[source] => String, Optional[require_privileged_source_port] => Boolean, Optional[access] => String, Optional[identity_squash] => String, Optional[anonymous_uid] => Integer, Optional[anonymous_gid] => Integer, }]

Oci_Config::CreateAutoScalingPolicyDetails

The details of the auto scaling policy

Alias of Struct[{ Optional[capacity] => Oci_config::Capacity, Optional[display_name] => String, Optional[policy_type] => String, Optional[rules] => Array[Any], }]

Oci_Config::CreateDbHomeDetails

The Oci_Config::CreateDbHomeDetails data type.

Alias of Struct[{ Optional[display_name] => String[1], Optional[db_version] => String[1], Optional[database] => Oci_ConfigCreateDatabaseDetails, }]

Oci_Config::CreateIPSecConnectionTunnelDetails

The details of the IPSec connection tunnel

Alias of Struct[{ Optional[assign_public_ip] => Boolean, Optional[display_name] => String[1], Optional[routing] => String[1], Optional[ike_version] => String[1], Optional[shared_secret] => String[1], Optional[bgp_session_config] => Oci_config::CreateIPSecTunnelBgpSessionDetails, }]

Oci_Config::CreateIPSecTunnelBgpSessionDetails

The details of the IPSec tunnel BGP session

Alias of Struct[{ Optional[oracle_interface_ip] => String[1], Optional[customer_interface_ip] => String[1], Optional[customer_bgp_asn] => String[1], }]

Oci_Config::CreateInstancePoolPlacementConfigurationDetails

The details of the instance pool placement configuration

Alias of `Struct[{ Optional[availability_domain] => String, Optional[primary_subnet_type] => String, Optional[primary_subnet_id] => String, Optional[primary_subnet] => String,

Optional[secondary_vnic_subnets] => Array[Oci_config::InstancePoolPlacementSecondaryVnicSubnet]

}]`

Oci_Config::CreateVirtualCircuitPublicPrefixDetails

The details of the virtual circuit public prefix

Alias of Struct[{ Optional[cidr_block] => String[1], }]

Oci_Config::CreateVnicDetails

The details of VNIC

Alias of Struct[{ Optional[assign_public_ip] => Boolean, Optional[defined_tags] => Hash[String[1],String[1]], Optional[display_name] => String[1], Optional[freeform_tags] => Hash[String[1],String[1]], Optional[hostname_label] => String[1], Optional[nsg_ids] => String[1], Optional[nsg] => String[1], Optional[private_ip] => String[1], Optional[skip_source_dest_check] => Boolean, Optional[subnet_id] => String[1], Optional[subnet] => String[1] }]

Oci_Config::CrossConnectMapping

The details cross connect mapping

Alias of Struct[{ Optional[bgp_md5_auth_key] => String[1], Optional[cross_connect_or_cross_connect_group_id] => String[1], Optional[customer_bgp_peering_ip] => String[1], Optional[oracle_bgp_peering_ip] => String[1], Optional[customer_bgp_peering_ipv6] => String[1], Optional[oracle_bgp_peering_ipv6] => String[1], Optional[vlan] => Integer, }]

Oci_Config::DbSystemOptions

The Oci_Config::DbSystemOptions data type.

Alias of Struct[{ Optional[storage_management] => String[1], }]

Oci_Config::DhcpOption

The details of the DHCP option

Alias of Struct[{ Optional['type'] => String[1], Optional[server_type] => String[1], Optional[search_domain_names] => Array, Optional[custom_dns_servers] => Array, }]

Oci_Config::EgressSecurityRule

The details of EGress security rule

Alias of Struct[{ Optional[destination] => String[1], Optional[destination_type] => String[1], Optional[icmp_options] => Oci_config::IcmpOptions, Optional[is_stateless] => Boolean, Optional[protocol] => String[1], Optional[tcp_options] => Oci_config::TcpOptions, Optional[udp_options] => Oci_config::UdpOptions, }]

Oci_Config::ExadataIormConfig

The Oci_Config::ExadataIormConfig data type.

Alias of Struct[{ Optional[db_name] => String[1], Optional[share] => Integer, Optional[flash_cache_limit] => String[1], }]

Oci_Config::IcmpOptions

The details of the ICMP options

Alias of Struct[{ Optional['type'] => Integer, Optional[code] => Integer, }]

Oci_Config::ImageSourceDetails

The details of the image source

Alias of Struct[{ Optional[operating_system] => String[1], Optional[operating_system_version] => String[1], Optional[image_type] => String[1], Optional[image] => String[1], }]

Oci_Config::IngressSecurityRule

The details of ingress security rule

Alias of Struct[{ Optional[source_type] => String[1], Optional[source] => String[1], Optional[destination] => String[1], Optional[destination_type] => String[1], Optional[icmp_options] => Oci_config::IcmpOptions, Optional[is_stateless] => Boolean, Optional[protocol] => String[1], Optional[tcp_options] => Oci_config::TcpOptions, Optional[udp_options] => Oci_config::UdpOptions, }]

Oci_Config::InstanceAgentConfig

The details of the instance agent config

Alias of Struct[{ Optional[is_monitoring_supported] => Boolean, Optional[is_management_disabled] => Boolean, }]

Oci_Config::InstanceAgentFeatures

The details of the instance agent features

Alias of Struct[{ Optional[is_monitoring_supported] => Boolean, }]

Oci_Config::InstanceSourceDetails

The details of the instance source

Alias of Struct[{ source_type => String[1], Optional[image_id] => String[1], Optional[image] => String[1], Optional[image_type] => String[1], }]

Oci_Config::KeyShape

The details of the key shape

Alias of Struct[{ Optional[algorithm] => String[1], Optional[length] => Integer, }]

Oci_Config::LaunchInstanceAgentConfigDetails

The details of the launch instance agent config

Alias of Struct[{ Optional[is_monitoring_disabled] => Boolean, Optional[is_management_disabled] => Boolean, }]

Oci_Config::LaunchOptions

The details of the launch options

Alias of Struct[{ Optional[boot_volume_type] => String[1], Optional[firmware] => String[1], Optional[network_type] => String[1], Optional[remote_data_volume_type] => String[1], Optional[is_pv_encryption_in_transit_enabled] => Boolean, Optional[is_consistent_volume_naming_enabled] => Boolean, }]

Oci_Config::PortRange

The details of port range

Alias of Struct[{ Optional[min] => Integer, Optional[max] => Integer, }]

Oci_Config::RouteRule

The details of the route rule

Alias of Struct[{ Optional[cidr_block] => String[1], Optional[destination] => String[1], Optional[destination_type] => String[1], Optional[network_entity_id] => String[1], Optional[network_entity] => String[1], Optional[network_entity_type] => String[1], }]

Oci_Config::ServiceIdRequestDetails

The details of the service id request

Alias of Struct[{ Optional[service_id] => String[1], Optional[service] => String[1], Optional[service_name] => String[1], Optional[service_type] => String[1], }]

Oci_Config::ServiceIdResponseDetails

The details of the service id response

Alias of Struct[{ Optional[service_name] => String[1], Optional[service_id] => String[1], }]

Oci_Config::TcpOptions

The details of the TCP options

Alias of Struct[{ Optional[destination_port_range] => Oci_config::PortRange, Optional[source_port_range] => Oci_config::PortRange, }]

Oci_Config::UdpOptions

The details of the UDP options

Alias of Struct[{ Optional[destination_port_range] => Oci_config::PortRange, Optional[source_port_range] => Oci_config::PortRange, }]

Oci_Config::UserCapabilities

The details of the user capabilities

Alias of Struct[{ Optional[can_use_console_password] => Boolean, Optional[can_use_api_keys] => Boolean, Optional[can_use_auth_tokens] => Boolean, Optional[can_use_smtp_credentials] => Boolean, Optional[can_use_customer_secret_keys] => Boolean, Optional[can_use_o_auth2_client_credentials] => Boolean, }]

Oci_Config::VolumeBackupSchedule

The details of the volume backup schedule

Alias of Struct[{ Optional[backup_type] => String[1], Optional[offset_seconds] => Integer, Optional[period] => String[1], Optional[offset_type] => String[1], Optional[hour_of_day] => Integer, Optional[day_of_week] => String[1], Optional[day_of_month] => Integer, Optional[month] => String[1], Optional[retention_seconds] => Integer, Optional[time_zone] => String[1], }]

Oci_Config::VolumeGroupSourceDetails

The details of the volume group source

Alias of Struct[{ Optional['type'] => String[1], Optional[volume_group_backup_id] => String[1], Optional[volume_group_backup] => String[1], Optional[volume_ids] => Array[String[1]], Optional[volumes] => Array[String[1]], }]

Oci_Config::VolumeSourceDetails

The details of the volume source

Alias of Struct[{ Optional['type'] => String[1], Optional[id] => String[1], Optional[name] => String[1], }]

Tasks

create_block_volume_backup

Create a backup from the specified block volume. The backup will be made in the same compartment as the source volume.

Supports noop? false

Parameters

source

Data type: String[1]

The full name of the block volume to create a backup from.

destination

Data type: String[1]

The display name of the block volume backup.

type

Data type: Enum['INCREMENTAL','FULL']

The type of backup

defined_tags

Data type: Optional[Hash]

The defined tags applied to this backup

freeform_tags

Data type: Optional[Hash]

The freeform tags applied to this backup

database_action

Execute an database action on the specified node of a database server

Supports noop? false

Parameters

db_node_id

Data type: Optional[String[1]]

The ocid of the database node you want to apply the action on.

db_node_name

Data type: Optional[String[1]]

The name of the database node you want to apply the action on.

action

Data type: Enum['START','STOP','SOFTRESET','SOFTSTOP','RESET']

The action you want to apply on the specified instance.

delete_block_volume_backup

Delete a block volume backup .

Supports noop? false

Parameters

volume_name

Data type: String[1]

The full name of the block volume backup to be deleted.

instance_action

Execute an instance action on the specified instance

Supports noop? false

Parameters

instance_id

Data type: Optional[String[1]]

The ocid of the instance you want to apply the action on.

instance_name

Data type: Optional[String[1]]

The name of the instance you want to apply the action on.

action

Data type: Enum['START','STOP','SOFTRESET','SOFTSTOP','RESET']

The action you want to apply on the specified instance.

Plans

oci_config::shutdown_instances

See the file "LICENSE" for the full license governing this code.

++--++

--++--

Examples

bolt plan run oci_config::shutdowm_instances oci_master=mypupptserver instances=mynode1,mynode2,mynode3

Parameters

The following parameters are available in the oci_config::shutdown_instances plan.

oci_master

Data type: TargetSpec

The Puppetserver that has the oci_config module installed and has one or more oci_tenant instances defined on it.

Default value: 'localhost'

instances

Data type: TargetSpec

The OCI instance names you want to shutdown

shutdown_message

Data type: String[1]

The shutdown message to display on the specified node

Default value: 'Shutting down for cloud cost control'

after

Data type: Integer

The time in seconds to wait before actually start the shutdown.

Default value: 10

wait_time

Data type: Integer

The time in seconds to wait for the system to be shutdown. After this wait time is exceded and the system is still not down, continue processing.

Default value: 180

retry_interval

Data type: Integer

The retry interval between checks if the system is really down.

Default value: 10

oci_config::start_instances

See the file "LICENSE" for the full license governing this code.

++--++

--++--

Examples

bolt plan run oci_config::start_instances oci_master=mypupptserver instances=mynode1,mynode2,mynode3

Parameters

The following parameters are available in the oci_config::start_instances plan.

oci_master

Data type: TargetSpec

The Puppetserver that has the oci_config module installed and has one or more oci_tenant instances defined on it.

Default value: 'localhost'

instances

Data type: TargetSpec

The OCI instanc names you want to start