oracle.oci.oci_compute_shape_facts – Fetches details about one or multiple Shape resources in Oracle Cloud Infrastructure

Note

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

New in version 2.9.0: of oracle.oci

Synopsis

  • Fetches details about one or multiple Shape resources in Oracle Cloud Infrastructure

  • Lists the shapes that can be used to launch an instance within the specified compartment. You can filter the list by compatibility with a specific image.

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.
availability_domain
string
The name of the availability domain.
Example: `Uocm:PHX-AD-1`
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 / required
The OCID of the 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.
image_id
string
The OCID of an image.
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.
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: List shapes
  oci_compute_shape_facts:
    # required
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"

    # optional
    availability_domain: Uocm:PHX-AD-1
    image_id: "ocid1.image.oc1..xxxxxxEXAMPLExxxxxx"

Return Values

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

Key Returned Description
shapes
complex
on success
List of Shape resources

Sample:
[{'baseline_ocpu_utilizations': [], 'billing_type': 'ALWAYS_FREE', 'gpu_description': 'gpu_description_example', 'gpus': 56, 'is_billed_for_stopped_instance': True, 'is_flexible': True, 'is_live_migration_supported': True, 'is_subcore': True, 'local_disk_description': 'local_disk_description_example', 'local_disks': 56, 'local_disks_total_size_in_gbs': 3.4, 'max_vnic_attachment_options': {'default_per_ocpu': 3.4, 'max': 3.4, 'min': 56}, 'max_vnic_attachments': 56, 'memory_in_gbs': 3.4, 'memory_options': {'default_per_ocpu_in_g_bs': 3.4, 'max_in_g_bs': 3.4, 'max_per_ocpu_in_gbs': 3.4, 'min_in_g_bs': 3.4, 'min_per_ocpu_in_gbs': 3.4}, 'min_total_baseline_ocpus_required': 10, 'network_ports': 56, 'networking_bandwidth_in_gbps': 3.4, 'networking_bandwidth_options': {'default_per_ocpu_in_gbps': 3.4, 'max_in_gbps': 3.4, 'min_in_gbps': 3.4}, 'ocpu_options': {'max': 3.4, 'min': 3.4}, 'ocpus': 3.4, 'platform_config_options': {'access_control_service_options': {'allowed_values': [], 'is_default_enabled': True}, 'input_output_memory_management_unit_options': {'allowed_values': [], 'is_default_enabled': True}, 'measured_boot_options': {'allowed_values': [], 'is_default_enabled': True}, 'memory_encryption_options': {'allowed_values': [], 'is_default_enabled': True}, 'numa_nodes_per_socket_platform_options': {'default_value': 'default_value_example', 'service_allowed_values': []}, 'percentage_of_cores_enabled_options': {'default_value': 56, 'max': 56, 'min': 56}, 'secure_boot_options': {'allowed_values': [], 'is_default_enabled': True}, 'symmetric_multi_threading_options': {'allowed_values': [], 'is_default_enabled': True}, 'trusted_platform_module_options': {'allowed_values': [], 'is_default_enabled': True}, 'type': 'AMD_MILAN_BM', 'virtual_instructions_options': {'allowed_values': [], 'is_default_enabled': True}}, 'processor_description': 'processor_description_example', 'quota_names': [], 'rdma_bandwidth_in_gbps': 56, 'rdma_ports': 56, 'recommended_alternatives': [{'shape_name': 'shape_name_example'}], 'resize_compatible_shapes': [], 'shape': 'shape_example'}]
 
baseline_ocpu_utilizations
list / elements=string
on success
For a subcore burstable VM, the supported baseline OCPU utilization for instances that use this shape.

 
billing_type
string
on success
How instances that use this shape are charged.

Sample:
ALWAYS_FREE
 
gpu_description
string
on success
A short description of the graphics processing unit (GPU) available for this shape.
If the shape does not have any GPUs, this field is `null`.

Sample:
gpu_description_example
 
gpus
integer
on success
The number of GPUs available for this shape.

Sample:
56
 
is_billed_for_stopped_instance
boolean
on success
Whether billing continues when the instances that use this shape are in the stopped state.

Sample:
True
 
is_flexible
boolean
on success
Whether the shape supports creating flexible instances. A flexible shape is a shape that lets you customize the number of OCPUs and the amount of memory when launching or resizing your instance.

Sample:
True
 
is_live_migration_supported
boolean
on success
Whether live migration is supported for this shape.

Sample:
True
 
is_subcore
boolean
on success
Whether the shape supports creating subcore or burstable instances. A burstable instance is a virtual machine (VM) instance that provides a baseline level of CPU performance with the ability to burst to a higher level to support occasional spikes in usage.

Sample:
True
 
local_disk_description
string
on success
A short description of the local disks available for this shape.
If the shape does not have any local disks, this field is `null`.

Sample:
local_disk_description_example
 
local_disks
integer
on success
The number of local disks available for this shape.

Sample:
56
 
local_disks_total_size_in_gbs
float
on success
The aggregate size of the local disks available for this shape, in gigabytes.
If the shape does not have any local disks, this field is `null`.

Sample:
3.4
 
max_vnic_attachment_options
complex
on success

   
default_per_ocpu
float
on success
The default number of VNIC attachments allowed per OCPU.

Sample:
3.4
   
max
float
on success
The highest maximum value of VNIC attachments.

Sample:
3.4
   
min
integer
on success
The lowest maximum value of VNIC attachments.

Sample:
56
 
max_vnic_attachments
integer
on success
The maximum number of VNIC attachments available for this shape.

Sample:
56
 
memory_in_gbs
float
on success
The default amount of memory available for this shape, in gigabytes.

Sample:
3.4
 
