oracle.oci.oci_compute_instance_agent_instance_agent_command (5.0.0) — module

Manage an InstanceAgentCommand resource in Oracle Cloud Infrastructure

| "added in version" 2.9.0 of oracle.oci"

Authors: Oracle (@oracle)

preview | supported by community

Install collection

Install with ansible-galaxy collection install oracle.oci:==5.0.0


Add to requirements.yml

  collections:
    - name: oracle.oci
      version: 5.0.0

Description

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

For I(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

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- 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
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Delete instance_agent_command
  oci_compute_instance_agent_instance_agent_command:
    # required
    instance_agent_command_id: "ocid1.instanceagentcommand.oc1..xxxxxxEXAMPLExxxxxx"
    state: absent
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- 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

Inputs

    
state:
    choices:
    - present
    - absent
    default: present
    description:
    - The state of the InstanceAgentCommand.
    - Use I(state=present) to create an InstanceAgentCommand.
    - Use I(state=absent) to delete an InstanceAgentCommand.
    required: false
    type: str

key_by:
    description: 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.
    elements: str
    type: list

region:
    description:
    - 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 C(config_file_location)).
      Please refer to U(https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/regions.htm)
      for more information on OCI regions.
    type: str

target:
    description:
    - The target instance to run the command on.
    - Required for create using I(state=present).
    suboptions:
      instance_id:
        description:
        - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
          of the target instance.
        type: str
    type: dict

content:
    description:
    - The contents of the command.
    - Required for create using I(state=present).
    suboptions:
      output:
        description:
        - The output destination for the command.
        suboptions:
          bucket_name:
            description:
            - The Object Storage bucket for the command output.
            - Required when output_type is 'OBJECT_STORAGE_TUPLE'
            type: str
          namespace_name:
            description:
            - The Object Storage namespace for the command output.
            - Required when output_type is 'OBJECT_STORAGE_TUPLE'
            type: str
          object_name:
            description:
            - The Object Storage object name for the command output.
            - Required when output_type is 'OBJECT_STORAGE_TUPLE'
            type: str
          output_type:
            choices:
            - OBJECT_STORAGE_URI
            - OBJECT_STORAGE_TUPLE
            - TEXT
            default: TEXT
            description:
            - '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 L(Overview
              of Object Storage,https://docs.cloud.oracle.com/Content/Object/Concepts/objectstorageoverview.htm).
            type: str
          output_uri:
            description:
            - The Object Storage URL or pre-authenticated request (PAR) for the command
              output.
            - Required when output_type is 'OBJECT_STORAGE_URI'
            type: str
        type: dict
      source:
        description:
        - The source of the command.
        required: true
        suboptions:
          bucket_name:
            description:
            - The Object Storage bucket for the command.
            - Required when source_type is 'OBJECT_STORAGE_TUPLE'
            type: str
          namespace_name:
            description:
            - The Object Storage namespace for the command.
            - Required when source_type is 'OBJECT_STORAGE_TUPLE'
            type: str
          object_name:
            description:
            - The Object Storage object name for the command.
            - Required when source_type is 'OBJECT_STORAGE_TUPLE'
            type: str
          source_type:
            choices:
            - OBJECT_STORAGE_TUPLE
            - OBJECT_STORAGE_URI
            - TEXT
            default: TEXT
            description:
            - '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 L(Overview
              of Object Storage,https://docs.cloud.oracle.com/Content/Object/Concepts/objectstorageoverview.htm).
            type: str
          source_uri:
            description:
            - The Object Storage URL or pre-authenticated request (PAR) for the command.
            - Required when source_type is 'OBJECT_STORAGE_URI'
            type: str
          text:
            description:
            - The plain text command.
            - Required when source_type is 'TEXT'
            type: str
          text_sha256:
            description:
            - SHA-256 checksum value of the text content.
            - Applicable when source_type is 'TEXT'
            type: str
        type: dict
    type: dict

tenancy:
    description:
    - 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 C(config_file_location)). To get the tenancy OCID, please
      refer U(https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm)
    type: str

api_user:
    description:
    - 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 C(config_file_location)).
      To get the user's OCID, please refer U(https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm).
    type: str

