oracle.oci.oci_compute_instance_agent_instance_agent_command – Manage an InstanceAgentCommand resource in Oracle Cloud Infrastructure

Note

This plugin is part of the oracle.oci collection (version 4.13.0).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install oracle.oci.

To use it in a playbook, specify: oracle.oci.oci_compute_instance_agent_instance_agent_command.

New in version 2.9.0: of oracle.oci

Synopsis

  • This module allows the user to create and delete an InstanceAgentCommand resource in Oracle Cloud Infrastructure

  • For state=present, creates a command or script to run on a compute instance that is managed by Oracle Cloud Agent.

  • On Linux instances, the script runs in a bash shell. On Windows instances, the script runs in a batch shell.

  • Commands that require administrator privileges will run only if Oracle Cloud Agent is running with administrator privileges.

Requirements

The below requirements are needed on the host that executes this module.

Parameters

Parameter Choices/Defaults Comments
api_user
string
The OCID of the user, on whose behalf, OCI APIs are invoked. If not set, then the value of the OCI_USER_ID environment variable, if any, is used. This option is required if the user is not specified through a configuration file (See config_file_location). To get the user's OCID, please refer https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm.
api_user_fingerprint
string
Fingerprint for the key pair being used. If not set, then the value of the OCI_USER_FINGERPRINT environment variable, if any, is used. This option is required if the key fingerprint is not specified through a configuration file (See config_file_location). To get the key pair's fingerprint value please refer https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm.
api_user_key_file
string
Full path and filename of the private key (in PEM format). If not set, then the value of the OCI_USER_KEY_FILE variable, if any, is used. This option is required if the private key is not specified through a configuration file (See config_file_location). If the key is encrypted with a pass-phrase, the api_user_key_pass_phrase option must also be provided.
api_user_key_pass_phrase
string
Passphrase used by the key referenced in api_user_key_file, if it is encrypted. If not set, then the value of the OCI_USER_KEY_PASS_PHRASE variable, if any, is used. This option is required if the key passphrase is not specified through a configuration file (See config_file_location).
auth_purpose
string
    Choices:
  • service_principal
The auth purpose which can be used in conjunction with 'auth_type=instance_principal'. The default auth_purpose for instance_principal is None.
auth_type
string
    Choices:
  • api_key ←
  • instance_principal
  • instance_obo_user
  • resource_principal
The type of authentication to use for making API requests. By default auth_type="api_key" based authentication is performed and the API key (see api_user_key_file) in your config file will be used. If this 'auth_type' module option is not specified, the value of the OCI_ANSIBLE_AUTH_TYPE, if any, is used. Use auth_type="instance_principal" to use instance principal based authentication when running ansible playbooks within an OCI compute instance.
cert_bundle
string
The full path to a CA certificate bundle to be used for SSL verification. This will override the default CA certificate bundle. If not set, then the value of the OCI_ANSIBLE_CERT_BUNDLE variable, if any, is used.
compartment_id
string
The OCID of the compartment to create the command in.
Required for create using state=present.
Required for delete when environment variable OCI_USE_NAME_AS_IDENTIFIER is set.
config_file_location
string
Path to configuration file. If not set then the value of the OCI_CONFIG_FILE environment variable, if any, is used. Otherwise, defaults to ~/.oci/config.
config_profile_name
string
The profile to load from the config file referenced by config_file_location. If not set, then the value of the OCI_CONFIG_PROFILE environment variable, if any, is used. Otherwise, defaults to the "DEFAULT" profile in config_file_location.
content
dictionary
The contents of the command.
Required for create using state=present.
output
dictionary
The output destination for the command.
bucket_name
string
The Object Storage bucket for the command output.
Required when output_type is 'OBJECT_STORAGE_TUPLE'
namespace_name
string
The Object Storage namespace for the command output.
Required when output_type is 'OBJECT_STORAGE_TUPLE'
object_name
string
The Object Storage object name for the command output.
Required when output_type is 'OBJECT_STORAGE_TUPLE'
output_type
string
    Choices:
  • OBJECT_STORAGE_URI
  • OBJECT_STORAGE_TUPLE
  • TEXT ←
