kislerdm / terraform-provider-neon

Terraform provider to manage Neon SaaS resources
https://registry.terraform.io/providers/kislerdm/neon/latest/docs
Mozilla Public License 2.0
27 stars 10 forks source link

Fix `neon_role` import #88

Closed kislerdm closed 4 months ago

kislerdm commented 4 months ago

Terraform Version

Run terraform -v to show the version.

Terraform version: 1.4.6

Provider Version

pre-0.5.0

Affected Resource(s)

Please list the resources as a list, for example:

Terraform Configuration Files

terraform {
  required_providers {
    neon = {
      source  = "local/kislerdm/neon"
      version = "0.5"
    }
  }
}

provider "neon" {}

resource "neon_project" "this" {
  name                = "project-name"
  region_id           = "aws-us-west-2"
  pg_version          = "16"
  compute_provisioner = "k8s-neonvm"

  enable_logical_replication = false

  history_retention_seconds = 604800 # 7 days

  branch {
    name          = "main"
    database_name = "do_not_use_neon_default"
    role_name     = "main"
  }

  default_endpoint_settings {
    autoscaling_limit_min_cu = 0.25
    autoscaling_limit_max_cu = 0.25
    suspend_timeout_seconds  = 300 # 5 min
  }
}

resource "neon_role" "this" {
  project_id = neon_project.this.id
  branch_id  = neon_project.this.default_branch_id

  name = "app"
}

Debug Output

https://gist.github.com/kislerdm/730dcd72f766fcec2ed21a78d934f5d7

Expected Behavior

What should have happened?

Given, the role in the Neon project When, run terraform import neon_role.this "<projectID>/<branchID>/app" Then, the role state is successfully imported to the tf state.

Actual Behavior

What actually happened?

Tf invokes the resourceRoleRead function with empty project, branch and roleName. It leads to the error 404.

Steps to Reproduce

Please list the steps required to reproduce the issue, for example:

  1. terraform import neon_role.this "<projectID>/<branchID>/app"