Merge pull request #132942 from thockin/kyaml

Add KYAML support to kubectl

Kubernetes-commit: 1451dd1b0873e801e082f3a06a52685bcd68dcac
This commit is contained in:
Kubernetes Publisher 2025-07-24 17:59:06 -07:00
commit 8185d35b7a
3 changed files with 30 additions and 24 deletions

16
go.mod
View File

@ -29,22 +29,22 @@ require (
go.yaml.in/yaml/v2 v2.4.2
golang.org/x/sys v0.31.0
gopkg.in/evanphx/json-patch.v4 v4.12.0
k8s.io/api v0.0.0-20250725024533-ed2eb37e36f7
k8s.io/apimachinery v0.0.0-20250724224258-50e39b11cd32
k8s.io/cli-runtime v0.0.0-20250724232152-a50ecb189e96
k8s.io/client-go v0.0.0-20250725024913-6314d905defd
k8s.io/component-base v0.0.0-20250724225857-f959b0363667
k8s.io/component-helpers v0.0.0-20250724230016-ceaf0fbd25fe
k8s.io/api v0.0.0-20250725024535-b95b43d5b95d
k8s.io/apimachinery v0.0.0-20250725024258-04507a37f6a4
k8s.io/cli-runtime v0.0.0-20250725032234-4ef9d6338b92
k8s.io/client-go v0.0.0-20250725024918-f78361a6474d
k8s.io/component-base v0.0.0-20250725025923-b9f1c2d98961
k8s.io/component-helpers v0.0.0-20250725030049-f50e498bf4cb
k8s.io/klog/v2 v2.130.1
k8s.io/kube-openapi v0.0.0-20250710124328-f3f2b991d03b
k8s.io/metrics v0.0.0-20250724232020-3186c8048013
k8s.io/metrics v0.0.0-20250725032103-4d7234291ae2
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8
sigs.k8s.io/kustomize/kustomize/v5 v5.7.1
sigs.k8s.io/kustomize/kyaml v0.20.1
sigs.k8s.io/randfill v1.0.0
sigs.k8s.io/structured-merge-diff/v6 v6.3.0
sigs.k8s.io/yaml v1.5.0
sigs.k8s.io/yaml v1.6.0
)
require (

32
go.sum
View File

@ -198,24 +198,24 @@ gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
k8s.io/api v0.0.0-20250725024533-ed2eb37e36f7 h1:pignGgNAV6vmwxzdSNqBSbV5Z/ZGZSmQ9rdKwM9tgvU=
k8s.io/api v0.0.0-20250725024533-ed2eb37e36f7/go.mod h1:h7pQu2oCQ3ccFA95Gaxuu7JO+0gHm6uxdKA4dLNL3Y8=
k8s.io/apimachinery v0.0.0-20250724224258-50e39b11cd32 h1:XbDM37tJSNp0ga7QZkizY+qxKJEA0DFe+nqssKruths=
k8s.io/apimachinery v0.0.0-20250724224258-50e39b11cd32/go.mod h1:mjSAX6740hY31nMwwbFVIcjVaXzV46iZzqDA+UfugZ8=
k8s.io/cli-runtime v0.0.0-20250724232152-a50ecb189e96 h1:wXwUNtvnAjVTwXW6HGCPs0UtCPK1/Dc1X448cKnclj4=
k8s.io/cli-runtime v0.0.0-20250724232152-a50ecb189e96/go.mod h1:t7nudnRsSpgTh44qn/xa1Y6rqwe3KcgN5hwEXEE17M4=
k8s.io/client-go v0.0.0-20250725024913-6314d905defd h1:j/vHpP95HSG+UbK+flgfRSOLIbLsf2oP40cO647d/a8=
k8s.io/client-go v0.0.0-20250725024913-6314d905defd/go.mod h1:gyHUTPg2qWbNQYBEv+xZ6ymlwEelbEKLkxTFHLCBwO0=
k8s.io/component-base v0.0.0-20250724225857-f959b0363667 h1:pvV8NZOWqqWnHImbEtFPHt7aFoftkCKdq4X51FyljYQ=
k8s.io/component-base v0.0.0-20250724225857-f959b0363667/go.mod h1:NvVHWk6xTUvLtRliMjw4pSxyp6yOFSyp8FfdbFWdM6E=
k8s.io/component-helpers v0.0.0-20250724230016-ceaf0fbd25fe h1:g0GPZiJBWQPuy5/NObFjAUO6jgPSV+FCUwqHVAf+hEE=
k8s.io/component-helpers v0.0.0-20250724230016-ceaf0fbd25fe/go.mod h1:HOtbdp38KeD9lMcRaU7AOVR+ZnTcTBSoQ90b41Z0C84=
k8s.io/api v0.0.0-20250725024535-b95b43d5b95d h1:OdC1L69BYvh/4HX6Wgg7DeL0A++gD3gadKfaWT4IdbA=
k8s.io/api v0.0.0-20250725024535-b95b43d5b95d/go.mod h1:wKZv1VB6nzJ6L449TteVelrBfRsawhrthiOsEylKo8U=
k8s.io/apimachinery v0.0.0-20250725024258-04507a37f6a4 h1:N25HX4lRPTvLHSUPoCMFP+B/oEcOmPESB+BRkYMD8Io=
k8s.io/apimachinery v0.0.0-20250725024258-04507a37f6a4/go.mod h1:/GwIlEcWuTX9zKIg2mbw0LRFIsXwrfoVxn+ef0X13lw=
k8s.io/cli-runtime v0.0.0-20250725032234-4ef9d6338b92 h1:RdOB0Lh+NyJmf7AonSc+L7yqokyDAXJ81qmSs0TtHUw=
k8s.io/cli-runtime v0.0.0-20250725032234-4ef9d6338b92/go.mod h1:1tVpyR8K/bn6FWi+8E38u97eWqhBRZb07NprI1o/rdY=
k8s.io/client-go v0.0.0-20250725024918-f78361a6474d h1:8i9q3fd352G8FsurDLj4++5oMS4gWqZ5O2lErveG9Ok=
k8s.io/client-go v0.0.0-20250725024918-f78361a6474d/go.mod h1:j4aKw1XACZSFUnRBqWNU0d3TXbXzaBhAbazCrGTYHdg=
k8s.io/component-base v0.0.0-20250725025923-b9f1c2d98961 h1:gWZcTfCQXU9F1Yqzs0dRUxDKI6fxb+1hqrzd8XAP8y0=
k8s.io/component-base v0.0.0-20250725025923-b9f1c2d98961/go.mod h1:+EKWDhmrFYENWq8vZZtJ9DvxEebCdVtSK4MGTw6CDuE=
k8s.io/component-helpers v0.0.0-20250725030049-f50e498bf4cb h1:o6hsldkBW9pDOMkRD83FCzIhV3umWyniqr3jfoTwRhA=
k8s.io/component-helpers v0.0.0-20250725030049-f50e498bf4cb/go.mod h1:2GQI4QDHdIY75ammFd3kBExbETgetCR7ZOGEuZtwAgE=
k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk=
k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE=
k8s.io/kube-openapi v0.0.0-20250710124328-f3f2b991d03b h1:MloQ9/bdJyIu9lb1PzujOPolHyvO06MXG5TUIj2mNAA=
k8s.io/kube-openapi v0.0.0-20250710124328-f3f2b991d03b/go.mod h1:UZ2yyWbFTpuhSbFhv24aGNOdoRdJZgsIObGBUaYVsts=
k8s.io/metrics v0.0.0-20250724232020-3186c8048013 h1:ERmFDWzJBhwuGZYJz85C31lPQ0boaP/dulR/1Easu4w=
k8s.io/metrics v0.0.0-20250724232020-3186c8048013/go.mod h1:3rbwSKIT2H+DH0RjgF2AxR5K5oDukvyCEerBmHodvOs=
k8s.io/metrics v0.0.0-20250725032103-4d7234291ae2 h1:ClXmZHyqm8xtoVhj5E4au3TaqDxEuC2EqDoUouJvVC4=
k8s.io/metrics v0.0.0-20250725032103-4d7234291ae2/go.mod h1:OOYryEbeiszIzWX/KP2G8+HFXQURdZkIODzfc7Gjwsc=
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397 h1:hwvWFiBzdWw1FhfY1FooPn3kzWuJ8tmbZBHi4zVsl1Y=
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 h1:gBQPwqORJ8d8/YNZWEjoZs7npUVDpVXUUOFfW6CgAqE=
@ -230,5 +230,5 @@ sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU=
sigs.k8s.io/randfill v1.0.0/go.mod h1:XeLlZ/jmk4i1HRopwe7/aU3H5n1zNUcX6TM94b3QxOY=
sigs.k8s.io/structured-merge-diff/v6 v6.3.0 h1:jTijUJbW353oVOd9oTlifJqOGEkUw2jB/fXCbTiQEco=
sigs.k8s.io/structured-merge-diff/v6 v6.3.0/go.mod h1:M3W8sfWvn2HhQDIbGWj3S099YozAsymCo/wrT5ohRUE=
sigs.k8s.io/yaml v1.5.0 h1:M10b2U7aEUY6hRtU870n2VTPgR5RZiL/I6Lcc2F4NUQ=
sigs.k8s.io/yaml v1.5.0/go.mod h1:wZs27Rbxoai4C0f8/9urLZtZtF3avA3gKvGyPdDqTO4=
sigs.k8s.io/yaml v1.6.0 h1:G8fkbMSAFqgEFgh4b1wmtzDnioxFCUgTZhlbj5P9QYs=
sigs.k8s.io/yaml v1.6.0/go.mod h1:796bPqUfzR/0jLAl6XjHl3Ck7MiyVv8dbTdyT3/pMf4=

View File

@ -455,6 +455,12 @@ const (
// Transition to WebSockets.
RemoteCommandWebsockets FeatureGate = "KUBECTL_REMOTE_COMMAND_WEBSOCKETS"
PortForwardWebsockets FeatureGate = "KUBECTL_PORT_FORWARD_WEBSOCKETS"
// owner: @thockin
// kep: https://kep.k8s.io/5296
//
// Support KYAML output.
KYAMLOutput FeatureGate = "KUBECTL_KYAML"
)
// IsEnabled returns true iff environment variable is set to true.