oracle.oci.oci_identity_domain_actions (2.38.0) — module

Perform actions on a Domain 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:==2.38.0


Add to requirements.yml

  collections:
    - name: oracle.oci
      version: 2.38.0

Description

Perform actions on a Domain resource in Oracle Cloud Infrastructure

For I(action=activate), if the domain's {@code lifecycleState} is INACTIVE, 1. Set the {@code lifecycleDetails} to ACTIVATING and asynchronously starts enabling the domain and return 202 ACCEPTED. 1.1 Sets the domain status to ENABLED and set specified domain's {@code lifecycleState} to ACTIVE and set the {@code lifecycleDetails} to null. To track progress, HTTP GET on /iamWorkRequests/{iamWorkRequestsId} endpoint will provide the async operation's status. Deactivate a domain can be done using HTTP POST /domains/{domainId}/actions/deactivate. - If the domain's {@code lifecycleState} is ACTIVE, returns 202 ACCEPTED with no action taken on service side. - If domain is of {@code type} DEFAULT or DEFAULT_LIGHTWEIGHT or domain's {@code lifecycleState} is not INACTIVE, returns 400 BAD REQUEST. - If the domain doesn't exists, returns 404 NOT FOUND. - If the authenticated user is part of the domain to be activated, returns 400 BAD REQUEST - If error occurs while activating domain, returns 500 INTERNAL SERVER ERROR.

For I(action=change_compartment), change the containing compartment for a domain. This is an asynchronous call where the Domain's compartment is changed and is updated with the new compartment information. To track progress, HTTP GET on /iamWorkRequests/{iamWorkRequestsId} endpoint will provide the async operation's status. The compartment change is complete when accessed via domain URL and also returns new compartment OCID. - If the domain doesn't exists, returns 404 NOT FOUND. - If Domain {@code type} is DEFAULT or DEFAULT_LIGHTWEIGHT, return 400 BAD Request - If Domain is not active or being updated, returns 400 BAD REQUEST. - If error occurs while changing compartment for domain, return 500 INTERNAL SERVER ERROR.

For I(action=change_domain_license_type), if the domain's {@code lifecycleState} is ACTIVE, validates the requested {@code licenseType} update is allowed and 1. Set the {@code lifecycleDetails} to UPDATING 2. Asynchronously starts updating the domain and return 202 ACCEPTED. 2.1 Successfully updates specified domain's {@code licenseType}. 3. On completion set the {@code lifecycleDetails} to null. To track progress, HTTP GET on /iamWorkRequests/{iamWorkRequestsId} endpoint will provide the async operation's status. - If license type update is successful, return 202 ACCEPTED - If requested {@code licenseType} validation fails, returns 400 Bad request. - If Domain is not active or being updated, returns 400 BAD REQUEST. - If Domain {@code type} is DEFAULT or DEFAULT_LIGHTWEIGHT, return 400 BAD Request - If the domain doesn't exists, returns 404 NOT FOUND - If any internal error occurs, returns 500 INTERNAL SERVER ERROR.

For I(action=deactivate), if the domain's {@code lifecycleState} is ACTIVE and no active Apps are present in domain, 1. Set the {@code lifecycleDetails} to DEACTIVATING and asynchronously starts disabling the domain and return 202 ACCEPTED. 1.1 Sets the domain status to DISABLED and set specified domain's {@code lifecycleState} to INACTIVE and set the {@code lifecycleDetails} to null. To track progress, HTTP GET on /iamWorkRequests/{iamWorkRequestsId} endpoint will provide the async operation's status. Activate a domain can be done using HTTP POST /domains/{domainId}/actions/activate. - If the domain's {@code lifecycleState} is INACTIVE, returns 202 ACCEPTED with no action taken on service side. - If domain is of {@code type} DEFAULT or DEFAULT_LIGHTWEIGHT or domain's {@code lifecycleState} is not ACTIVE, returns 400 BAD REQUEST. - If the domain doesn't exists, returns 404 NOT FOUND. - If any active Apps in domain, returns 400 BAD REQUEST. - If the authenticated user is part of the domain to be activated, returns 400 BAD REQUEST - If error occurs while deactivating domain, returns 500 INTERNAL SERVER ERROR.

For I(action=enable_replication_to_region), replicate domain to a new region. This is an asynchronous call - where, at start, {@code state} of this domain in replica region is set to ENABLING_REPLICATION. On domain replication completion the {@code state} will be set to REPLICATION_ENABLED. To track progress, HTTP GET on /iamWorkRequests/{iamWorkRequestsId} endpoint will provide the async operation's status. If the replica region's {@code state} is already ENABLING_REPLICATION or REPLICATION_ENABLED, returns 409 CONFLICT. - If the domain doesn't exists, returns 404 NOT FOUND. - If home region is same as replication region, return 400 BAD REQUEST. - If Domain is not active or being updated, returns 400 BAD REQUEST. - If any internal error occurs, return 500 INTERNAL SERVER ERROR.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action activate on domain
  oci_identity_domain_actions:
    # required
    domain_id: "ocid1.domain.oc1..xxxxxxEXAMPLExxxxxx"
    action: activate
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action change_compartment on domain
  oci_identity_domain_actions:
    # required
    domain_id: "ocid1.domain.oc1..xxxxxxEXAMPLExxxxxx"
    compartment_id: "ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx"
    action: change_compartment
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action change_domain_license_type on domain
  oci_identity_domain_actions:
    # required
    domain_id: "ocid1.domain.oc1..xxxxxxEXAMPLExxxxxx"
    action: change_domain_license_type

    # optional
    license_type: license_type_example
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action deactivate on domain
  oci_identity_domain_actions:
    # required
    domain_id: "ocid1.domain.oc1..xxxxxxEXAMPLExxxxxx"
    action: deactivate
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Perform action enable_replication_to_region on domain
  oci_identity_domain_actions:
    # required
    domain_id: "ocid1.domain.oc1..xxxxxxEXAMPLExxxxxx"
    action: enable_replication_to_region

    # optional
    replica_region: us-phoenix-1

