LKE: deprecate output variable dashboard_url#2298
Conversation
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
lgarber-akamai
left a comment
There was a problem hiding this comment.
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)?
|
Is there a way for me to see which those are? |
|
Thanks for bringing this up! We have removed it since the v4 release of the provider. |
There was a problem hiding this comment.
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_urlas 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_urlduring 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.", |
| flattenedControlPlane := flattenLKEClusterControlPlane(cluster.ControlPlane, acl) | ||
|
|
||
| // Only standard LKE has a dashboard URL | ||
| // Only standard LKE used to had a dashboard URL |
| 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 |
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:
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.