Created a `splunk_data_ui_views` via Terraform, Updating `.xml` source file results in "404 Not Found" upon `terraform apply`

Hello,

I am working with the splunk_data_ui_views and deployed a dashboard via terraform:

https://registry.terraform.io/providers/splunk/splunk/latest/docs/resources/data_ui_views

Code in main.tf

# main.tf
resource "splunk_data_ui_views" "my_dashboard" {
  name      = "Terraform_Sample_Dashboard"
  eai_data = file("my_dashboard.xml") 

  acl {
    owner = var.splunk_username
    app              = "MY_APP"
    sharing          = "app"
    can_change_perms = true
    can_write        = true
    removable        =true
    write            = ["my-dashboard-role"]
    read             = ["my-dashboard-role"]
  }
}
# provider.tf
terraform {
  backend "s3" {
  
  }
  required_providers {
    splunk = {
      source = "splunk/splunk"
      version = "1.4.22"
    }
  }
}

provider "splunk" {
  url       = "splunk.my_domain:8080"
  username  = var.splunk_username
  password  = var.spunk_password
}

What Worked

We were able to create the dashboard after the first terraform apply, and that went to success and the dashboard shows up in Splunk.

What Isn’t Working, Changing a Simple property in the source XML: Error 404

I simply went to change a small part of the xml in a dropdown, changing:

<choice value="myenvironment">myenvironment</choice>

to:

<choice value="myenvironment">myenvironment-edit</choice>

appending that edit part on just to tinker with the dashboard. The terraform plan was successful and just shows a change to that part of the xml source file:

-        <choice value="myenvironment">myenvironment</choice>
+        <choice value="myenvironment">myenvironment-edit</choice>

But upon terraform apply we get a 404 error:

| Error: 404 Not Found: {"messges":[{"type":"ERROR","text":"Cannot find entity with name=\"Terraform_Sample_Dashboard\""}]}
|
| with splunk_data_ui_views.my_dashboard,
| on main.tf line 2, in resource "splunk_data_ui_views" "my_dashboard":
| 2: resource "splunk_data_ui_views" "my_dashboard" {

But that doesn’t make immediate sense, since:

  1. terraform state list shows my splunk_data_ui_views.my_dashboard just fine
  2. The dashboard we created originally from the first/original terraform apply is also in the UI, so the state file must tracking the real world resource in Splunk.

So, why can’t I simply make an edit of my source xml file if the terraform plan is happy, but I get a 404 upon terraform apply.

I’ve worked with other Terraform providers like Terraform AWS and Terraform New Relic, and a simple property update is pretty seamless.

All this could be me simply being unfamiliar with Splunk and the TF provider for it. Any suggestions are appreciated. Thanks!

Other Files