Inputs

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

action:
    choices:
    - activate
    - change_compartment
    - change_domain_license_type
    - deactivate
    - enable_replication_to_region
    description:
    - The action to perform on the Domain.
    required: true
    type: str

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
    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

domain_id:
    aliases:
    - id
    description:
    - The OCID of the domain
    required: true
    type: str

license_type:
    description:
    - The License type of Domain
    - Applicable only for I(action=change_domain_license_type).
    type: str

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

compartment_id:
    description:
    - The L(OCID,https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)
      of the destination compartment into which to move the domain.
    - Required for I(action=change_compartment).
    type: str

replica_region:
    description:
    - A region for which domain replication is requested for. See L(Regions and Availability
      Domains,https://docs.cloud.oracle.com/Content/General/Concepts/regions.htm) for
      the full list of supported region names.
    - 'Example: `us-phoenix-1`'
    - Applicable only for I(action=enable_replication_to_region).
    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

Outputs

domain:
  contains:
    compartment_id:
      description:
      - The OCID of the compartment containing the domain.
      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/Content/General/Concepts/resourcetags.htm).
        Example: `{"Operations": {"CostCenter": "42"}}`'
      returned: on success
      sample:
        Operations:
          CostCenter: US
      type: dict
    description:
      description:
      - The domain descripition
      returned: on success
      sample: description_example
      type: str
    display_name:
      description:
      - The mutable display name of the domain
      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/Content/General/Concepts/resourcetags.htm).
        Example: `{"Department": "Finance"}`'
      returned: on success
      sample:
        Department: Finance
      type: dict
    home_region:
      description:
      - The home region for the domain. See L(Regions and Availability Domains,https://docs.cloud.oracle.com/Content/General/Concepts/regions.htm)
        for the full list of supported region names.
      - 'Example: `us-phoenix-1`'
      returned: on success
      sample: us-phoenix-1
      type: str
    home_region_url:
      description:
      - Region specific domain URL.
      returned: on success
      sample: home_region_url_example
      type: str
    id:
      description:
      - The OCID of the domain
      returned: on success
      sample: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
      type: str
    is_hidden_on_login:
      description:
      - Indicates whether domain is hidden on login screen or not.
      returned: on success
      sample: true
      type: bool
    license_type:
      description:
      - The License type of Domain
      returned: on success
      sample: license_type_example
      type: str
    lifecycle_details:
      description:
      - Any additional details about the current state of the Domain.
      returned: on success
      sample: DEACTIVATING
      type: str
    lifecycle_state:
      description:
      - The current state.
      returned: on success
      sample: CREATING
      type: str
    replica_regions:
      contains:
        region:
          description:
          - A REPLICATION_ENABLED region, e.g. us-ashburn-1. See L(Regions and Availability
            Domains,https://docs.cloud.oracle.com/Content/General/Concepts/regions.htm)
            for the full list of supported region names.
          returned: on success
          sample: us-phoenix-1
          type: str
        state:
          description:
          - The IDCS replicated region state
          returned: on success
          sample: ENABLING_REPLICATION
          type: str
        url:
          description:
          - Region agnostic domain URL.
          returned: on success
          sample: url_example
          type: str
      description:
      - The regions domain is replication to.
      returned: on success
      type: complex
    time_created:
      description:
      - Date and time the domain was created, in the format defined by RFC3339.
      - 'Example: `2016-08-25T21:10:29.600Z`'
      returned: on success
      sample: '2013-10-20T19:20:30+01:00'
      type: str
    type:
      description:
      - The type of the domain.
      returned: on success
      sample: DEFAULT
      type: str
    url:
      description:
      - Region agnostic domain URL.
      returned: on success
      sample: url_example
      type: str
  description:
  - Details of the Domain resource acted upon by the current operation
  returned: on success
  sample:
    compartment_id: ocid1.compartment.oc1..xxxxxxEXAMPLExxxxxx
    defined_tags:
      Operations:
        CostCenter: US
    description: description_example
    display_name: display_name_example
    freeform_tags:
      Department: Finance
    home_region: us-phoenix-1
    home_region_url: home_region_url_example
    id: ocid1.resource.oc1..xxxxxxEXAMPLExxxxxx
    is_hidden_on_login: true
    license_type: license_type_example
    lifecycle_details: DEACTIVATING
    lifecycle_state: CREATING
    replica_regions:
    - region: us-phoenix-1
      state: ENABLING_REPLICATION
      url: url_example
    time_created: '2013-10-20T19:20:30+01:00'
    type: DEFAULT
    url: url_example
  type: complex