https://github.com/ocilabs/
Name | Version |
---|---|
oci | n/a |
null | n/a |
time | n/a |
// --- operation controls --- //
provider "oci" {
alias = "home"
region = module.configuration.tenancy.region.key
}
module "resident" {
source = "github.com/ocilabs/resident"
depends_on = [module.configuration]
providers = {oci = oci.home}
tenancy = module.configuration.tenancy
resident = module.configuration.resident
input = {
# Reference to the deployment root. The service is setup in an encapsulating child compartment
parent_id = var.config.tenancy_ocid
# Enable compartment delete on destroy. If true, compartment will be deleted when `terraform destroy` is executed; If false, compartment will not be deleted on `terraform destroy` execution
enable_delete = var.stage != "PROD" ? true : false
}
}
output "resident" {
value = {for resource, parameter in module.resident : resource => parameter}
}
// --- operation controls --- //
Name | Type |
---|---|
null_resource.previous | resource |
oci_identity_compartment.domains | resource |
oci_identity_compartment.resident | resource |
oci_identity_group.resident | resource |
oci_identity_policy.domains | resource |
oci_identity_tag.resident | resource |
oci_identity_tag_default.resident | resource |
oci_identity_tag_namespace.resident | resource |
oci_ons_notification_topic.resident | resource |
oci_ons_subscription.resident | resource |
time_sleep.wait | resource |
oci_identity_tenancy.resident | data source |
Name | Description | Type | Default | Required |
---|---|---|---|---|
input | Settings for the service resident | object({ |
n/a | yes |
tenancy | Tenancy Configuration | object({ |
n/a | yes |
resident | Service Configuration | object({ |
n/a | yes |
Name | Description |
---|---|
id | The Oracle Cloud Identifier (OCID) for the service compartment. It allows to retrieve the compartment details using data blocks. |
parent_id | The OCID of the parent compartment for the service. |
compartment_ids | A list of OCID for the child compartments, representing the different administration domain. |
namespace_ids | A list of tag_namespaces created for the service compartment in the tenancy. This allows to define separate tags for every service. Namespace names have to be unique. |
tag_ids | A list of tags, created in the tag namespaces. |
group_ids | A list of groups, created for the service in the tenancy or root compartment. This allows to define separate policies for every service. Group names have to be unique. |
notifications | A list of notifcation topics, defined for a resident. |
policy_ids | A list of policy controls, defined for the different admistrator roles. Policy names correspond with the groups defined on tenancy level. |
freeform_tags | A list of predefined freeform tags, referenced in the provisioning process. |
defined_tags | A list of actionable tags, utilized for operation, budget- and compliance control. |