Overview

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-----"
  }

Attributes

Attribute Name Short Description
disable_corrective_change Disable the modification of a resource when Puppet® decides it is a corrective change.
disable_corrective_ensure Disable the creation or removal of a resource when Puppet® decides is a corrective change.
facts The facts you want to enable on this tennant.
fingerprint SSL Fingerprint to use for authentication.
instance_principal Authenticate as an instance principal.
max_attempts to make calls and declare a timeout or that we have no rights to access the resource.
max_elapsed_time_millis to make calls and declare a timeout or that we have no rights to access the resource.
max_sleep_between_attempts_millis sleep between attempts.
name The name of the setting.
private_key Client private key content.
private_key_password Pass phrase used for key file, if it is encrypted.
provider resource.
proxy_address Address (fqdn) of the proxy server.
proxy_password Proxy password.
proxy_port IP port of the proxy server.
proxy_user Username for the proxy.
region A region to use for APIs created with this instance.
sleep_calc_millis_proc The time to sleep between the OCI call attempts.
tenancy_ocid OCID of the tenancy to use for authentication.
user_ocid OCID of the user to use for authentication.

disable_corrective_change

Disable the modification of a resource when Puppet® decides it is a corrective change.

(requires easy_type V2.11.0 or higher)

When using a Puppet® Server, Puppet® knows about adaptive and corrective changes. A corrective change is when Puppet® notices that the resource has changed, but the catalog has not changed. This can occur for example, when a user, by accident or willingly, changed something on the system that Puppet® is managing. The normal Puppet® process then repairs this and puts the resource back in the state as defined in the catalog. This process is precisely what you want most of the time, but not always. This can sometimes also occur when a hardware or network error occurs. Then Puppet® cannot correctly determine the current state of the system and thinks the resource is changed, while in fact, it is not. Letting Puppet recreate remove or change the resource in these cases, is NOT wat you want.

Using the disable_corrective_change parameter, you can disable corrective changes on the current resource.

Here is an example of this:

crucial_resource {'be_carefull':
  ...
  disable_corrective_change => true,
  ...
}

When a corrective ensure does happen on the resource Puppet® will not modify the resource and signal an error:

    Error: Corrective change present requested by catalog, but disabled by parameter disable_corrective_change
    Error: /Stage[main]/Main/Crucial_resource[be_carefull]/parameter: change from '10' to '20' failed: Corrective change present requested by catalog, but disabled by parameter disable_corrective_change. (corrective)

Back to overview of oci_tenant

disable_corrective_ensure

Disable the creation or removal of a resource when Puppet® decides is a corrective change.

(requires easy_type V2.11.0 or higher)

When using a Puppet® Server, Puppet® knows about adaptive and corrective changes. A corrective change is when Puppet® notices that the resource has changed, but the catalog has not changed. This can occur for example, when a user, by accident or willingly, changed something on the system that Puppet® is managing. The normal Puppet® process then repairs this and puts the resource back in the state as defined in the catalog. This process is precisely what you want most of the time, but not always. This can sometimes also occur when a hardware or network error occurs. Then Puppet® cannot correctly determine the current state of the system and thinks the resource is changed, while in fact, it is not. Letting Puppet recreate remove or change the resource in these cases, is NOT wat you want.

Using the disable_corrective_ensure parameter, you can disable corrective ensure present or ensure absent actions on the current resource.

Here is an example of this:

crucial_resource {'be_carefull':
  ensure                    => 'present',
  ...
  disable_corrective_ensure => true,
  ...
}

When a corrective ensure does happen on the resource Puppet® will not create or remove the resource and signal an error:

    Error: Corrective ensure present requested by catalog, but disabled by parameter disable_corrective_ensure.
    Error: /Stage[main]/Main/Crucial_resource[be_carefull]/ensure: change from 'absent' to 'present' failed: Corrective ensure present requested by catalog, but disabled by parameter disable_corrective_ensure. (corrective)

Back to overview of oci_tenant

facts

The facts you want to enable on this tennant.

Back to overview of oci_tenant

fingerprint

SSL Fingerprint to use for authentication.

Back to overview of oci_tenant

instance_principal

Authenticate as an instance principal.

This means for this tenancy, the oci_config module will connect to OCI without any of the other authorisation properties and behave like an instance principal.

Make sure you have given the instance enough rights to do the actions you want it to do.

Back to overview of oci_tenant

max_attempts

The number of attempts for OCI calls before we stop trying to make calls and declare a timeout or that we have no rights to access the resource.

** WARNING **

Be very carefull when specifying these values. In general the provided defaults work well. Changes to these values may have dramtic effects.

Back to overview of oci_tenant

max_elapsed_time_millis

The maximum amount of time (in milliseconds) that can elapse for all attempts before we stop trying to make calls and declare a timeout or that we have no rights to access the resource.

** WARNING **

Be very carefull when specifying these values. In general the provided defaults work well. Changes to these values may have dramtic effects.

Back to overview of oci_tenant

max_sleep_between_attempts_millis

For exponential backoff and retry calclulation, the maximum amount of time (in milliseconds) to sleep between attempts.

** WARNING **

Be very carefull when specifying these values. In general the provided defaults work well. Changes to these values may have dramtic effects.

Back to overview of oci_tenant

name

The name of the setting.

Back to overview of oci_tenant

private_key

Client private key content.

Back to overview of oci_tenant

private_key_password

Pass phrase used for key file, if it is encrypted.

Back to overview of oci_tenant

provider

The specific backend to use for this oci_tenant resource. You will seldom need to specify this — Puppet® will usually discover the appropriate provider for your platform.Available providers are:

simple
Manage the oci_tenant file through yaml

Back to overview of oci_tenant

proxy_address

Address (fqdn) of the proxy server.

Back to overview of oci_tenant

proxy_password

Proxy password.

Back to overview of oci_tenant

proxy_port

IP port of the proxy server.

Back to overview of oci_tenant

proxy_user

Username for the proxy.

Back to overview of oci_tenant

region

A region to use for APIs created with this instance.

Back to overview of oci_tenant

sleep_calc_millis_proc

The time to sleep between the OCI call attempts.

** WARNING **

Be very carefull when specifying these values. In general the provided defaults work well. Changes to these values may have dramtic effects.

Back to overview of oci_tenant

tenancy_ocid

OCID of the tenancy to use for authentication.

Back to overview of oci_tenant

user_ocid

OCID of the user to use for authentication.

Back to overview of oci_tenant