The output type for the command. The following values are supported:
- `TEXT` - the command output is returned as plain text. - `OBJECT_STORAGE_URI` - the command output is saved to an Object Storage URL. - `OBJECT_STORAGE_TUPLE` - the command output is saved to an Object Storage bucket.
For background information about Object Storage buckets and URLs, see Overview of Object Storage.
output_uri
string
The Object Storage URL or pre-authenticated request (PAR) for the command output.
Required when output_type is 'OBJECT_STORAGE_URI'
source
dictionary / required
The source of the command.
bucket_name
string
The Object Storage bucket for the command.
Required when source_type is 'OBJECT_STORAGE_TUPLE'
namespace_name
string
The Object Storage namespace for the command.
Required when source_type is 'OBJECT_STORAGE_TUPLE'
object_name
string
The Object Storage object name for the command.
Required when source_type is 'OBJECT_STORAGE_TUPLE'
source_type
string
    Choices:
  • OBJECT_STORAGE_TUPLE
  • OBJECT_STORAGE_URI
  • TEXT ←
The source type for the command. The following values are supported:
- `TEXT` - uses a plain text command that is specified inline with the request. - `OBJECT_STORAGE_URI` - imports a command from an Object Storage URL. - `OBJECT_STORAGE_TUPLE` - imports a command from an Object Storage bucket.
For background information about Object Storage buckets and URLs, see Overview of Object Storage.
source_uri
string
The Object Storage URL or pre-authenticated request (PAR) for the command.
Required when source_type is 'OBJECT_STORAGE_URI'
text
string
The plain text command.
Required when source_type is 'TEXT'
text_sha256
string
SHA-256 checksum value of the text content.
Applicable when source_type is 'TEXT'
display_name
string
A user-friendly name for the command. It does not have to be unique. Avoid entering confidential information.
Example: `Database Backup Script`
Required for create, delete when environment variable OCI_USE_NAME_AS_IDENTIFIER is set.

aliases: name
execution_time_out_in_seconds
integer
The amount of time that Oracle Cloud Agent is given to run the command on the instance before timing out. The timer starts when Oracle Cloud Agent starts the command. Zero means no timeout.
Required for create using state=present.
force_create
boolean
    Choices:
  • no ←
  • yes
Whether to attempt non-idempotent creation of a resource. By default, create resource is an idempotent operation, and doesn't create the resource if it already exists. Setting this option to true, forcefully creates a copy of the resource, even if it already exists.This option is mutually exclusive with key_by.
instance_agent_command_id
string
The OCID of the command.
Required for delete using state=absent when environment variable OCI_USE_NAME_AS_IDENTIFIER is not set.

aliases: id
key_by
list / elements=string
The list of attributes of this resource which should be used to uniquely identify an instance of the resource. By default, all the attributes of a resource are used to uniquely identify a resource.
region
string
The Oracle Cloud Infrastructure region to use for all OCI API requests. If not set, then the value of the OCI_REGION variable, if any, is used. This option is required if the region is not specified through a configuration file (See config_file_location). Please refer to https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/regions.htm for more information on OCI regions.
state
string
    Choices:
  • present ←
  • absent
The state of the InstanceAgentCommand.
Use state=present to create an InstanceAgentCommand.
Use state=absent to delete an InstanceAgentCommand.
target
dictionary
The target instance to run the command on.
Required for create using state=present.
instance_id
string
The OCID of the target instance.
tenancy
string
OCID of your tenancy. If not set, then the value of the OCI_TENANCY variable, if any, is used. This option is required if the tenancy OCID is not specified through a configuration file (See config_file_location). To get the tenancy OCID, please refer https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm

Examples

- name: Create instance_agent_command
  oci_compute_instance_agent_instance_agent_command:
    # required
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    execution_time_out_in_seconds: 56
    target:
      # optional
      instance_id: "ocid1.instance.oc1..xxxxxxEXAMPLExxxxxx"
    content:
      # required
      source:
        # required
        bucket_name: bucket_name_example
        namespace_name: namespace_name_example
        object_name: object_name_example
        source_type: OBJECT_STORAGE_TUPLE

        # optional
      output:
        # required
        output_uri: output_uri_example
        output_type: OBJECT_STORAGE_URI

    # optional
    display_name: display_name_example

- name: Delete instance_agent_command
  oci_compute_instance_agent_instance_agent_command:
    # required
    instance_agent_command_id: "ocid1.instanceagentcommand.oc1..xxxxxxEXAMPLExxxxxx"
    state: absent

