Skip to content

Can't delete all records in an existing bigip_ltm_datagroup #1164

Description

@mdkent

Environment

TMOS/Bigip Version: BIG-IP 17.5.1.3 Build 0.1.19 Engineering Hotfix
Terraform Version: 1.24.1
Terraform bigip provider Version: v1.10.5

Summary

I can't delete all records in an existing bigip_ltm_datagroup

Steps To Reproduce

resource "bigip_ltm_datagroup" "demo" {
  name = "/Common/demo"
  type = "ip"

  record { name = "10.99.99.99/32" }
}

apply it, this works fine.

Attempt to empty it:

resource "bigip_ltm_datagroup" "demo" {
  name = "/Common/demo"
  type = "ip"
}

Expected Behavior

The data group list should be empty.

Actual Behavior

The update appears to work:

Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols:
  ~ update in-place

Terraform will perform the following actions:

  # bigip_ltm_datagroup.demo will be updated in-place
  ~ resource "bigip_ltm_datagroup" "demo" {
        id       = "/Common/demo"
        name     = "/Common/demo"
        # (2 unchanged attributes hidden)

      - record {
          - name = "10.99.99.99/32" -> null
            # (1 unchanged attribute hidden)
        }
    }

Plan: 0 to add, 1 to change, 0 to destroy.

Do you want to perform these actions?
  Terraform will perform the actions described above.
  Only 'yes' will be accepted to approve.

  Enter a value: yes

bigip_ltm_datagroup.demo: Modifying... [id=/Common/demo]
bigip_ltm_datagroup.demo: Modifications complete after 0s [id=/Common/demo]

Apply complete! Resources: 0 added, 1 changed, 0 destroyed.

but after applying it, the IP is still there. A plan confirms it:

Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols:
  ~ update in-place

Terraform will perform the following actions:

  # bigip_ltm_datagroup.demo will be updated in-place
  ~ resource "bigip_ltm_datagroup" "demo" {
        id       = "/Common/demo"
        name     = "/Common/demo"
        # (2 unchanged attributes hidden)

      - record {
          - name = "10.99.99.99/32" -> null
            # (1 unchanged attribute hidden)
        }
    }

Plan: 0 to add, 1 to change, 0 to destroy.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions