Oracle Cloud Infrastructure v2.31.0 published on Thursday, Apr 17, 2025 by Pulumi
oci.Identity.getDomains
Explore with Pulumi AI
This data source provides the list of Domains in Oracle Cloud Infrastructure Identity service.
List all domains that are homed or have a replica region in current region.
- If any internal error occurs, return 500 INTERNAL SERVER ERROR.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as oci from "@pulumi/oci";
const testDomains = oci.Identity.getDomains({
compartmentId: compartmentId,
displayName: domainDisplayName,
homeRegionUrl: domainHomeRegionUrl,
isHiddenOnLogin: domainIsHiddenOnLogin,
licenseType: domainLicenseType,
name: domainName,
state: domainState,
type: domainType,
url: domainUrl,
});
import pulumi
import pulumi_oci as oci
test_domains = oci.Identity.get_domains(compartment_id=compartment_id,
display_name=domain_display_name,
home_region_url=domain_home_region_url,
is_hidden_on_login=domain_is_hidden_on_login,
license_type=domain_license_type,
name=domain_name,
state=domain_state,
type=domain_type,
url=domain_url)
package main
import (
"github.com/pulumi/pulumi-oci/sdk/v2/go/oci/identity"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := identity.GetDomains(ctx, &identity.GetDomainsArgs{
CompartmentId: compartmentId,
DisplayName: pulumi.StringRef(domainDisplayName),
HomeRegionUrl: pulumi.StringRef(domainHomeRegionUrl),
IsHiddenOnLogin: pulumi.BoolRef(domainIsHiddenOnLogin),
LicenseType: pulumi.StringRef(domainLicenseType),
Name: pulumi.StringRef(domainName),
State: pulumi.StringRef(domainState),
Type: pulumi.StringRef(domainType),
Url: pulumi.StringRef(domainUrl),
}, nil)
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Oci = Pulumi.Oci;
return await Deployment.RunAsync(() =>
{
var testDomains = Oci.Identity.GetDomains.Invoke(new()
{
CompartmentId = compartmentId,
DisplayName = domainDisplayName,
HomeRegionUrl = domainHomeRegionUrl,
IsHiddenOnLogin = domainIsHiddenOnLogin,
LicenseType = domainLicenseType,
Name = domainName,
State = domainState,
Type = domainType,
Url = domainUrl,
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.oci.Identity.IdentityFunctions;
import com.pulumi.oci.Identity.inputs.GetDomainsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var testDomains = IdentityFunctions.getDomains(GetDomainsArgs.builder()
.compartmentId(compartmentId)
.displayName(domainDisplayName)
.homeRegionUrl(domainHomeRegionUrl)
.isHiddenOnLogin(domainIsHiddenOnLogin)
.licenseType(domainLicenseType)
.name(domainName)
.state(domainState)
.type(domainType)
.url(domainUrl)
.build());
}
}
variables:
testDomains:
fn::invoke:
function: oci:Identity:getDomains
arguments:
compartmentId: ${compartmentId}
displayName: ${domainDisplayName}
homeRegionUrl: ${domainHomeRegionUrl}
isHiddenOnLogin: ${domainIsHiddenOnLogin}
licenseType: ${domainLicenseType}
name: ${domainName}
state: ${domainState}
type: ${domainType}
url: ${domainUrl}
Using getDomains
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getDomains(args: GetDomainsArgs, opts?: InvokeOptions): Promise<GetDomainsResult>
function getDomainsOutput(args: GetDomainsOutputArgs, opts?: InvokeOptions): Output<GetDomainsResult>
def get_domains(compartment_id: Optional[str] = None,
display_name: Optional[str] = None,
filters: Optional[Sequence[_identity.GetDomainsFilter]] = None,
home_region_url: Optional[str] = None,
is_hidden_on_login: Optional[bool] = None,
license_type: Optional[str] = None,
name: Optional[str] = None,
state: Optional[str] = None,
type: Optional[str] = None,
url: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetDomainsResult
def get_domains_output(compartment_id: Optional[pulumi.Input[str]] = None,
display_name: Optional[pulumi.Input[str]] = None,
filters: Optional[pulumi.Input[Sequence[pulumi.Input[_identity.GetDomainsFilterArgs]]]] = None,
home_region_url: Optional[pulumi.Input[str]] = None,
is_hidden_on_login: Optional[pulumi.Input[bool]] = None,
license_type: Optional[pulumi.Input[str]] = None,
name: Optional[pulumi.Input[str]] = None,
state: Optional[pulumi.Input[str]] = None,
type: Optional[pulumi.Input[str]] = None,
url: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetDomainsResult]
func GetDomains(ctx *Context, args *GetDomainsArgs, opts ...InvokeOption) (*GetDomainsResult, error)
func GetDomainsOutput(ctx *Context, args *GetDomainsOutputArgs, opts ...InvokeOption) GetDomainsResultOutput
> Note: This function is named GetDomains
in the Go SDK.
public static class GetDomains
{
public static Task<GetDomainsResult> InvokeAsync(GetDomainsArgs args, InvokeOptions? opts = null)
public static Output<GetDomainsResult> Invoke(GetDomainsInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetDomainsResult> getDomains(GetDomainsArgs args, InvokeOptions options)
public static Output<GetDomainsResult> getDomains(GetDomainsArgs args, InvokeOptions options)
fn::invoke:
function: oci:Identity/getDomains:getDomains
arguments:
# arguments dictionary
The following arguments are supported:
- Compartment
Id This property is required. string - The OCID of the compartment (remember that the tenancy is simply the root compartment).
- Display
Name string - The mutable display name of the domain
- Filters
Changes to this property will trigger replacement.
Domains Filter> - Home
Region stringUrl - The region specific domain URL
- bool
- Indicate if the domain is visible at login screen or not
- License
Type string - The domain license type
- Name string
- A filter to only return resources that match the given name exactly.
- State string
- A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- Type string
- The domain type
- Url string
- The region agnostic domain URL
- Compartment
Id This property is required. string - The OCID of the compartment (remember that the tenancy is simply the root compartment).
- Display
Name string - The mutable display name of the domain
- Filters
Changes to this property will trigger replacement.
Domains Filter - Home
Region stringUrl - The region specific domain URL
- bool
- Indicate if the domain is visible at login screen or not
- License
Type string - The domain license type
- Name string
- A filter to only return resources that match the given name exactly.
- State string
- A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- Type string
- The domain type
- Url string
- The region agnostic domain URL
- compartment
Id This property is required. String - The OCID of the compartment (remember that the tenancy is simply the root compartment).
- display
Name String - The mutable display name of the domain
- filters
Changes to this property will trigger replacement.
Domains Filter> - home
Region StringUrl - The region specific domain URL
- Boolean
- Indicate if the domain is visible at login screen or not
- license
Type String - The domain license type
- name String
- A filter to only return resources that match the given name exactly.
- state String
- A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- type String
- The domain type
- url String
- The region agnostic domain URL
- compartment
Id This property is required. string - The OCID of the compartment (remember that the tenancy is simply the root compartment).
- display
Name string - The mutable display name of the domain
- filters
Changes to this property will trigger replacement.
Domains Filter[] - home
Region stringUrl - The region specific domain URL
- boolean
- Indicate if the domain is visible at login screen or not
- license
Type string - The domain license type
- name string
- A filter to only return resources that match the given name exactly.
- state string
- A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- type string
- The domain type
- url string
- The region agnostic domain URL
- compartment_
id This property is required. str - The OCID of the compartment (remember that the tenancy is simply the root compartment).
- display_
name str - The mutable display name of the domain
- filters
Changes to this property will trigger replacement.
Get Domains Filter] - home_
region_ strurl - The region specific domain URL
- bool
- Indicate if the domain is visible at login screen or not
- license_
type str - The domain license type
- name str
- A filter to only return resources that match the given name exactly.
- state str
- A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- type str
- The domain type
- url str
- The region agnostic domain URL
- compartment
Id This property is required. String - The OCID of the compartment (remember that the tenancy is simply the root compartment).
- display
Name String - The mutable display name of the domain
- filters
Changes to this property will trigger replacement.
- home
Region StringUrl - The region specific domain URL
- Boolean
- Indicate if the domain is visible at login screen or not
- license
Type String - The domain license type
- name String
- A filter to only return resources that match the given name exactly.
- state String
- A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- type String
- The domain type
- url String
- The region agnostic domain URL
getDomains Result
The following output properties are available:
- Compartment
Id string - The OCID of the compartment containing the domain.
- Domains
List<Get
Domains Domain> - The list of domains.
- Id string
- The provider-assigned unique ID for this managed resource.
- Display
Name string - The mutable display name of the domain
- Filters
List<Get
Domains Filter> - Home
Region stringUrl - Region specific domain URL.
- bool
- Indicates whether domain is hidden on login screen or not.
- License
Type string - The License type of Domain
- Name string
- State string
- The current state.
- Type string
- The type of the domain.
- Url string
- Region agnostic domain URL.
- Compartment
Id string - The OCID of the compartment containing the domain.
- Domains
[]Get
Domains Domain - The list of domains.
- Id string
- The provider-assigned unique ID for this managed resource.
- Display
Name string - The mutable display name of the domain
- Filters
[]Get
Domains Filter - Home
Region stringUrl - Region specific domain URL.
- bool
- Indicates whether domain is hidden on login screen or not.
- License
Type string - The License type of Domain
- Name string
- State string
- The current state.
- Type string
- The type of the domain.
- Url string
- Region agnostic domain URL.
- compartment
Id String - The OCID of the compartment containing the domain.
- domains
List<Get
Domains Domain> - The list of domains.
- id String
- The provider-assigned unique ID for this managed resource.
- display
Name String - The mutable display name of the domain
- filters
List<Get
Domains Filter> - home
Region StringUrl - Region specific domain URL.
- Boolean
- Indicates whether domain is hidden on login screen or not.
- license
Type String - The License type of Domain
- name String
- state String
- The current state.
- type String
- The type of the domain.
- url String
- Region agnostic domain URL.
- compartment
Id string - The OCID of the compartment containing the domain.
- domains
Get
Domains Domain[] - The list of domains.
- id string
- The provider-assigned unique ID for this managed resource.
- display
Name string - The mutable display name of the domain
- filters
Get
Domains Filter[] - home
Region stringUrl - Region specific domain URL.
- boolean
- Indicates whether domain is hidden on login screen or not.
- license
Type string - The License type of Domain
- name string
- state string
- The current state.
- type string
- The type of the domain.
- url string
- Region agnostic domain URL.
- compartment_
id str - The OCID of the compartment containing the domain.
- domains
Sequence[identity.
Get Domains Domain] - The list of domains.
- id str
- The provider-assigned unique ID for this managed resource.
- display_
name str - The mutable display name of the domain
- filters
Sequence[identity.
Get Domains Filter] - home_
region_ strurl - Region specific domain URL.
- bool
- Indicates whether domain is hidden on login screen or not.
- license_
type str - The License type of Domain
- name str
- state str
- The current state.
- type str
- The type of the domain.
- url str
- Region agnostic domain URL.
- compartment
Id String - The OCID of the compartment containing the domain.
- domains List<Property Map>
- The list of domains.
- id String
- The provider-assigned unique ID for this managed resource.
- display
Name String - The mutable display name of the domain
- filters List<Property Map>
- home
Region StringUrl - Region specific domain URL.
- Boolean
- Indicates whether domain is hidden on login screen or not.
- license
Type String - The License type of Domain
- name String
- state String
- The current state.
- type String
- The type of the domain.
- url String
- Region agnostic domain URL.
Supporting Types
GetDomainsDomain
- Admin
Email This property is required. string - Admin
First Name This property is required. string - Admin
Last Name This property is required. string - Admin
User Name This property is required. string - Compartment
Id This property is required. string - The OCID of the compartment (remember that the tenancy is simply the root compartment).
This property is required. Dictionary<string, string>- Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example:
{"Operations.CostCenter": "42"}
- Description
This property is required. string - The domain descripition
- Display
Name This property is required. string - The mutable display name of the domain
This property is required. Dictionary<string, string>- 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"}
- Home
Region This property is required. string - The home region for the domain. See Regions and Availability Domains for the full list of supported region names. Example:
us-phoenix-1
- Home
Region Url This property is required. string - The region specific domain URL
- Id
This property is required. string - The OCID of the domain
This property is required. bool- Indicate if the domain is visible at login screen or not
- Is
Notification Bypassed This property is required. bool - Is
Primary Email Required This property is required. bool - License
Type This property is required. string - The domain license type
- Lifecycle
Details This property is required. string - Any additional details about the current state of the Domain.
- Replica
Regions This property is required. List<GetDomains Domain Replica Region> - The regions domain is replication to.
- State
This property is required. string - A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- Time
Created This property is required. string - Date and time the domain was created, in the format defined by RFC3339. Example:
2016-08-25T21:10:29.600Z
- Type
This property is required. string - The domain type
- Url
This property is required. string - The region agnostic domain URL
- Admin
Email This property is required. string - Admin
First Name This property is required. string - Admin
Last Name This property is required. string - Admin
User Name This property is required. string - Compartment
Id This property is required. string - The OCID of the compartment (remember that the tenancy is simply the root compartment).
This property is required. map[string]string- Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example:
{"Operations.CostCenter": "42"}
- Description
This property is required. string - The domain descripition
- Display
Name This property is required. string - The mutable display name of the domain
This property is required. map[string]string- 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"}
- Home
Region This property is required. string - The home region for the domain. See Regions and Availability Domains for the full list of supported region names. Example:
us-phoenix-1
- Home
Region Url This property is required. string - The region specific domain URL
- Id
This property is required. string - The OCID of the domain
This property is required. bool- Indicate if the domain is visible at login screen or not
- Is
Notification Bypassed This property is required. bool - Is
Primary Email Required This property is required. bool - License
Type This property is required. string - The domain license type
- Lifecycle
Details This property is required. string - Any additional details about the current state of the Domain.
- Replica
Regions This property is required. []GetDomains Domain Replica Region - The regions domain is replication to.
- State
This property is required. string - A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- Time
Created This property is required. string - Date and time the domain was created, in the format defined by RFC3339. Example:
2016-08-25T21:10:29.600Z
- Type
This property is required. string - The domain type
- Url
This property is required. string - The region agnostic domain URL
- admin
Email This property is required. String - admin
First Name This property is required. String - admin
Last Name This property is required. String - admin
User Name This property is required. String - compartment
Id This property is required. String - The OCID of the compartment (remember that the tenancy is simply the root compartment).
This property is required. Map<String,String>- Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example:
{"Operations.CostCenter": "42"}
- description
This property is required. String - The domain descripition
- display
Name This property is required. String - The mutable display name of the domain
This property is required. Map<String,String>- 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"}
- home
Region This property is required. String - The home region for the domain. See Regions and Availability Domains for the full list of supported region names. Example:
us-phoenix-1
- home
Region Url This property is required. String - The region specific domain URL
- id
This property is required. String - The OCID of the domain
This property is required. Boolean- Indicate if the domain is visible at login screen or not
- is
Notification Bypassed This property is required. Boolean - is
Primary Email Required This property is required. Boolean - license
Type This property is required. String - The domain license type
- lifecycle
Details This property is required. String - Any additional details about the current state of the Domain.
- replica
Regions This property is required. List<GetDomains Domain Replica Region> - The regions domain is replication to.
- state
This property is required. String - A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- time
Created This property is required. String - Date and time the domain was created, in the format defined by RFC3339. Example:
2016-08-25T21:10:29.600Z
- type
This property is required. String - The domain type
- url
This property is required. String - The region agnostic domain URL
- admin
Email This property is required. string - admin
First Name This property is required. string - admin
Last Name This property is required. string - admin
User Name This property is required. string - compartment
Id This property is required. string - The OCID of the compartment (remember that the tenancy is simply the root compartment).
This property is required. {[key: string]: string}- Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example:
{"Operations.CostCenter": "42"}
- description
This property is required. string - The domain descripition
- display
Name This property is required. string - The mutable display name of the domain
This property is required. {[key: string]: string}- 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"}
- home
Region This property is required. string - The home region for the domain. See Regions and Availability Domains for the full list of supported region names. Example:
us-phoenix-1
- home
Region Url This property is required. string - The region specific domain URL
- id
This property is required. string - The OCID of the domain
This property is required. boolean- Indicate if the domain is visible at login screen or not
- is
Notification Bypassed This property is required. boolean - is
Primary Email Required This property is required. boolean - license
Type This property is required. string - The domain license type
- lifecycle
Details This property is required. string - Any additional details about the current state of the Domain.
- replica
Regions This property is required. GetDomains Domain Replica Region[] - The regions domain is replication to.
- state
This property is required. string - A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- time
Created This property is required. string - Date and time the domain was created, in the format defined by RFC3339. Example:
2016-08-25T21:10:29.600Z
- type
This property is required. string - The domain type
- url
This property is required. string - The region agnostic domain URL
- admin_
email This property is required. str - admin_
first_ name This property is required. str - admin_
last_ name This property is required. str - admin_
user_ name This property is required. str - compartment_
id This property is required. str - The OCID of the compartment (remember that the tenancy is simply the root compartment).
This property is required. Mapping[str, str]- Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example:
{"Operations.CostCenter": "42"}
- description
This property is required. str - The domain descripition
- display_
name This property is required. str - The mutable display name of the domain
This property is required. Mapping[str, str]- 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"}
- home_
region This property is required. str - The home region for the domain. See Regions and Availability Domains for the full list of supported region names. Example:
us-phoenix-1
- home_
region_ url This property is required. str - The region specific domain URL
- id
This property is required. str - The OCID of the domain
This property is required. bool- Indicate if the domain is visible at login screen or not
- is_
notification_ bypassed This property is required. bool - is_
primary_ email_ required This property is required. bool - license_
type This property is required. str - The domain license type
- lifecycle_
details This property is required. str - Any additional details about the current state of the Domain.
- replica_
regions This property is required. Sequence[identity.Get Domains Domain Replica Region] - The regions domain is replication to.
- state
This property is required. str - A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- time_
created This property is required. str - Date and time the domain was created, in the format defined by RFC3339. Example:
2016-08-25T21:10:29.600Z
- type
This property is required. str - The domain type
- url
This property is required. str - The region agnostic domain URL
- admin
Email This property is required. String - admin
First Name This property is required. String - admin
Last Name This property is required. String - admin
User Name This property is required. String - compartment
Id This property is required. String - The OCID of the compartment (remember that the tenancy is simply the root compartment).
This property is required. Map<String>- Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example:
{"Operations.CostCenter": "42"}
- description
This property is required. String - The domain descripition
- display
Name This property is required. String - The mutable display name of the domain
This property is required. Map<String>- 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"}
- home
Region This property is required. String - The home region for the domain. See Regions and Availability Domains for the full list of supported region names. Example:
us-phoenix-1
- home
Region Url This property is required. String - The region specific domain URL
- id
This property is required. String - The OCID of the domain
This property is required. Boolean- Indicate if the domain is visible at login screen or not
- is
Notification Bypassed This property is required. Boolean - is
Primary Email Required This property is required. Boolean - license
Type This property is required. String - The domain license type
- lifecycle
Details This property is required. String - Any additional details about the current state of the Domain.
- replica
Regions This property is required. List<Property Map> - The regions domain is replication to.
- state
This property is required. String - A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- time
Created This property is required. String - Date and time the domain was created, in the format defined by RFC3339. Example:
2016-08-25T21:10:29.600Z
- type
This property is required. String - The domain type
- url
This property is required. String - The region agnostic domain URL
GetDomainsDomainReplicaRegion
- Region
This property is required. string - A REPLICATION_ENABLED region, e.g. us-ashburn-1. See Regions and Availability Domains for the full list of supported region names.
- State
This property is required. string - A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- Url
This property is required. string - The region agnostic domain URL
- Region
This property is required. string - A REPLICATION_ENABLED region, e.g. us-ashburn-1. See Regions and Availability Domains for the full list of supported region names.
- State
This property is required. string - A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- Url
This property is required. string - The region agnostic domain URL
- region
This property is required. String - A REPLICATION_ENABLED region, e.g. us-ashburn-1. See Regions and Availability Domains for the full list of supported region names.
- state
This property is required. String - A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- url
This property is required. String - The region agnostic domain URL
- region
This property is required. string - A REPLICATION_ENABLED region, e.g. us-ashburn-1. See Regions and Availability Domains for the full list of supported region names.
- state
This property is required. string - A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- url
This property is required. string - The region agnostic domain URL
- region
This property is required. str - A REPLICATION_ENABLED region, e.g. us-ashburn-1. See Regions and Availability Domains for the full list of supported region names.
- state
This property is required. str - A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- url
This property is required. str - The region agnostic domain URL
- region
This property is required. String - A REPLICATION_ENABLED region, e.g. us-ashburn-1. See Regions and Availability Domains for the full list of supported region names.
- state
This property is required. String - A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.
- url
This property is required. String - The region agnostic domain URL
GetDomainsFilter
Package Details
- Repository
- oci pulumi/pulumi-oci
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
oci
Terraform Provider.