- name: Delete instance_agent_command using name (when environment variable OCI_USE_NAME_AS_IDENTIFIER is set)
  oci_compute_instance_agent_instance_agent_command:
    # required
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    display_name: display_name_example
    state: absent

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
instance_agent_command
complex
on success
Details of the InstanceAgentCommand resource acted upon by the current operation

Sample:
{'compartment_id': 'ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx', 'content': {'output': {'bucket_name': 'bucket_name_example', 'namespace_name': 'namespace_name_example', 'object_name': 'object_name_example', 'output_type': 'TEXT', 'output_uri': 'output_uri_example'}, 'source': {'bucket_name': 'bucket_name_example', 'namespace_name': 'namespace_name_example', 'object_name': 'object_name_example', 'source_type': 'TEXT', 'source_uri': 'source_uri_example', 'text': 'text_example', 'text_sha256': 'text_sha256_example'}}, 'display_name': 'display_name_example', 'execution_time_out_in_seconds': 56, 'id': 'ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx', 'is_canceled': True, 'target': {'instance_id': 'ocid1.instance.oc1..xxxxxxEXAMPLExxxxxx'}, 'time_created': '2013-10-20T19:20:30+01:00', 'time_updated': '2013-10-20T19:20:30+01:00'}
 
compartment_id
string
on success
The OCID of the compartment containing the command.

Sample:
ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
 
content
complex
on success
The contents of the command.

   
output
complex
on success
The output destination for the command.

     
bucket_name
string
on success
The Object Storage bucket for the command output.

Sample:
bucket_name_example
     
namespace_name
string
on success
The Object Storage namespace for the command output.

Sample:
namespace_name_example
     
object_name
string
on success
The Object Storage object name for the command output.

Sample:
object_name_example
     
output_type
string
on success
The output type for the command. The following values are supported:
- `TEXT` - the command output is returned as plain text. - `OBJECT_STORAGE_URI` - the command output is saved to an Object Storage URL. - `OBJECT_STORAGE_TUPLE` - the command output is saved to an Object Storage bucket.
For background information about Object Storage buckets and URLs, see Overview of Object Storage.

Sample:
TEXT
     
output_uri
string
on success
The Object Storage URL or pre-authenticated request (PAR) for the command output.

Sample:
output_uri_example
   
source
complex
on success
The source of the command.

     
bucket_name
string
on success
The Object Storage bucket for the command.

Sample:
bucket_name_example
     
namespace_name
string
on success
The Object Storage namespace for the command.

Sample:
namespace_name_example
     
object_name
string
on success
The Object Storage object name for the command.

Sample:
object_name_example
     
source_type
string
on success
The source type for the command. The following values are supported:
- `TEXT` - uses a plain text command that is specified inline with the request. - `OBJECT_STORAGE_URI` - imports a command from an Object Storage URL. - `OBJECT_STORAGE_TUPLE` - imports a command from an Object Storage bucket.
For background information about Object Storage buckets and URLs, see Overview of Object Storage.

Sample:
TEXT
     
source_uri
string
on success
The Object Storage URL or pre-authenticated request (PAR) for the command.

Sample:
source_uri_example
     
text
string
on success
The plain text command.

Sample:
text_example
     
text_sha256
string
on success
SHA-256 checksum value of the text content.

Sample:
text_sha256_example
 
display_name
string
on success
A user-friendly name. Does not have to be unique. Avoid entering confidential information.

Sample:
display_name_example
 
execution_time_out_in_seconds
integer
on success
The amount of time that Oracle Cloud Agent is given to run the command on the instance before timing out. The timer starts when Oracle Cloud Agent starts the command. Zero means no timeout.

Sample:
56
 
id
string
on success
The OCID of the command.

Sample:
ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
 
is_canceled
boolean
on success
Whether a request was made to cancel the command. Canceling a command is a best-effort attempt.

Sample:
True
 
target
complex
on success
The target instance that the command runs on.

   
instance_id
string
on success
The OCID of the target instance.

Sample:
ocid1.instance.oc1..xxxxxxEXAMPLExxxxxx
 
time_created
string
on success
The date and time the command was created, in the format defined by RFC3339.

Sample:
2013-10-20T19:20:30+01:00
 
time_updated
string
on success
The date and time the command was last updated, in the format defined by RFC3339.

Sample:
2013-10-20T19:20:30+01:00


Authors

  • Oracle (@oracle)