From 988e2c40e8fbc8218c81734e453e6e434b5a3ea9 Mon Sep 17 00:00:00 2001 From: Oliver Love Date: Wed, 15 Jul 2026 11:06:05 -0400 Subject: [PATCH 1/4] CON-13387 Add p2p OCI registry plugin to Create and Update API calls --- args.go | 2 ++ commands/kubernetes.go | 24 +++++++++++++++++++ go.mod | 2 +- go.sum | 2 ++ .../github.com/digitalocean/godo/CHANGELOG.md | 4 ++++ vendor/github.com/digitalocean/godo/godo.go | 2 +- .../digitalocean/godo/kubernetes.go | 8 +++++++ vendor/modules.txt | 2 +- 8 files changed, 43 insertions(+), 3 deletions(-) diff --git a/args.go b/args.go index 7951038a1..c16a12c85 100644 --- a/args.go +++ b/args.go @@ -159,6 +159,8 @@ const ( ArgClusterAutoscalerExpanders = "expanders" // ArgEnableRoutingAgent enables the routing-agent cluster plugin. ArgEnableRoutingAgent = "enable-routing-agent" + // ArgEnableP2pOciRegistryPlugin enables the Peer-to-peer OCI registry cluster plugin. + ArgEnableP2pOciRegistryPlugin = "enable-p2p-oci-registry-plugin" // ArgEnableCorednsAutoscaler enables the CoreDNS Autoscaler cluster plugin. ArgEnableCorednsAutoscaler = "enable-coredns-autoscaler" // ArgEnableAmdGpuDevicePlugin enables automatic amd gpu device plugin installation. diff --git a/commands/kubernetes.go b/commands/kubernetes.go index ec36b1f24..999157b33 100644 --- a/commands/kubernetes.go +++ b/commands/kubernetes.go @@ -323,6 +323,8 @@ After creating a cluster, a configuration context is added to kubectl and made a "Customizes expanders used by cluster-autoscaler. The autoscaler will apply each expander from the provided comma-separated list to narrow down the selection of node types created to scale up, until either a single node type is left, or the list of expanders is exhausted. Available expanders: random, least-waste, priority. If this flag is empty, autoscaler will use its default expanders.") AddBoolFlag(cmdKubeClusterCreate, doctl.ArgEnableRoutingAgent, "", false, "Creates the cluster with routing-agent enabled. Defaults to false. To enable routing-agent, supply --enable-routing-agent=true.") + AddBoolFlag(cmdKubeClusterCreate, doctl.ArgEnableP2pOciRegistryPlugin, "", false, + "Creates the cluster with Peer-to-peer OCI registry plugin enabled. Defaults to false. To enable it, supply --enable-p2p-oci-registry-plugin=true.") AddBoolFlag(cmdKubeClusterCreate, doctl.ArgEnableCorednsAutoscaler, "", false, "Creates the cluster with the CoreDNS Autoscaler enabled, which scales CoreDNS replicas in proportion to the cluster's size. When omitted, API applies version-specific default (true for 1.36.0+; false for older). Use --enable-coredns-autoscaler=false to disable.") AddBoolFlag(cmdKubeClusterCreate, doctl.ArgEnableAmdGpuDevicePlugin, "", false, @@ -391,6 +393,8 @@ Updates the configuration values for a Kubernetes cluster. The cluster must be r "Creates the cluster with control plane firewall enabled. Defaults to false. To enable the control plane firewall, supply --enable-control-plane-firewall=true.") AddBoolFlag(cmdKubeClusterUpdate, doctl.ArgEnableRoutingAgent, "", false, "Creates the cluster with routing-agent enabled. Defaults to false. To enable routing-agent, supply --routing-agent=true.") + AddBoolFlag(cmdKubeClusterUpdate, doctl.ArgEnableP2pOciRegistryPlugin, "", false, + "Creates the cluster with Peer-to-peer OCI registry plugin enabled. Defaults to false. To enable it, supply --enable-p2p-oci-registry-plugin=true.") AddBoolFlag(cmdKubeClusterUpdate, doctl.ArgEnableCorednsAutoscaler, "", false, "Creates the cluster with the CoreDNS Autoscaler enabled, which scales CoreDNS replicas in proportion to the cluster's size. When omitted, API applies version-specific default (true for 1.36.0+; false for older). To always enable it, supply --enable-coredns-autoscaler=true.") AddBoolFlag(cmdKubeClusterUpdate, doctl.ArgEnableAmdGpuDevicePlugin, "", false, @@ -1855,6 +1859,16 @@ func buildClusterCreateRequestFromArgs(c *CmdConfig, r *godo.KubernetesClusterCr } } + enableP2pOciRegistryPlugin, err := c.Doit.GetBoolPtr(c.NS, doctl.ArgEnableP2pOciRegistryPlugin) + if err != nil { + return err + } + if enableP2pOciRegistryPlugin != nil { + r.P2pOciRegistryPlugin = &godo.KubernetesP2pOciRegistry{ + Enabled: enableP2pOciRegistryPlugin, + } + } + // Only forward the CoreDNS Autoscaler flag when the user explicitly sets it so the // server-side defaulting (version-based) isn't suppressed by sending an unset "false". if c.Doit.IsSet(doctl.ArgEnableCorednsAutoscaler) { @@ -2086,6 +2100,16 @@ func buildClusterUpdateRequestFromArgs(c *CmdConfig, r *godo.KubernetesClusterUp } } + enableP2pOciRegistryPlugin, err := c.Doit.GetBoolPtr(c.NS, doctl.ArgEnableP2pOciRegistryPlugin) + if err != nil { + return err + } + if enableP2pOciRegistryPlugin != nil { + r.P2pOciRegistryPlugin = &godo.KubernetesP2pOciRegistry{ + Enabled: enableP2pOciRegistryPlugin, + } + } + // Only forward the CoreDNS Autoscaler flag when the user explicitly sets it so we don't // disable existing state on a no-op update by sending an unset "false". if c.Doit.IsSet(doctl.ArgEnableCorednsAutoscaler) { diff --git a/go.mod b/go.mod index 05e79b250..095dff073 100644 --- a/go.mod +++ b/go.mod @@ -5,7 +5,7 @@ go 1.25.0 require ( github.com/blang/semver v3.5.1+incompatible github.com/creack/pty v1.1.21 - github.com/digitalocean/godo v1.198.0 + github.com/digitalocean/godo v1.199.0 github.com/docker/cli v24.0.5+incompatible github.com/docker/docker v25.0.6+incompatible github.com/docker/docker-credential-helpers v0.7.0 // indirect diff --git a/go.sum b/go.sum index c0d8cc6fe..1355d9b80 100644 --- a/go.sum +++ b/go.sum @@ -95,6 +95,8 @@ github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1 github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/digitalocean/godo v1.198.0 h1:jylPVf1efxpOZnTOSc3K4a+Qse9pTl/AHu+GExthMNw= github.com/digitalocean/godo v1.198.0/go.mod h1:xQsWpVCCbkDrWisHA72hPzPlnC+4W5w/McZY5ij9uvU= +github.com/digitalocean/godo v1.199.0 h1:brSUWakhtutyzNTvRGSvn+lXC7MTg8VA9DGoA6miWXA= +github.com/digitalocean/godo v1.199.0/go.mod h1:xQsWpVCCbkDrWisHA72hPzPlnC+4W5w/McZY5ij9uvU= github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= github.com/docker/cli v24.0.5+incompatible h1:WeBimjvS0eKdH4Ygx+ihVq1Q++xg36M/rMi4aXAvodc= diff --git a/vendor/github.com/digitalocean/godo/CHANGELOG.md b/vendor/github.com/digitalocean/godo/CHANGELOG.md index 5b8b65dc3..27bd13789 100644 --- a/vendor/github.com/digitalocean/godo/CHANGELOG.md +++ b/vendor/github.com/digitalocean/godo/CHANGELOG.md @@ -1,5 +1,9 @@ # Change Log +## [1.199.0] - 2026-07-15 + +- #1052 - @llDrLove - CON-13386 Add P2pOciRegistry plugin information to Kubernetes api calls (Create, Update, Get) + ## [1.198.0] - 2026-07-07 - #1043 - @johannaratliff - Support subnet_uuid in vpcnatgateway diff --git a/vendor/github.com/digitalocean/godo/godo.go b/vendor/github.com/digitalocean/godo/godo.go index f32ae97a8..7449e69d0 100644 --- a/vendor/github.com/digitalocean/godo/godo.go +++ b/vendor/github.com/digitalocean/godo/godo.go @@ -21,7 +21,7 @@ import ( ) const ( - libraryVersion = "1.198.0" + libraryVersion = "1.199.0" defaultBaseURL = "https://api.digitalocean.com/" userAgent = "godo/" + libraryVersion mediaType = "application/json" diff --git a/vendor/github.com/digitalocean/godo/kubernetes.go b/vendor/github.com/digitalocean/godo/kubernetes.go index 039839369..87d33a607 100644 --- a/vendor/github.com/digitalocean/godo/kubernetes.go +++ b/vendor/github.com/digitalocean/godo/kubernetes.go @@ -95,6 +95,7 @@ type KubernetesClusterCreateRequest struct { RdmaSharedDevicePlugin *KubernetesRdmaSharedDevicePlugin `json:"rdma_shared_dev_plugin,omitempty"` CorednsAutoscaler *KubernetesCorednsAutoscaler `json:"coredns_autoscaler,omitempty"` SSO *KubernetesClusterSSO `json:"sso,omitempty"` + P2pOciRegistryPlugin *KubernetesP2pOciRegistry `json:"p2p_oci_registry_plugin,omitempty"` } // KubernetesClusterUpdateRequest represents a request to update a Kubernetes cluster. @@ -113,6 +114,7 @@ type KubernetesClusterUpdateRequest struct { RdmaSharedDevicePlugin *KubernetesRdmaSharedDevicePlugin `json:"rdma_shared_dev_plugin,omitempty"` CorednsAutoscaler *KubernetesCorednsAutoscaler `json:"coredns_autoscaler,omitempty"` SSO *KubernetesClusterSSO `json:"sso,omitempty"` + P2pOciRegistryPlugin *KubernetesP2pOciRegistry `json:"p2p_oci_registry_plugin,omitempty"` // Convert cluster to run highly available control plane HA *bool `json:"ha,omitempty"` @@ -258,6 +260,7 @@ type KubernetesCluster struct { RdmaSharedDevicePlugin *KubernetesRdmaSharedDevicePlugin `json:"rdma_shared_dev_plugin,omitempty"` CorednsAutoscaler *KubernetesCorednsAutoscaler `json:"coredns_autoscaler,omitempty"` SSO *KubernetesClusterSSO `json:"sso,omitempty"` + P2pOciRegistryPlugin *KubernetesP2pOciRegistry `json:"p2p_oci_registry_plugin,omitempty"` Status *KubernetesClusterStatus `json:"status,omitempty"` CreatedAt time.Time `json:"created_at,omitempty"` @@ -340,6 +343,11 @@ type KubernetesCorednsAutoscaler struct { Enabled *bool `json:"enabled"` } +// KubernetesP2pOciRegistry represents information about the Peer-to-peer OCI registry cluster plugin. +type KubernetesP2pOciRegistry struct { + Enabled *bool `json:"enabled"` +} + // KubernetesClusterSSO configures Single Sign-On (SSO) for a Kubernetes cluster. type KubernetesClusterSSO struct { Enabled bool `json:"enabled"` diff --git a/vendor/modules.txt b/vendor/modules.txt index 1bd3870b8..daf6cb80a 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -64,7 +64,7 @@ github.com/creack/pty # github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc ## explicit github.com/davecgh/go-spew/spew -# github.com/digitalocean/godo v1.198.0 +# github.com/digitalocean/godo v1.199.0 ## explicit; go 1.23.0 github.com/digitalocean/godo github.com/digitalocean/godo/metrics From 7e007acf6ab3ecbfbefcba1ceb25350be325f6a6 Mon Sep 17 00:00:00 2001 From: Oliver Love Date: Wed, 15 Jul 2026 11:57:39 -0400 Subject: [PATCH 2/4] CON-13387 --- commands/kubernetes_test.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/commands/kubernetes_test.go b/commands/kubernetes_test.go index 7631c561a..1c50cdc1f 100644 --- a/commands/kubernetes_test.go +++ b/commands/kubernetes_test.go @@ -58,6 +58,9 @@ var ( RoutingAgent: &godo.KubernetesRoutingAgent{ Enabled: boolPtr(true), }, + P2pOciRegistryPlugin: &godo.KubernetesP2pOciRegistry{ + Enabled: boolPtr(true), + }, AmdGpuDevicePlugin: &godo.KubernetesAmdGpuDevicePlugin{ Enabled: boolPtr(true), }, @@ -726,6 +729,9 @@ func TestKubernetesCreate(t *testing.T) { RoutingAgent: &godo.KubernetesRoutingAgent{ Enabled: boolPtr(true), }, + P2pOciRegistryPlugin: &godo.KubernetesP2pOciRegistry{ + Enabled: boolPtr(true), + }, AmdGpuDevicePlugin: &godo.KubernetesAmdGpuDevicePlugin{ Enabled: boolPtr(true), }, @@ -772,6 +778,7 @@ func TestKubernetesCreate(t *testing.T) { config.Doit.Set(config.NS, doctl.ArgClusterAutoscalerScaleDownUnneededTime, testCluster.ClusterAutoscalerConfiguration.ScaleDownUnneededTime) config.Doit.Set(config.NS, doctl.ArgEnableRoutingAgent, testCluster.RoutingAgent.Enabled) + config.Doit.Set(config.NS, doctl.ArgEnableP2pOciRegistryPlugin, testCluster.P2pOciRegistryPlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableAmdGpuDevicePlugin, testCluster.AmdGpuDevicePlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableAmdGpuDeviceMetricsExporterPlugin, testCluster.AmdGpuDeviceMetricsExporterPlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableNvidiaGpuDevicePlugin, testCluster.NvidiaGpuDevicePlugin.Enabled) @@ -889,6 +896,9 @@ func TestKubernetesUpdate(t *testing.T) { RoutingAgent: &godo.KubernetesRoutingAgent{ Enabled: boolPtr(true), }, + P2pOciRegistryPlugin: &godo.KubernetesP2pOciRegistry{ + Enabled: boolPtr(true), + }, AmdGpuDevicePlugin: &godo.KubernetesAmdGpuDevicePlugin{ Enabled: boolPtr(true), }, @@ -923,6 +933,7 @@ func TestKubernetesUpdate(t *testing.T) { config.Doit.Set(config.NS, doctl.ArgClusterAutoscalerScaleDownUtilizationThreshold, testCluster.ClusterAutoscalerConfiguration.ScaleDownUtilizationThreshold) config.Doit.Set(config.NS, doctl.ArgClusterAutoscalerScaleDownUnneededTime, testCluster.ClusterAutoscalerConfiguration.ScaleDownUnneededTime) config.Doit.Set(config.NS, doctl.ArgEnableRoutingAgent, testCluster.RoutingAgent.Enabled) + config.Doit.Set(config.NS, doctl.ArgEnableP2pOciRegistryPlugin, testCluster.P2pOciRegistryPlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableAmdGpuDevicePlugin, testCluster.AmdGpuDevicePlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableAmdGpuDeviceMetricsExporterPlugin, testCluster.AmdGpuDeviceMetricsExporterPlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableNvidiaGpuDevicePlugin, testCluster.NvidiaGpuDevicePlugin.Enabled) @@ -961,6 +972,9 @@ func TestKubernetesUpdate(t *testing.T) { RoutingAgent: &godo.KubernetesRoutingAgent{ Enabled: boolPtr(true), }, + P2pOciRegistryPlugin: &godo.KubernetesP2pOciRegistry{ + Enabled: boolPtr(true), + }, AmdGpuDevicePlugin: &godo.KubernetesAmdGpuDevicePlugin{ Enabled: boolPtr(true), }, @@ -996,6 +1010,7 @@ func TestKubernetesUpdate(t *testing.T) { config.Doit.Set(config.NS, doctl.ArgClusterAutoscalerScaleDownUtilizationThreshold, testCluster.ClusterAutoscalerConfiguration.ScaleDownUtilizationThreshold) config.Doit.Set(config.NS, doctl.ArgClusterAutoscalerScaleDownUnneededTime, testCluster.ClusterAutoscalerConfiguration.ScaleDownUnneededTime) config.Doit.Set(config.NS, doctl.ArgEnableRoutingAgent, testCluster.RoutingAgent.Enabled) + config.Doit.Set(config.NS, doctl.ArgEnableP2pOciRegistryPlugin, testCluster.P2pOciRegistryPlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableAmdGpuDevicePlugin, testCluster.AmdGpuDevicePlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableAmdGpuDeviceMetricsExporterPlugin, testCluster.AmdGpuDeviceMetricsExporterPlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableNvidiaGpuDevicePlugin, testCluster.NvidiaGpuDevicePlugin.Enabled) From e2d22f302ea62648016954ada283bb11f9c3cb36 Mon Sep 17 00:00:00 2001 From: Oliver Love Date: Wed, 15 Jul 2026 13:42:27 -0400 Subject: [PATCH 3/4] CON-13387 --- args.go | 4 ++-- commands/displayers/kubernetes.go | 6 +++++- commands/kubernetes.go | 12 ++++++------ commands/kubernetes_test.go | 6 +++--- 4 files changed, 16 insertions(+), 12 deletions(-) diff --git a/args.go b/args.go index c16a12c85..345b78886 100644 --- a/args.go +++ b/args.go @@ -159,8 +159,8 @@ const ( ArgClusterAutoscalerExpanders = "expanders" // ArgEnableRoutingAgent enables the routing-agent cluster plugin. ArgEnableRoutingAgent = "enable-routing-agent" - // ArgEnableP2pOciRegistryPlugin enables the Peer-to-peer OCI registry cluster plugin. - ArgEnableP2pOciRegistryPlugin = "enable-p2p-oci-registry-plugin" + // ArgEnablePeerToPeerOciRegistryPlugin enables the Peer-to-peer OCI registry cluster plugin. + ArgEnablePeerToPeerOciRegistryPlugin = "enable-peer-to-peer-oci-registry-plugin" // ArgEnableCorednsAutoscaler enables the CoreDNS Autoscaler cluster plugin. ArgEnableCorednsAutoscaler = "enable-coredns-autoscaler" // ArgEnableAmdGpuDevicePlugin enables automatic amd gpu device plugin installation. diff --git a/commands/displayers/kubernetes.go b/commands/displayers/kubernetes.go index b167c3e71..c685bce1b 100644 --- a/commands/displayers/kubernetes.go +++ b/commands/displayers/kubernetes.go @@ -5,8 +5,9 @@ import ( "io" "strings" - "github.com/digitalocean/doctl/do" "github.com/digitalocean/godo" + + "github.com/digitalocean/doctl/do" ) type KubernetesClusters struct { @@ -52,6 +53,7 @@ func (clusters *KubernetesClusters) Cols() []string { "Autoscaler.UnneededTime", "Autoscaler.Expanders", "RoutingAgent", + "PeerToPeerOciRegistryPlugin", "CorednsAutoscaler", "AmdGpuDevicePlugin", "AmdGpuDeviceMetricsExporterPlugin", @@ -92,6 +94,7 @@ func (clusters *KubernetesClusters) ColMap() map[string]string { "Autoscaler.UnneededTime": "Autoscaler Scale Down Unneeded Time", "Autoscaler.Expanders": "Autoscaler Custom Expanders", "RoutingAgent": "Routing Agent", + "PeerToPeerOciRegistryPlugin": "Peer-to-peer OCI registry Plugin", "CorednsAutoscaler": "CoreDNS Autoscaler", "AmdGpuDevicePlugin": "AMD GPU Device Plugin", "AmdGpuDeviceMetricsExporterPlugin": "AMD GPU Device Metrics Exporter Plugin", @@ -133,6 +136,7 @@ func (clusters *KubernetesClusters) KV() []map[string]any { "Autoscaler.UnneededTime": "", "Autoscaler.Expanders": "", "RoutingAgent": cluster.RoutingAgent != nil && *cluster.RoutingAgent.Enabled, + "PeerToPeerOciRegistryPlugin": cluster.P2pOciRegistryPlugin != nil && *cluster.P2pOciRegistryPlugin.Enabled, "CorednsAutoscaler": cluster.CorednsAutoscaler != nil && *cluster.CorednsAutoscaler.Enabled, "AmdGpuDevicePlugin": cluster.AmdGpuDevicePlugin != nil && *cluster.AmdGpuDevicePlugin.Enabled, "AmdGpuDeviceMetricsExporterPlugin": cluster.AmdGpuDeviceMetricsExporterPlugin != nil && *cluster.AmdGpuDeviceMetricsExporterPlugin.Enabled, diff --git a/commands/kubernetes.go b/commands/kubernetes.go index 999157b33..df1ad2e25 100644 --- a/commands/kubernetes.go +++ b/commands/kubernetes.go @@ -323,8 +323,8 @@ After creating a cluster, a configuration context is added to kubectl and made a "Customizes expanders used by cluster-autoscaler. The autoscaler will apply each expander from the provided comma-separated list to narrow down the selection of node types created to scale up, until either a single node type is left, or the list of expanders is exhausted. Available expanders: random, least-waste, priority. If this flag is empty, autoscaler will use its default expanders.") AddBoolFlag(cmdKubeClusterCreate, doctl.ArgEnableRoutingAgent, "", false, "Creates the cluster with routing-agent enabled. Defaults to false. To enable routing-agent, supply --enable-routing-agent=true.") - AddBoolFlag(cmdKubeClusterCreate, doctl.ArgEnableP2pOciRegistryPlugin, "", false, - "Creates the cluster with Peer-to-peer OCI registry plugin enabled. Defaults to false. To enable it, supply --enable-p2p-oci-registry-plugin=true.") + AddBoolFlag(cmdKubeClusterCreate, doctl.ArgEnablePeerToPeerOciRegistryPlugin, "", false, + "Creates the cluster with Peer-to-peer OCI registry plugin enabled. Defaults to false. To enable it, supply --enable-peer-to-peer-oci-registry-plugin=true.") AddBoolFlag(cmdKubeClusterCreate, doctl.ArgEnableCorednsAutoscaler, "", false, "Creates the cluster with the CoreDNS Autoscaler enabled, which scales CoreDNS replicas in proportion to the cluster's size. When omitted, API applies version-specific default (true for 1.36.0+; false for older). Use --enable-coredns-autoscaler=false to disable.") AddBoolFlag(cmdKubeClusterCreate, doctl.ArgEnableAmdGpuDevicePlugin, "", false, @@ -393,8 +393,8 @@ Updates the configuration values for a Kubernetes cluster. The cluster must be r "Creates the cluster with control plane firewall enabled. Defaults to false. To enable the control plane firewall, supply --enable-control-plane-firewall=true.") AddBoolFlag(cmdKubeClusterUpdate, doctl.ArgEnableRoutingAgent, "", false, "Creates the cluster with routing-agent enabled. Defaults to false. To enable routing-agent, supply --routing-agent=true.") - AddBoolFlag(cmdKubeClusterUpdate, doctl.ArgEnableP2pOciRegistryPlugin, "", false, - "Creates the cluster with Peer-to-peer OCI registry plugin enabled. Defaults to false. To enable it, supply --enable-p2p-oci-registry-plugin=true.") + AddBoolFlag(cmdKubeClusterUpdate, doctl.ArgEnablePeerToPeerOciRegistryPlugin, "", false, + "Creates the cluster with Peer-to-peer OCI registry plugin enabled. Defaults to false. To enable it, supply --enable-peer-to-peer-oci-registry-plugin=true.") AddBoolFlag(cmdKubeClusterUpdate, doctl.ArgEnableCorednsAutoscaler, "", false, "Creates the cluster with the CoreDNS Autoscaler enabled, which scales CoreDNS replicas in proportion to the cluster's size. When omitted, API applies version-specific default (true for 1.36.0+; false for older). To always enable it, supply --enable-coredns-autoscaler=true.") AddBoolFlag(cmdKubeClusterUpdate, doctl.ArgEnableAmdGpuDevicePlugin, "", false, @@ -1859,7 +1859,7 @@ func buildClusterCreateRequestFromArgs(c *CmdConfig, r *godo.KubernetesClusterCr } } - enableP2pOciRegistryPlugin, err := c.Doit.GetBoolPtr(c.NS, doctl.ArgEnableP2pOciRegistryPlugin) + enableP2pOciRegistryPlugin, err := c.Doit.GetBoolPtr(c.NS, doctl.ArgEnablePeerToPeerOciRegistryPlugin) if err != nil { return err } @@ -2100,7 +2100,7 @@ func buildClusterUpdateRequestFromArgs(c *CmdConfig, r *godo.KubernetesClusterUp } } - enableP2pOciRegistryPlugin, err := c.Doit.GetBoolPtr(c.NS, doctl.ArgEnableP2pOciRegistryPlugin) + enableP2pOciRegistryPlugin, err := c.Doit.GetBoolPtr(c.NS, doctl.ArgEnablePeerToPeerOciRegistryPlugin) if err != nil { return err } diff --git a/commands/kubernetes_test.go b/commands/kubernetes_test.go index 1c50cdc1f..93b5a8136 100644 --- a/commands/kubernetes_test.go +++ b/commands/kubernetes_test.go @@ -778,7 +778,7 @@ func TestKubernetesCreate(t *testing.T) { config.Doit.Set(config.NS, doctl.ArgClusterAutoscalerScaleDownUnneededTime, testCluster.ClusterAutoscalerConfiguration.ScaleDownUnneededTime) config.Doit.Set(config.NS, doctl.ArgEnableRoutingAgent, testCluster.RoutingAgent.Enabled) - config.Doit.Set(config.NS, doctl.ArgEnableP2pOciRegistryPlugin, testCluster.P2pOciRegistryPlugin.Enabled) + config.Doit.Set(config.NS, doctl.ArgEnablePeerToPeerOciRegistryPlugin, testCluster.P2pOciRegistryPlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableAmdGpuDevicePlugin, testCluster.AmdGpuDevicePlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableAmdGpuDeviceMetricsExporterPlugin, testCluster.AmdGpuDeviceMetricsExporterPlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableNvidiaGpuDevicePlugin, testCluster.NvidiaGpuDevicePlugin.Enabled) @@ -933,7 +933,7 @@ func TestKubernetesUpdate(t *testing.T) { config.Doit.Set(config.NS, doctl.ArgClusterAutoscalerScaleDownUtilizationThreshold, testCluster.ClusterAutoscalerConfiguration.ScaleDownUtilizationThreshold) config.Doit.Set(config.NS, doctl.ArgClusterAutoscalerScaleDownUnneededTime, testCluster.ClusterAutoscalerConfiguration.ScaleDownUnneededTime) config.Doit.Set(config.NS, doctl.ArgEnableRoutingAgent, testCluster.RoutingAgent.Enabled) - config.Doit.Set(config.NS, doctl.ArgEnableP2pOciRegistryPlugin, testCluster.P2pOciRegistryPlugin.Enabled) + config.Doit.Set(config.NS, doctl.ArgEnablePeerToPeerOciRegistryPlugin, testCluster.P2pOciRegistryPlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableAmdGpuDevicePlugin, testCluster.AmdGpuDevicePlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableAmdGpuDeviceMetricsExporterPlugin, testCluster.AmdGpuDeviceMetricsExporterPlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableNvidiaGpuDevicePlugin, testCluster.NvidiaGpuDevicePlugin.Enabled) @@ -1010,7 +1010,7 @@ func TestKubernetesUpdate(t *testing.T) { config.Doit.Set(config.NS, doctl.ArgClusterAutoscalerScaleDownUtilizationThreshold, testCluster.ClusterAutoscalerConfiguration.ScaleDownUtilizationThreshold) config.Doit.Set(config.NS, doctl.ArgClusterAutoscalerScaleDownUnneededTime, testCluster.ClusterAutoscalerConfiguration.ScaleDownUnneededTime) config.Doit.Set(config.NS, doctl.ArgEnableRoutingAgent, testCluster.RoutingAgent.Enabled) - config.Doit.Set(config.NS, doctl.ArgEnableP2pOciRegistryPlugin, testCluster.P2pOciRegistryPlugin.Enabled) + config.Doit.Set(config.NS, doctl.ArgEnablePeerToPeerOciRegistryPlugin, testCluster.P2pOciRegistryPlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableAmdGpuDevicePlugin, testCluster.AmdGpuDevicePlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableAmdGpuDeviceMetricsExporterPlugin, testCluster.AmdGpuDeviceMetricsExporterPlugin.Enabled) config.Doit.Set(config.NS, doctl.ArgEnableNvidiaGpuDevicePlugin, testCluster.NvidiaGpuDevicePlugin.Enabled) From d3ee5fe8cf6a66d2bdf58555d5715bf13d22bbf6 Mon Sep 17 00:00:00 2001 From: Oliver Love Date: Wed, 15 Jul 2026 14:06:17 -0400 Subject: [PATCH 4/4] CON-13387 --- integration/kubernetes_clusters_get_test.go | 4 ++-- integration/projects_resources_get_test.go | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/integration/kubernetes_clusters_get_test.go b/integration/kubernetes_clusters_get_test.go index 2eef997f1..0f595cd70 100644 --- a/integration/kubernetes_clusters_get_test.go +++ b/integration/kubernetes_clusters_get_test.go @@ -117,7 +117,7 @@ var ( ` k8sGetOutput = ` -ID Name Region Version Auto Upgrade HA Control Plane Status Endpoint IPv4 Cluster Subnet Service Subnet Tags Created At Updated At Node Pools Autoscaler Scale Down Utilization Autoscaler Scale Down Unneeded Time Autoscaler Custom Expanders Routing Agent CoreDNS Autoscaler AMD GPU Device Plugin AMD GPU Device Metrics Exporter Plugin NVIDIA GPU Device Plugin RDMA Shared Device Plugin -some-cluster-id some-cluster-id nyc3 some-kube-version true false running production 2018-11-15 16:00:11 +0000 UTC 2018-11-15 16:00:11 +0000 UTC frontend-pool 50% 1m30s priority, random false false false false false false +ID Name Region Version Auto Upgrade HA Control Plane Status Endpoint IPv4 Cluster Subnet Service Subnet Tags Created At Updated At Node Pools Autoscaler Scale Down Utilization Autoscaler Scale Down Unneeded Time Autoscaler Custom Expanders Routing Agent Peer-to-peer OCI registry Plugin CoreDNS Autoscaler AMD GPU Device Plugin AMD GPU Device Metrics Exporter Plugin NVIDIA GPU Device Plugin RDMA Shared Device Plugin +some-cluster-id some-cluster-id nyc3 some-kube-version true false running production 2018-11-15 16:00:11 +0000 UTC 2018-11-15 16:00:11 +0000 UTC frontend-pool 50% 1m30s priority, random false false false false false false false ` ) diff --git a/integration/projects_resources_get_test.go b/integration/projects_resources_get_test.go index f659b992c..07265cb48 100644 --- a/integration/projects_resources_get_test.go +++ b/integration/projects_resources_get_test.go @@ -343,8 +343,8 @@ ID Name Size Region Filesyste } ` projectsResourcesGetKubernetesOutput = ` -ID Name Region Version Auto Upgrade HA Control Plane Status Endpoint IPv4 Cluster Subnet Service Subnet Tags Created At Updated At Node Pools Autoscaler Scale Down Utilization Autoscaler Scale Down Unneeded Time Autoscaler Custom Expanders Routing Agent CoreDNS Autoscaler AMD GPU Device Plugin AMD GPU Device Metrics Exporter Plugin NVIDIA GPU Device Plugin RDMA Shared Device Plugin - 1111 false false provisioning k8s 2021-01-29 16:02:02 +0000 UTC 0001-01-01 00:00:00 +0000 UTC pool-test false false false false false false +ID Name Region Version Auto Upgrade HA Control Plane Status Endpoint IPv4 Cluster Subnet Service Subnet Tags Created At Updated At Node Pools Autoscaler Scale Down Utilization Autoscaler Scale Down Unneeded Time Autoscaler Custom Expanders Routing Agent Peer-to-peer OCI registry Plugin CoreDNS Autoscaler AMD GPU Device Plugin AMD GPU Device Metrics Exporter Plugin NVIDIA GPU Device Plugin RDMA Shared Device Plugin + 1111 false false provisioning k8s 2021-01-29 16:02:02 +0000 UTC 0001-01-01 00:00:00 +0000 UTC pool-test false false false false false false false ` projectsResourcesListKubernetesOutput = `