oracle.oci.oci_blockstorage_boot_volume (5.0.0) — module

Manage a BootVolume 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, update and delete a BootVolume resource in Oracle Cloud Infrastructure

For I(state=present), creates a new boot volume in the specified compartment from an existing boot volume or a boot volume backup. For general information about boot volumes, see L(Boot Volumes,https://docs.cloud.oracle.com/iaas/Content/Block/Concepts/bootvolumes.htm). You may optionally specify a *display name* for the volume, which is simply a friendly name or description. It does not have to be unique, and you can change it. Avoid entering confidential information.

This resource has the following action operations in the M(oracle.oci.oci_blockstorage_boot_volume_actions) module: change_compartment.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create boot_volume
  oci_blockstorage_boot_volume:
    # required
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    source_details:
      # required
      type: bootVolumeBackup
      id: "ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx"

    # optional
    availability_domain: Uocm:PHX-AD-1
    backup_policy_id: "ocid1.backuppolicy.oc1..xxxxxxEXAMPLExxxxxx"
    kms_key_id: "ocid1.kmskey.oc1..xxxxxxEXAMPLExxxxxx"
    defined_tags: {'Operations': {'CostCenter': 'US'}}
    display_name: display_name_example
    freeform_tags: {'Department': 'Finance'}
    size_in_gbs: 56
    vpus_per_gb: 56
    is_auto_tune_enabled: true
    boot_volume_replicas:
    - # required
      availability_domain: Uocm:PHX-AD-1

      # optional
      display_name: display_name_example
    autotune_policies:
    - # required
      autotune_type: DETACHED_VOLUME
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Update boot_volume
  oci_blockstorage_boot_volume:
    # required
    boot_volume_id: "ocid1.bootvolume.oc1..xxxxxxEXAMPLExxxxxx"

    # optional
    defined_tags: {'Operations': {'CostCenter': 'US'}}
    display_name: display_name_example
    freeform_tags: {'Department': 'Finance'}
    size_in_gbs: 56
    vpus_per_gb: 56
    is_auto_tune_enabled: true
    boot_volume_replicas:
    - # required
      availability_domain: Uocm:PHX-AD-1

      # optional
      display_name: display_name_example
    autotune_policies:
    - # required
      autotune_type: DETACHED_VOLUME
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Update boot_volume using name (when environment variable OCI_USE_NAME_AS_IDENTIFIER is set)
  oci_blockstorage_boot_volume:
    # required
    display_name: display_name_example

    # optional
    defined_tags: {'Operations': {'CostCenter': 'US'}}
    freeform_tags: {'Department': 'Finance'}
    size_in_gbs: 56
    vpus_per_gb: 56
    is_auto_tune_enabled: true
    boot_volume_replicas:
    - # required
      availability_domain: Uocm:PHX-AD-1

      # optional
      display_name: display_name_example
    autotune_policies:
    - # required
      autotune_type: DETACHED_VOLUME
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Delete boot_volume
  oci_blockstorage_boot_volume:
    # required
    boot_volume_id: "ocid1.bootvolume.oc1..xxxxxxEXAMPLExxxxxx"
    state: absent
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Delete boot_volume using name (when environment variable OCI_USE_NAME_AS_IDENTIFIER is set)
  oci_blockstorage_boot_volume:
    # required
    display_name: display_name_example
    state: absent

Inputs

    
wait:
    default: true
    description: Whether to wait for create or delete operation to complete.
    type: bool

state:
    choices:
    - present
    - absent
    default: present
    description:
    - The state of the BootVolume.
    - Use I(state=present) to create or update a BootVolume.
    - Use I(state=absent) to delete a BootVolume.
    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

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

kms_key_id:
    description:
    - The OCID of the Vault service key to assign as the master encryption key for the
      boot volume.
    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

size_in_gbs:
    description:
    - The size of the volume in GBs.
    - This parameter is updatable.
    type: int

vpus_per_gb:
    description:
    - The number of volume performance units (VPUs) that will be applied to this volume
      per GB, representing the Block Volume service's elastic performance options. See
      L(Block Volume Performance Levels,https://docs.cloud.oracle.com/iaas/Content/Block/Concepts/blockvolumeperformance.htm#perf_levels)
      for more information.
    - 'Allowed values:'
    - ' * `10`: Represents the Balanced option.'
    - ' * `20`: Represents the Higher Performance option.'
    - ' * `30`-`120`: Represents the Ultra High Performance option.'
    - For performance autotune enabled volumes, it would be the Default(Minimum) VPUs/GB.
    - This parameter is updatable.
    type: int

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

defined_tags:
    description:
    - Defined tags for this resource. Each key is predefined and scoped to a namespace.
      For more information, see L(Resource Tags,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
    - 'Example: `{"Operations": {"CostCenter": "42"}}`'
    - This parameter is updatable.
    type: dict

display_name:
    aliases:
    - name
    description:
    - A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering
      confidential information.
    - Required for create, update, delete when environment variable C(OCI_USE_NAME_AS_IDENTIFIER)
      is set.
    - This parameter is updatable when C(OCI_USE_NAME_AS_IDENTIFIER) is not 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

wait_timeout:
    description: Time, in seconds, to wait when I(wait=yes). Defaults to 1200 for most
      of the services but some services might have a longer wait timeout.
    type: int

freeform_tags:
    description:
    - 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 L(Resource Tags,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
    - 'Example: `{"Department": "Finance"}`'
    - This parameter is updatable.
    type: dict

boot_volume_id:
    aliases:
    - id
    description:
    - The OCID of the boot volume.
    - Required for update using I(state=present) when environment variable C(OCI_USE_NAME_AS_IDENTIFIER)
      is not set.
    - Required for delete using I(state=absent) when environment variable C(OCI_USE_NAME_AS_IDENTIFIER)
      is not set.
    type: str

compartment_id:
    description:
    - The OCID of the compartment that contains the boot volume.
    - Required for create using I(state=present).
    type: str

source_details:
    description:
    - ''
    - Required for create using I(state=present).
    suboptions:
      id:
        description:
        - The OCID of the boot volume backup.
        required: true
        type: str
      type:
        choices:
        - bootVolumeBackup
        - bootVolume
        - bootVolumeReplica
        description:
        - ''
        required: true
        type: str
    type: dict

backup_policy_id:
    description:
    - If provided, specifies the ID of the boot volume backup policy to assign to the
      newly created boot volume. If omitted, no policy will be assigned.
    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

autotune_policies:
    description:
    - The list of autotune policies to be enabled for this volume.
    - This parameter is updatable.
    elements: dict
    suboptions:
      autotune_type:
        choices:
        - DETACHED_VOLUME
        - PERFORMANCE_BASED
        description:
        - This specifies the type of autotunes supported by OCI.
        required: true
        type: str
      max_vpus_per_gb:
        description:
        - This will be the maximum VPUs/GB performance level that the volume will be auto-tuned
          temporarily based on performance monitoring.
        - Required when autotune_type is 'PERFORMANCE_BASED'
        type: int
    type: list

availability_domain:
    description:
    - The availability domain of the volume. Omissible for cloning a volume. The new volume
      will be created in the availability domain of the source volume.
    - 'Example: `Uocm:PHX-AD-1`'
    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

boot_volume_replicas:
    description:
    - The list of boot volume replicas to be enabled for this boot volume in the specified
      destination availability domains.
    - This parameter is updatable.
    elements: dict
    suboptions:
      availability_domain:
        description:
        - The availability domain of the boot volume replica.
        - 'Example: `Uocm:PHX-AD-1`'
        required: true
        type: str
      display_name:
        aliases:
        - name
        description:
        - A user-friendly name. Does not have to be unique, and it's changeable. Avoid
          entering confidential information.
        type: str
    type: list

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

is_auto_tune_enabled:
    description:
    - Specifies whether the auto-tune performance is enabled for this boot volume. This
      field is deprecated. Use the `DetachedVolumeAutotunePolicy` instead to enable the
      volume for detached autotune.
    - This parameter is updatable.
    type: bool

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

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

boot_volume:
  contains:
    auto_tuned_vpus_per_gb:
      description:
      - The number of Volume Performance Units per GB that this boot volume is effectively
        tuned to.
      returned: on success
      sample: 56
      type: int
    autotune_policies:
      contains:
        autotune_type:
          description:
          - This specifies the type of autotunes supported by OCI.
          returned: on success
          sample: DETACHED_VOLUME
          type: str
        max_vpus_per_gb:
          description:
          - This will be the maximum VPUs/GB performance level that the volume will
            be auto-tuned temporarily based on performance monitoring.
          returned: on success
          sample: 56
          type: int
      description:
      - The list of autotune policies enabled for this volume.
      returned: on success
      type: complex
    availability_domain:
      description:
      - The availability domain of the boot volume.
      - 'Example: `Uocm:PHX-AD-1`'
      returned: on success
      sample: Uocm:PHX-AD-1
      type: str
    boot_volume_replicas:
      contains:
        availability_domain:
          description:
          - The availability domain of the boot volume replica.
          - 'Example: `Uocm:PHX-AD-1`'
          returned: on success
          sample: Uocm:PHX-AD-1
          type: str
        boot_volume_replica_id:
          description:
          - The boot volume replica's Oracle ID (OCID).
          returned: on success
          sample: ocid1.bootvolumereplica.oc1..xxxxxxEXAMPLExxxxxx
          type: str
        display_name:
          description:
          - A user-friendly name. Does not have to be unique, and it's changeable.
            Avoid entering confidential information.
          returned: on success
          sample: display_name_example
          type: str
      description:
      - The list of boot volume replicas of this boot volume
      returned: on success
      type: complex
    compartment_id:
      description:
      - The OCID of the compartment that contains the boot volume.
      returned: on success
      sample: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    defined_tags:
      description:
      - Defined tags for this resource. Each key is predefined and scoped to a namespace.
        For more information, see L(Resource Tags,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
      - 'Example: `{"Operations": {"CostCenter": "42"}}`'
      returned: on success
      sample:
        Operations:
          CostCenter: US
      type: dict
    display_name:
      description:
      - A user-friendly name. Does not have to be unique, and it's changeable. Avoid
        entering confidential information.
      returned: on success
      sample: display_name_example
      type: str
    freeform_tags:
      description:
      - 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 L(Resource
        Tags,https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
      - 'Example: `{"Department": "Finance"}`'
      returned: on success
      sample:
        Department: Finance
      type: dict
    id:
      description:
      - The boot volume's Oracle ID (OCID).
      returned: on success
      sample: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    image_id:
      description:
      - The image OCID used to create the boot volume.
      returned: on success
      sample: ocid1.image.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    is_auto_tune_enabled:
      description:
      - Specifies whether the auto-tune performance is enabled for this boot volume.
        This field is deprecated. Use the `DetachedVolumeAutotunePolicy` instead to
        enable the volume for detached autotune.
      returned: on success
      sample: true
      type: bool
    is_hydrated:
      description:
      - Specifies whether the boot volume's data has finished copying from the source
        boot volume or boot volume backup.
      returned: on success
      sample: true
      type: bool
    kms_key_id:
      description:
      - The OCID of the Vault service master encryption key assigned to the boot volume.
      returned: on success
      sample: ocid1.kmskey.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    lifecycle_state:
      description:
      - The current state of a boot volume.
      returned: on success
      sample: PROVISIONING
      type: str
    size_in_gbs:
      description:
      - The size of the boot volume in GBs.
      returned: on success
      sample: 56
      type: int
    size_in_mbs:
      description:
      - The size of the volume in MBs. The value must be a multiple of 1024. This
        field is deprecated. Please use sizeInGBs.
      returned: on success
      sample: 56
      type: int
    source_details:
      contains:
        id:
          description:
          - The OCID of the boot volume.
          returned: on success
          sample: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
          type: str
        type:
          description:
          - ''
          returned: on success
          sample: bootVolume
          type: str
      description:
      - ''
      returned: on success
      type: complex
    system_tags:
      description:
      - 'System tags for this resource. Each key is predefined and scoped to a namespace.
        Example: `{"foo-namespace": {"bar-key": "value"}}`'
      returned: on success
      sample: {}
      type: dict
    time_created:
      description:
      - The date and time the boot volume was created. Format defined by L(RFC3339,https://tools.ietf.org/html/rfc3339).
      returned: on success
      sample: '2013-10-20T19:20:30+01:00'
      type: str
    volume_group_id:
      description:
      - The OCID of the source volume group.
      returned: on success
      sample: ocid1.volumegroup.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    vpus_per_gb:
      description:
      - The number of volume performance units (VPUs) that will be applied to this
        boot volume per GB, representing the Block Volume service's elastic performance
        options. See L(Block Volume Performance Levels,https://docs.cloud.oracle.com/iaas/Content/Block/Concepts/blockvolumeperformance.htm#perf_levels)
        for more information.
      - 'Allowed values:'
      - ' * `10`: Represents Balanced option.'
      - ' * `20`: Represents Higher Performance option.'
      - ' * `30`-`120`: Represents the Ultra High Performance option.'
      - For performance autotune enabled volumes, it would be the Default(Minimum)
        VPUs/GB.
      returned: on success
      sample: 56
      type: int
  description:
  - Details of the BootVolume resource acted upon by the current operation
  returned: on success
  sample:
    auto_tuned_vpus_per_gb: 56
    autotune_policies:
    - autotune_type: DETACHED_VOLUME
      max_vpus_per_gb: 56
    availability_domain: Uocm:PHX-AD-1
    boot_volume_replicas:
    - availability_domain: Uocm:PHX-AD-1
      boot_volume_replica_id: ocid1.bootvolumereplica.oc1..xxxxxxEXAMPLExxxxxx
      display_name: display_name_example
    compartment_id: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
    defined_tags:
      Operations:
        CostCenter: US
    display_name: display_name_example
    freeform_tags:
      Department: Finance
    id: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
    image_id: ocid1.image.oc1..xxxxxxEXAMPLExxxxxx
    is_auto_tune_enabled: true
    is_hydrated: true
    kms_key_id: ocid1.kmskey.oc1..xxxxxxEXAMPLExxxxxx
    lifecycle_state: PROVISIONING
    size_in_gbs: 56
    size_in_mbs: 56
    source_details:
      id: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
      type: bootVolume
    system_tags: {}
    time_created: '2013-10-20T19:20:30+01:00'
    volume_group_id: ocid1.volumegroup.oc1..xxxxxxEXAMPLExxxxxx
    vpus_per_gb: 56
  type: complex