oracle-terraform-modules / terraform-oci-compute-instance

Terraform Module for creating Oracle Cloud Infrastructure compute instances
https://registry.terraform.io/modules/oracle-terraform-modules/compute-instance/oci/latest
Other
46 stars 62 forks source link

Unable to change region after instance is created or specify a different region than the provider. #112

Open charlesomer opened 1 year ago

charlesomer commented 1 year ago

Community Note

Terraform Version and Provider Version

Terraform v1.5.6
on darwin_amd64
+ provider registry.terraform.io/oracle/oci v5.11.0

Affected Resource(s)

oci_core_instance

Terraform Configuration Files

module "instance" {
  source = "oracle-terraform-modules/compute-instance/oci"

  instance_count              = 1
  compartment_ocid            = var.compartment_id
  shape                       = "VM.Standard.A1.Flex"
  source_ocid                 = lookup(data.oci_core_images.ampere_ubuntu_images.images[0], "id")
  subnet_ocids                = [var.subnet_id]
  ssh_authorized_keys         = "~/.ssh/id_rsa.pub"
  instance_flex_memory_in_gbs = 6
  instance_flex_ocpus         = 1
}

Debug Output

Panic Output

Expected Behavior

Be able to specify a region separately to the provider config.

Actual Behavior

Uses region of provider at the time the instance was created even if changed later on.

Steps to Reproduce

  1. terraform apply to create an instance.
  2. Change provider region.
  3. terraform apply
  4. Should say no changes required.

Or just try to specify a different region than the provider. Apologies if this is already possible somehow and I've missed it!

Important Factoids

References

kral2 commented 1 year ago

Did you update the subnet ocid, so it matches something that exists in the new region? Also, is the data source refreshed first to target the image's new OCID for the new region?