November 4, 2026 Release Notes - 2.4.0
Fixes
- Tag namespaces, tag definitions, and tag defaults now use the tenancy home-region provider. Deployments in other regions previously failed to create tag namespaces with
403-NotAllowedbecause requests used the deployment region. Inputs and resource addresses are unchanged; no state migration is required.
Updates
- Added
oke_configurationto deploy multiple independent clusters through the new OKE module, in the root module and RMS facade. Existingoke_clusters_configurationandoke_workers_configurationinputs retain legacycis-okev0.2.9. - New cluster resources use the
oke_deploymentsoutput and separateoke_deployments_output.jsonartifact, with JSON/YAML persistence in RMS facade. Legacyoke_resourcesandoke_output.jsonare unchanged. - Security modules now use v0.2.4, fixing same-stack vault references with empty or mixed external dependencies and planning with external vault OCIDs known only after apply.
- Added
ignore_defined_tagsto Orchestrator and RMS facade so callers can ignore defined tags applied by OCI tag defaults in all three provider configurations. Existing Oracle-Tags exclusions and default behavior are preserved. See issue #84. - Tag defaults in
tags_configurationcan target logical compartments created in the same apply. Governance v0.2.0 separates namespaces and tag definitions from defaults, retaining the existing configuration format. Namespaces and definitions precede compartments; each default depends on its target compartment ID instead of the entire compartments module. - Downstream resources do not wait for tag defaults or their propagation. No default-tag propagation timer or downstream default-tag dependencies are added.
Breaking changes
cis-okev0.2.9 module was deprecated and will remain available through Orchestrator under existingoke_clusters_configurationandoke_workers_configurationinputs and will be removed October 29, 2027. Customers are encouraged to update to the new OKE module version that usesoke_configuration.- Tag defaults now resolve logical compartment keys through the combined managed and external compartment map. Managed compartments take precedence when both maps contain the same key; previously tag defaults used only the external map. A collision can retarget an existing default and require its replacement. A literal compartment OCID or distinct external alias selects the external target, but changing a
compartment_idsreference also changes the default's resource key. Preserving an existing default in that case requires a reviewedmovedblock orterraform state mvmigration and a plan confirming no replacement.
Upgrade notes
- A built-in
movedblock transfers existing tag defaults frommodule.oci_lz_tags[0]tomodule.oci_lz_tag_defaults[0], preserving OCI identities without manual state commands when their configuration keys and target compartments are unchanged. Namespace and tag addresses remain unchanged. Review logical-key collisions and reference-key migrations as described under Breaking changes. - Resources created before tag defaults take effect may miss those tags, including during the first apply. Defaults do not backfill existing resources on later applies. Configure required tags explicitly through each resource module's tag inputs. Inherited tags absent from a module's configured
defined_tagscan be removed on a later apply. - Tag modules reference Governance's
refactor/composable-tagsbranch; budgets retain v0.1.6. Review the upgrade plan for unrelated changes; this change does not resolve existing replacement risks from other dependencies or module updates.