auth_type:
    choices:
    - api_key
    - instance_principal
    - instance_obo_user
    - resource_principal
    - security_token
    default: api_key
    description:
    - The type of authentication to use for making API requests. By default C(auth_type="api_key")
      based authentication is performed and the API key (see I(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 C(auth_type="instance_principal")
      to use instance principal based authentication when running ansible playbooks within
      an OCI compute instance.
    type: str

cert_bundle:
    description:
    - 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.
    type: str

auth_purpose:
    choices:
    - service_principal
    description:
    - The auth purpose which can be used in conjunction with 'auth_type=instance_principal'.
      The default auth_purpose for instance_principal is None.
    type: str

display_name:
    aliases:
    - name
    description:
    - 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 C(OCI_USE_NAME_AS_IDENTIFIER)
      is set.
    type: str

force_create:
    default: false
    description: 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 I(key_by).
    type: bool

compartment_id:
    description:
    - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
      of the compartment to create the command in.
    - Required for create using I(state=present).
    - Required for delete when environment variable C(OCI_USE_NAME_AS_IDENTIFIER) is set.
    type: str

api_user_key_file:
    description:
    - 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 C(config_file_location)).
      If the key is encrypted with a pass-phrase, the C(api_user_key_pass_phrase) option
      must also be provided.
    type: str

config_profile_name:
    description:
    - The profile to load from the config file referenced by C(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 C(config_file_location).
    type: str

api_user_fingerprint:
    description:
    - 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 C(config_file_location)). To
      get the key pair's fingerprint value please refer U(https://docs.us-phoenix-1.oraclecloud.com/Content/API/Concepts/apisigningkey.htm).
    type: str

config_file_location:
    description:
    - 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.
    type: str

api_user_key_pass_phrase:
    description:
    - Passphrase used by the key referenced in C(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 C(config_file_location)).
    type: str

instance_agent_command_id:
    aliases:
    - id
    description:
    - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
      of the command.
    - Required for delete using I(state=absent) when environment variable C(OCI_USE_NAME_AS_IDENTIFIER)
      is not set.
    type: str

execution_time_out_in_seconds:
    description:
    - 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 I(state=present).
    type: int

realm_specific_endpoint_template_enabled:
    description:
    - Enable/Disable realm specific endpoint template for service client. By Default,
      realm specific endpoint template is disabled. If not set, then the value of the
      OCI_REALM_SPECIFIC_SERVICE_ENDPOINT_TEMPLATE_ENABLED variable, if any, is used.
    type: bool

Outputs

instance_agent_command:
  contains:
    compartment_id:
      description:
      - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
        of the compartment containing the command.
      returned: on success
      sample: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    content:
      contains:
        output:
          contains:
            bucket_name:
              description:
              - The Object Storage bucket for the command output.
              returned: on success
              sample: bucket_name_example
              type: str
            namespace_name:
              description:
              - The Object Storage namespace for the command output.
              returned: on success
              sample: namespace_name_example
              type: str
            object_name:
              description:
              - The Object Storage object name for the command output.
              returned: on success
              sample: object_name_example
              type: str
            output_type:
              description:
              - '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 L(Overview of Object Storage,https://docs.cloud.oracle.com/Content/Object/Concepts/objectstorageoverview.htm).
              returned: on success
              sample: TEXT
              type: str
            output_uri:
              description:
              - The Object Storage URL or pre-authenticated request (PAR) for the
                command output.
              returned: on success
              sample: output_uri_example
              type: str
          description:
          - The output destination for the command.
          returned: on success
          type: complex
        source:
          contains:
            bucket_name:
              description:
              - The Object Storage bucket for the command.
              returned: on success
              sample: bucket_name_example
              type: str
            namespace_name:
              description:
              - The Object Storage namespace for the command.
              returned: on success
              sample: namespace_name_example
              type: str
            object_name:
              description:
              - The Object Storage object name for the command.
              returned: on success
              sample: object_name_example
              type: str
            source_type:
              description:
              - '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 L(Overview of Object Storage,https://docs.cloud.oracle.com/Content/Object/Concepts/objectstorageoverview.htm).
              returned: on success
              sample: TEXT
              type: str
            source_uri:
              description:
              - The Object Storage URL or pre-authenticated request (PAR) for the
                command.
              returned: on success
              sample: source_uri_example
              type: str
            text:
              description:
              - The plain text command.
              returned: on success
              sample: text_example
              type: str
            text_sha256:
              description:
              - SHA-256 checksum value of the text content.
              returned: on success
              sample: text_sha256_example
              type: str
          description:
          - The source of the command.
          returned: on success
          type: complex
      description:
      - The contents of the command.
      returned: on success
      type: complex
    display_name:
      description:
      - A user-friendly name. Does not have to be unique. Avoid entering confidential
        information.
      returned: on success
      sample: display_name_example
      type: str
    execution_time_out_in_seconds:
      description:
      - 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.
      returned: on success
      sample: 56
      type: int
    id:
      description:
      - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
        of the command.
      returned: on success
      sample: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    is_canceled:
      description:
      - Whether a request was made to cancel the command. Canceling a command is a
        best-effort attempt.
      returned: on success
      sample: true
      type: bool
    target:
      contains:
        instance_id:
          description:
          - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
            of the target instance.
          returned: on success
          sample: ocid1.instance.oc1..xxxxxxEXAMPLExxxxxx
          type: str
      description:
      - The target instance that the command runs on.
      returned: on success
      type: complex
    time_created:
      description:
      - The date and time the command was created, in the format defined by L(RFC3339,https://tools.ietf.org/html/rfc3339).
      returned: on success
      sample: '2013-10-20T19:20:30+01:00'
      type: str
    time_updated:
      description:
      - The date and time the command was last updated, in the format defined by L(RFC3339,https://tools.ietf.org/html/rfc3339).
      returned: on success
      sample: '2013-10-20T19:20:30+01:00'
      type: str
  description:
  - Details of the InstanceAgentCommand resource acted upon by the current operation
  returned: on success
  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'
  type: complex