Skip to content

LKE: deprecate output variable dashboard_url#2298

Closed
isimluk wants to merge 1 commit into
linode:devfrom
isimluk:deprecate-lke-dashboard
Closed

LKE: deprecate output variable dashboard_url#2298
isimluk wants to merge 1 commit into
linode:devfrom
isimluk:deprecate-lke-dashboard

Conversation

@isimluk

@isimluk isimluk commented Mar 12, 2026

Copy link
Copy Markdown

LKE dashboard is being removed. This PR deprecates the dashboard_url output of linode_lke_cluster resource. Upgrades for existing users will look like the following:

  $ terraform apply
  Terraform detected the following changes made outside of Terraform since the last "terraform apply" which may have affected this plan:

    # linode_lke_cluster.test has changed
    ~ resource "linode_lke_cluster" "test" {
        - dashboard_url = "https://f59fc4f4-f580-4ee4-b966-fa2a810937b7.redacted" -> null
          id            = "123456"
          tags          = [
              "lke",
              "tf",
          ]
          # (10 unchanged attributes hidden)
          # (2 unchanged blocks hidden)
      }

  Unless you have made equivalent changes to your configuration, or ignored the relevant attributes using ignore_changes, the following plan may include actions to undo or respond to these changes. ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

  Changes to Outputs: ~ dashboard_url  = "https://f59fc4f4-f580-4ee4-b966-fa2a810937b7.redacted" -> ""

LKE’s Kubernetes Dashboard will be decommissioned in May 2026

Following the upstream archival of the Kubernetes Dashboard project, Akamai Cloud will decommission the LKE-hosted Kubernetes Dashboard. This change will occur in May 2026. Once decommissioned, the Kubernetes Dashboard UI will no longer be available for new and existing LKE clusters.

https://techdocs.akamai.com/cloud-computing/docs/an-overview-of-the-kubernetes-dashboard-on-lke

Context

The API endpoint is deprecated and it will start returning empty string instead of dashboard url in May 2026. Meaning, the older provider versions will continue to work fine for a forseeable future.

LKE dashboard is being removed. This PR deprecates the dashboard_url
output of linode_lke_cluster resource. Upgrades for existing users will
look like the following:

      $ terraform apply
      Terraform detected the following changes made outside of Terraform since the last "terraform apply" which may have affected this plan:

        # linode_lke_cluster.test has changed
        ~ resource "linode_lke_cluster" "test" {
            - dashboard_url = "https://f59fc4f4-f580-4ee4-b966-fa2a810937b7.redacted" -> null
              id            = "123456"
              tags          = [
                  "lke",
                  "tf",
              ]
              # (10 unchanged attributes hidden)
              # (2 unchanged blocks hidden)
          }

      Unless you have made equivalent changes to your configuration, or ignored the relevant attributes using ignore_changes, the following plan may include actions to
      undo or respond to these changes.
      ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

      Changes to Outputs:
        ~ dashboard_url  = "https://f59fc4f4-f580-4ee4-b966-fa2a810937b7.redacted" -> ""

LKE’s Kubernetes Dashboard will be decommissioned in May 2026

Following the upstream archival of the Kubernetes Dashboard project,
Akamai Cloud will decommission the LKE-hosted Kubernetes Dashboard. This
change will occur in May 2026. Once decommissioned, the Kubernetes
Dashboard UI will no longer be available for new and existing LKE
clusters.

https://techdocs.akamai.com/cloud-computing/docs/an-overview-of-the-kubernetes-dashboard-on-lke
@isimluk isimluk requested a review from a team as a code owner March 12, 2026 15:06
@isimluk isimluk requested review from jriddle-linode and lgarber-akamai and removed request for a team March 12, 2026 15:06

@lgarber-akamai lgarber-akamai left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the contribution! Could all relevant test files be updated to no longer assert on dashboard_url (or assert that it's null)?

@isimluk

isimluk commented Jun 2, 2026

Copy link
Copy Markdown
Author

Is there a way for me to see which those are?

@zliang-akamai

Copy link
Copy Markdown
Member

Thanks for bringing this up! We have removed it since the v4 release of the provider.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Deprecates the dashboard_url computed attribute on linode_lke_cluster (resource + data source) and stops calling the LKE dashboard API, aligning provider behavior with the upcoming decommissioning of the LKE-hosted Kubernetes Dashboard.

Changes:

  • Marks dashboard_url as deprecated in the SDKv2 resource schema and the Plugin Framework data source schema.
  • Removes dashboard API fetching and now returns an empty value for dashboard_url during reads/parsing.
  • Simplifies Framework data source attribute parsing by dropping the dashboard object flow.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
linode/lke/schema_resource.go Adds deprecation metadata to the SDKv2 resource attribute.
linode/lke/resource.go Removes dashboard API call and now sets dashboard_url to an empty value on read.
linode/lke/framework_models.go Removes dashboard parsing and sets the Framework model’s DashboardURL to a deprecated placeholder value.
linode/lke/framework_datasource.go Removes dashboard API retrieval and updates model parsing call signature.
linode/lke/framework_datasource_schema.go Adds deprecation message for the Framework data source attribute.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Type: schema.TypeString,
Computed: true,
Description: "The dashboard URL of the cluster.",
Deprecated: "LKE Dashboard has been deprecated. This value will be empty.",
Comment thread linode/lke/resource.go
flattenedControlPlane := flattenLKEClusterControlPlane(cluster.ControlPlane, acl)

// Only standard LKE has a dashboard URL
// Only standard LKE used to had a dashboard URL
Comment thread linode/lke/resource.go
Comment on lines 119 to 121
if cluster.Tier == TierStandard {
dashboard, err := client.GetLKEClusterDashboard(ctx, id)
if err != nil {
return diag.Errorf("failed to get dashboard URL for LKE cluster %d: %s", id, err)
}

d.Set("dashboard_url", dashboard.URL)
d.Set("dashboard_url", "")
}
} else {
data.DashboardURL = types.StringNull()
}
data.DashboardURL = types.StringNull() // deprecated & unused
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants