juju / terraform-provider-juju

A Terraform provider for Juju
Apache License 2.0
19 stars 37 forks source link

endpoint_bindings showing as needing to be updated #505

Open arif-ali opened 3 months ago

arif-ali commented 3 months ago

Description

When updating a particular resource, where nothing has actually changed, the endpoint_bindings via terraform seems to suggest that needs to be changed. It's a minor issue, but it's not reporting correctly, and hence it shows info that is not necessarily needed.

This could be quite cumbersome when there are several terraform resources, and picking the things that have actually changed could be difficult to pinpoint

Urgency

Annoying bug in our test suite

Terraform Juju Provider version

0.12.0

Terraform version

1.9.0

Juju version

3.4.3

Terraform Configuration(s)

resource "juju_application" "placement-mysql-router" {
  name = "placement-mysql-router"

  model = var.model-name

  charm {
    name    = "mysql-router"
    channel = var.mysql-router-channel
  }

  units = 0

  endpoint_bindings = [{
    space    = var.oam-space
  },{
    space    = var.internal-space
    endpoint = "shared-db"
  },{
    space    = var.internal-space
    endpoint = "db-router"
  }]

  config = {
    source = var.openstack-origin
  }
}

Reproduce / Test

First we apply the terrform

When we do a plan or apply the any time after wards we get teh same output suggesting that the endpoint bindings need updating as shown below

  # juju_application.placement-mysql-router will be updated in-place
  ~ resource "juju_application" "placement-mysql-router" {
      ~ endpoint_bindings = [
          + {
              + endpoint = "db-router"
              + space    = "oam"
            },
          + {
              + endpoint = "shared-db"
              + space    = "oam"
            },
            # (1 unchanged element hidden)
        ]
        id                = "cpe-jammy:placement-mysql-router"
        name              = "placement-mysql-router"
      + principal         = (known after apply)
        # (6 unchanged attributes hidden)

        # (1 unchanged block hidden)
    }


### Debug/Panic Output

_No response_

### Notes & References

_No response_
hmlanigan commented 2 months ago

Interesting, I'm not quite sure why this would be happening. It will have to be investigated.