memory_options
complex
on success

   
default_per_ocpu_in_g_bs
float
on success
The default amount of memory per OCPU available for this shape, in gigabytes.

Sample:
3.4
   
max_in_g_bs
float
on success
The maximum amount of memory, in gigabytes.

Sample:
3.4
   
max_per_ocpu_in_gbs
float
on success
The maximum amount of memory per OCPU available for this shape, in gigabytes.

Sample:
3.4
   
min_in_g_bs
float
on success
The minimum amount of memory, in gigabytes.

Sample:
3.4
   
min_per_ocpu_in_gbs
float
on success
The minimum amount of memory per OCPU available for this shape, in gigabytes.

Sample:
3.4
 
min_total_baseline_ocpus_required
float
on success
For a subcore burstable VM, the minimum total baseline OCPUs required. The total baseline OCPUs is equal to baselineOcpuUtilization chosen multiplied by the number of OCPUs chosen.

Sample:
10
 
network_ports
integer
on success
The number of physical network interface card (NIC) ports available for this shape.

Sample:
56
 
networking_bandwidth_in_gbps
float
on success
The networking bandwidth available for this shape, in gigabits per second.

Sample:
3.4
 
networking_bandwidth_options
complex
on success

   
default_per_ocpu_in_gbps
float
on success
The default amount of networking bandwidth per OCPU, in gigabits per second.

Sample:
3.4
   
max_in_gbps
float
on success
The maximum amount of networking bandwidth, in gigabits per second.

Sample:
3.4
   
min_in_gbps
float
on success
The minimum amount of networking bandwidth, in gigabits per second.

Sample:
3.4
 
ocpu_options
complex
on success

   
max
float
on success
The maximum number of OCPUs.

Sample:
3.4
   
min
float
on success
The minimum number of OCPUs.

Sample:
3.4
 
ocpus
float
on success
The default number of OCPUs available for this shape.

Sample:
3.4
 
platform_config_options
complex
on success

   
access_control_service_options
complex
on success

     
allowed_values
list / elements=string
on success
Whether the Access Control Service can be enabled.

     
is_default_enabled
boolean
on success
Whether the Access Control Service is enabled by default.

Sample:
True
   
input_output_memory_management_unit_options
complex
on success

     
allowed_values
list / elements=string
on success
Whether the input-output memory management unit can be enabled.

     
is_default_enabled
boolean
on success
Whether the input-output memory management unit is enabled by default.

Sample:
True
   
measured_boot_options
complex
on success

     
allowed_values
list / elements=string
on success
Boolean values that indicate whether the Measured Boot feature can be enabled or disabled.

     
is_default_enabled
boolean
on success
Whether the Measured Boot feature is enabled by default.

Sample:
True
   
memory_encryption_options
complex
on success

     
allowed_values
list / elements=string
on success
Whether memory encryption can be enabled.

     
is_default_enabled
boolean
on success
Whether memory encryption is enabled by default.

Sample:
True
   
numa_nodes_per_socket_platform_options
complex
on success

     
default_value
string
on success
The default NUMA nodes per socket configuration.

Sample:
default_value_example
     
service_allowed_values
list / elements=string
on success
The supported values for this platform configuration property.

   
percentage_of_cores_enabled_options
complex
on success

     
default_value
integer
on success
The default percentage of cores enabled.

Sample:
56
     
max
integer
on success
The maximum allowed percentage of cores enabled.

Sample:
56
     
min
integer
on success
The minimum allowed percentage of cores enabled.

Sample:
56
   
secure_boot_options
complex
on success

     
allowed_values
list / elements=string
on success
Boolean values that indicate whether Secure Boot can be enabled or disabled.

     
is_default_enabled
boolean
on success
Whether Secure Boot is enabled by default.

Sample:
True
   
symmetric_multi_threading_options
complex
on success

     
allowed_values
list / elements=string
on success
Whether symmetric multithreading can be enabled.

     
is_default_enabled
boolean
on success
Whether symmetric multithreading is enabled by default.

Sample:
True
   
trusted_platform_module_options
complex
on success

     
allowed_values
list / elements=string
on success
Boolean values that indicate whether the Trusted Platform Module can be enabled or disabled.

     
is_default_enabled
boolean
on success
Whether the Trusted Platform Module is enabled by default.

Sample:
True
   
type
string
on success
The type of platform being configured.

Sample:
AMD_MILAN_BM
   
virtual_instructions_options
complex
on success

     
allowed_values
list / elements=string
on success
Whether virtualization instructions can be enabled.

     
is_default_enabled
boolean
on success
Whether virtualization instructions are enabled by default.

Sample:
True
 
processor_description
string
on success
A short description of the shape's processor (CPU).

Sample:
processor_description_example
 
quota_names
list / elements=string
on success
The list of of compartment quotas for the shape.

 
rdma_bandwidth_in_gbps
integer
on success
The networking bandwidth available for the remote direct memory access (RDMA) network for this shape, in gigabits per second.

Sample:
56
 
rdma_ports
integer
on success
The number of networking ports available for the remote direct memory access (RDMA) network between nodes in a high performance computing (HPC) cluster network. If the shape does not support cluster networks, this value is `0`.

Sample:
56
 
recommended_alternatives
complex
on success
The list of shapes and shape details (if applicable) that Oracle recommends that you use as an alternative to the current shape.

   
shape_name
string
on success
The name of the shape.

Sample:
shape_name_example
 
resize_compatible_shapes
list / elements=string
on success
The list of compatible shapes that this shape can be changed to. For more information, see Changing the Shape of an Instance.

 
shape
string
on success
The name of the shape. You can enumerate all available shapes by calling ListShapes.

Sample:
shape_example


Authors

  • Oracle (@oracle)