oracle.oci.oci_os_management_hub_software_source_actions – Perform actions on a SoftwareSource resource in Oracle Cloud Infrastructure

Note

This plugin is part of the oracle.oci collection (version 5.5.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_os_management_hub_software_source_actions.

New in version 2.9.0: of oracle.oci

Synopsis

  • Perform actions on a SoftwareSource resource in Oracle Cloud Infrastructure

  • For action=add_packages, adds packages to a software source. This operation can only be done for custom and versioned custom software sources that are not created using filters. For a versioned custom software source, you can only add packages when the source is created. Once content is added to a versioned custom software source, it is immutable.

  • For action=change_compartment, moves the specified software sources to a different compartment within the same tenancy. For information about moving resources between compartments, see Moving Resources to a Different Compartment.

Requirements

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

Parameters

Parameter Choices/Defaults Comments
action
string / required
    Choices:
  • add_packages
  • change_compartment
The action to perform on the SoftwareSource.
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
  • security_token
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 move the software source to.
Required for action=change_compartment.
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.
packages
list / elements=string
List of packages specified by the full package name (NEVRA.rpm).
Required for action=add_packages.
realm_specific_endpoint_template_enabled
boolean
    Choices:
  • no
  • yes
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.
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.
software_source_id
string / required
The OCID of the software source.

aliases: id
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
wait
boolean
    Choices:
  • no
  • yes ←
Whether to wait for create or delete operation to complete.
wait_timeout
integer
Time, in seconds, to wait when wait=yes. Defaults to 1200 for most of the services but some services might have a longer wait timeout.

Examples

- name: Perform action add_packages on software_source
  oci_os_management_hub_software_source_actions:
    # required
    packages: [ "packages_example" ]
    software_source_id: "ocid1.softwaresource.oc1..xxxxxxEXAMPLExxxxxx"
    action: add_packages

- name: Perform action change_compartment on software_source
  oci_os_management_hub_software_source_actions:
    # required
    software_source_id: "ocid1.softwaresource.oc1..xxxxxxEXAMPLExxxxxx"
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    action: change_compartment

Return Values

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

Key Returned Description
software_source
complex
on success
Details of the SoftwareSource resource acted upon by the current operation

Sample:
{'arch_type': 'X86_64', 'availability': 'AVAILABLE', 'availability_at_oci': 'AVAILABLE', 'checksum_type': 'SHA1', 'compartment_id': 'ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx', 'custom_software_source_filter': {'module_stream_profile_filters': [{'filter_type': 'INCLUDE', 'module_name': 'module_name_example', 'profile_name': 'profile_name_example', 'stream_name': 'stream_name_example'}], 'package_filters': [{'filter_type': 'INCLUDE', 'package_name': 'package_name_example', 'package_name_pattern': 'package_name_pattern_example', 'package_version': 'package_version_example'}], 'package_group_filters': [{'filter_type': 'INCLUDE', 'package_groups': []}]}, 'defined_tags': {'Operations': {'CostCenter': 'US'}}, 'description': 'description_example', 'display_name': 'display_name_example', 'freeform_tags': {'Department': 'Finance'}, 'gpg_key_fingerprint': 'gpg_key_fingerprint_example', 'gpg_key_id': 'ocid1.gpgkey.oc1..xxxxxxEXAMPLExxxxxx', 'gpg_key_url': 'gpg_key_url_example', 'id': 'ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx', 'is_auto_resolve_dependencies': True, 'is_automatically_updated': True, 'is_created_from_package_list': True, 'is_latest_content_only': True, 'is_mandatory_for_autonomous_linux': True, 'lifecycle_state': 'CREATING', 'origin_software_source_id': 'ocid1.originsoftwaresource.oc1..xxxxxxEXAMPLExxxxxx', 'os_family': 'ORACLE_LINUX_9', 'package_count': 56, 'packages': [], 'repo_id': 'ocid1.repo.oc1..xxxxxxEXAMPLExxxxxx', 'size': 1.2, 'software_source_type': 'VENDOR', 'software_source_version': 'software_source_version_example', 'system_tags': {}, 'time_created': '2013-10-20T19:20:30+01:00', 'url': 'url_example', 'vendor_name': 'ORACLE', 'vendor_software_sources': [{'display_name': 'display_name_example', 'id': 'ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx'}]}
 
arch_type
string
on success
The architecture type supported by the software source.

Sample:
X86_64
 
availability
string
on success
Availability of the software source (for non-OCI environments).

Sample:
AVAILABLE
 
availability_at_oci
string
on success
Availability of the software source (for OCI environments).

Sample:
AVAILABLE
 
checksum_type
string
on success
The yum repository checksum type used by this software source.

Sample:
SHA1
 
compartment_id
string
on success
The OCID of the compartment that contains the software source.

Sample:
ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
 
custom_software_source_filter
complex
on success

   
module_stream_profile_filters
complex
on success
The list of module stream/profile filters.

     
filter_type
string
on success
The type of the filter.

Sample:
INCLUDE
     
module_name
string
on success
Module name.

Sample:
module_name_example
     
profile_name
string
on success
Profile name.

Sample:
profile_name_example
     
stream_name
string
on success
Stream name.

Sample:
stream_name_example
   
package_filters
complex
on success
The list of package filters.

     
filter_type
string
on success
The type of the filter.

Sample:
INCLUDE
     
package_name
string
on success
The package name.

Sample:
package_name_example
     
package_name_pattern
string
on success
The package name pattern.

Sample:
package_name_pattern_example
     
package_version
string
on success
The package version, which is denoted by 'version-release', or 'epoch:version-release'.

Sample:
package_version_example
   
package_group_filters
complex
on success
The list of group filters.

     
filter_type
string
on success
The type of the filter.

Sample:
INCLUDE
     
package_groups
list / elements=string
on success
List of package group names.

 
defined_tags
dictionary
on success
Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: `{"Operations": {"CostCenter": "42"}}`

Sample:
{'Operations': {'CostCenter': 'US'}}
 
description
string
on success
User-specified description for the software source.

Sample:
description_example
 
display_name
string
on success
User-friendly name for the software source.

Sample:
display_name_example
 
freeform_tags
dictionary
on success
Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: `{"Department": "Finance"}`

Sample:
{'Department': 'Finance'}
 
gpg_key_fingerprint
string
on success
Fingerprint of the GPG key for this software source.

Sample:
gpg_key_fingerprint_example
 
gpg_key_id
string
on success
ID of the GPG key for this software source.

Sample:
ocid1.gpgkey.oc1..xxxxxxEXAMPLExxxxxx
 
gpg_key_url
string
on success
URL of the GPG key for this software source.

Sample:
gpg_key_url_example
 
id
string
on success
The OCID of the software source.

Sample:
ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
 
is_auto_resolve_dependencies
boolean
on success
Indicates whether the service should automatically resolve package dependencies when including specific packages in the software source.

Sample:
True
 
is_automatically_updated
boolean
on success
Indicates whether the service should automatically update the custom software source to use the latest package versions available. The service reviews packages levels once a day.

Sample:
True
 
is_created_from_package_list
boolean
on success
Indicates whether the service should create the software source from a list of packages provided by the user.

Sample:
True
 
is_latest_content_only
boolean
on success
Indicates whether the software source will include only the latest versions of content from vendor software sources, while accounting for other constraints set in the custom or versioned custom software source (such as a package list or filters). * For a module filter that does not specify a stream, this will include all available streams, and within each stream only the latest version of packages. * For a module filter that does specify a stream, this will include only the latest version of packages for the specified stream. * For a package filter that does not specify a version, this will include only the latest available version of the package. * For a package filter that does specify a version, this will include only the specified version of the package (the isLatestContentOnly attribute is ignored). * For a package list, this will include only the specified version of packages and modules in the list (the isLatestContentOnly attribute is ignored).

Sample:
True
 
is_mandatory_for_autonomous_linux
boolean
on success
Indicates whether the software source is required for the Autonomous Linux service.

Sample:
True
 
lifecycle_state
string
on success
The current state of the software source.

Sample:
CREATING
 
origin_software_source_id
string
on success
This property applies only to replicated vendor software sources. This is the OCID of the vendor software source in the root compartment.

Sample:
ocid1.originsoftwaresource.oc1..xxxxxxEXAMPLExxxxxx
 
os_family
string
on success
The OS family the software source belongs to.

Sample:
ORACLE_LINUX_9
 
package_count
integer
on success
Number of packages the software source contains.

Sample:
56
 
packages
list / elements=string
on success
The packages in the software source.

 
repo_id
string
on success
The repository ID for the software source.

Sample:
ocid1.repo.oc1..xxxxxxEXAMPLExxxxxx
 
size
float
on success
The size of the software source in gigabytes (GB).

Sample:
1.2
 
software_source_type
string
on success
Type of software source.

Sample:
VENDOR
 
software_source_version
string
on success
The version to assign to this custom software source.

Sample:
software_source_version_example
 
system_tags
dictionary
on success
System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud": {"free-tier-retained": "true"}}`

 
time_created
string
on success
The date and time the software source was created (in RFC 3339 format).

Sample:
2013-10-20T19:20:30+01:00
 
url
string
on success
URL for the repository. For vendor software sources, this is the URL to the regional yum server. For custom software sources, this is 'custom/<repoId>'.

Sample:
url_example
 
vendor_name
string
on success
Name of the vendor providing the software source.

Sample:
ORACLE
 
vendor_software_sources
complex
on success
List of vendor software sources that are used for the basis of the custom software source.

   
display_name
string
on success
User-friendly name.

Sample:
display_name_example
   
id
string
on success
The OCID of the resource that is immutable on creation.

Sample:
ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx


Authors

  • Oracle (@oracle)