Use sigs.k8s.io/yaml instead of gopkg.in/yaml

Since we have a Kubernetes-specific fork of go-yaml, use that
consistently throughout the project. This doesn't eliminate the
dependencies on gopkg.in/yaml, which are still used indirectly; but it
ensures that the whole project benefits from fixes or changes to
sigs.k8s.io/yaml.

Signed-off-by: Stephen Kitt <skitt@redhat.com>
This commit is contained in:
Stephen Kitt 2024-10-07 14:27:52 +02:00
parent aca3214a70
commit f1fa4086b3
No known key found for this signature in database
GPG Key ID: 1CC5FA453662A71D
27 changed files with 33 additions and 34 deletions

View File

@ -25,10 +25,11 @@ import (
"github.com/spf13/cobra" "github.com/spf13/cobra"
"github.com/spf13/pflag" "github.com/spf13/pflag"
"gopkg.in/yaml.v2"
"k8s.io/cli-runtime/pkg/genericiooptions" "k8s.io/cli-runtime/pkg/genericiooptions"
"k8s.io/kubectl/pkg/cmd" "k8s.io/kubectl/pkg/cmd"
"k8s.io/kubernetes/cmd/genutils" "k8s.io/kubernetes/cmd/genutils"
yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
type cmdOption struct { type cmdOption struct {

View File

@ -27,7 +27,7 @@ import (
"path/filepath" "path/filepath"
"strings" "strings"
"gopkg.in/yaml.v2" yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
// Package is a subset of cmd/go.Package // Package is a subset of cmd/go.Package

View File

@ -24,11 +24,11 @@ import (
"time" "time"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"gopkg.in/yaml.v2"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/kubernetes/cmd/kubelet/app/options" "k8s.io/kubernetes/cmd/kubelet/app/options"
kubeletconfiginternal "k8s.io/kubernetes/pkg/kubelet/apis/config" kubeletconfiginternal "k8s.io/kubernetes/pkg/kubelet/apis/config"
yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
func TestValueOfAllocatableResources(t *testing.T) { func TestValueOfAllocatableResources(t *testing.T) {

View File

@ -22,7 +22,7 @@ import (
"io" "io"
"os" "os"
"gopkg.in/yaml.v3" yaml "sigs.k8s.io/yaml/goyaml.v3"
) )
func main() { func main() {

4
go.mod
View File

@ -86,8 +86,6 @@ require (
google.golang.org/protobuf v1.34.2 google.golang.org/protobuf v1.34.2
gopkg.in/evanphx/json-patch.v4 v4.12.0 gopkg.in/evanphx/json-patch.v4 v4.12.0
gopkg.in/square/go-jose.v2 v2.6.0 gopkg.in/square/go-jose.v2 v2.6.0
gopkg.in/yaml.v2 v2.4.0
gopkg.in/yaml.v3 v3.0.1
k8s.io/api v0.0.0 k8s.io/api v0.0.0
k8s.io/apiextensions-apiserver v0.0.0 k8s.io/apiextensions-apiserver v0.0.0
k8s.io/apimachinery v0.0.0 k8s.io/apimachinery v0.0.0
@ -221,6 +219,8 @@ require (
google.golang.org/genproto/googleapis/api v0.0.0-20240528184218-531527333157 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20240528184218-531527333157 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
k8s.io/gengo/v2 v2.0.0-20240911193312-2b36238f13e9 // indirect k8s.io/gengo/v2 v2.0.0-20240911193312-2b36238f13e9 // indirect
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3 // indirect sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3 // indirect
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect

View File

@ -24,7 +24,6 @@ require (
google.golang.org/grpc v1.65.0 google.golang.org/grpc v1.65.0
google.golang.org/protobuf v1.34.2 google.golang.org/protobuf v1.34.2
gopkg.in/evanphx/json-patch.v4 v4.12.0 gopkg.in/evanphx/json-patch.v4 v4.12.0
gopkg.in/yaml.v2 v2.4.0
k8s.io/api v0.0.0 k8s.io/api v0.0.0
k8s.io/apimachinery v0.0.0 k8s.io/apimachinery v0.0.0
k8s.io/apiserver v0.0.0 k8s.io/apiserver v0.0.0
@ -121,6 +120,7 @@ require (
google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094 // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect
k8s.io/gengo/v2 v2.0.0-20240911193312-2b36238f13e9 // indirect k8s.io/gengo/v2 v2.0.0-20240911193312-2b36238f13e9 // indirect
k8s.io/kms v0.0.0 // indirect k8s.io/kms v0.0.0 // indirect

View File

@ -28,7 +28,6 @@ import (
openapi_v2 "github.com/google/gnostic-models/openapiv2" openapi_v2 "github.com/google/gnostic-models/openapiv2"
"github.com/google/go-cmp/cmp" "github.com/google/go-cmp/cmp"
fuzz "github.com/google/gofuzz" fuzz "github.com/google/gofuzz"
"gopkg.in/yaml.v2"
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions" "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions"
apiextensionsv1beta1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1" apiextensionsv1beta1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1"
@ -36,6 +35,7 @@ import (
"k8s.io/kube-openapi/pkg/util/proto" "k8s.io/kube-openapi/pkg/util/proto"
"k8s.io/kube-openapi/pkg/validation/spec" "k8s.io/kube-openapi/pkg/validation/spec"
"k8s.io/utils/pointer" "k8s.io/utils/pointer"
yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
func Test_ConvertJSONSchemaPropsToOpenAPIv2Schema(t *testing.T) { func Test_ConvertJSONSchemaPropsToOpenAPIv2Schema(t *testing.T) {

View File

@ -18,7 +18,6 @@ require (
golang.org/x/sync v0.8.0 golang.org/x/sync v0.8.0
golang.org/x/text v0.17.0 golang.org/x/text v0.17.0
gopkg.in/evanphx/json-patch.v4 v4.12.0 gopkg.in/evanphx/json-patch.v4 v4.12.0
gopkg.in/yaml.v2 v2.4.0
k8s.io/api v0.0.0 k8s.io/api v0.0.0
k8s.io/apimachinery v0.0.0 k8s.io/apimachinery v0.0.0
k8s.io/client-go v0.0.0 k8s.io/client-go v0.0.0
@ -68,6 +67,7 @@ require (
golang.org/x/time v0.3.0 // indirect golang.org/x/time v0.3.0 // indirect
google.golang.org/protobuf v1.34.2 // indirect google.golang.org/protobuf v1.34.2 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect

View File

@ -21,11 +21,11 @@ import (
"fmt" "fmt"
openapi_v2 "github.com/google/gnostic-models/openapiv2" openapi_v2 "github.com/google/gnostic-models/openapiv2"
yaml "gopkg.in/yaml.v2"
"k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/client-go/discovery" "k8s.io/client-go/discovery"
"k8s.io/client-go/dynamic" "k8s.io/client-go/dynamic"
yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
func NewQueryParamVerifier(dynamicClient dynamic.Interface, openAPIGetter discovery.OpenAPISchemaInterface, queryParam VerifiableQueryParam) *QueryParamVerifier { func NewQueryParamVerifier(dynamicClient dynamic.Interface, openAPIGetter discovery.OpenAPISchemaInterface, queryParam VerifiableQueryParam) *QueryParamVerifier {

View File

@ -19,13 +19,11 @@ package generators
import ( import (
"io" "io"
"gopkg.in/yaml.v2"
"k8s.io/kube-openapi/pkg/schemaconv"
"k8s.io/gengo/v2/generator" "k8s.io/gengo/v2/generator"
"k8s.io/gengo/v2/namer" "k8s.io/gengo/v2/namer"
"k8s.io/gengo/v2/types" "k8s.io/gengo/v2/types"
"k8s.io/kube-openapi/pkg/schemaconv"
yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
// utilGenerator generates the ForKind() utility function. // utilGenerator generates the ForKind() utility function.

View File

@ -14,11 +14,11 @@ require (
github.com/google/gofuzz v1.2.0 github.com/google/gofuzz v1.2.0
github.com/spf13/pflag v1.0.5 github.com/spf13/pflag v1.0.5
golang.org/x/text v0.17.0 golang.org/x/text v0.17.0
gopkg.in/yaml.v2 v2.4.0
k8s.io/apimachinery v0.0.0 k8s.io/apimachinery v0.0.0
k8s.io/gengo/v2 v2.0.0-20240911193312-2b36238f13e9 k8s.io/gengo/v2 v2.0.0-20240911193312-2b36238f13e9
k8s.io/klog/v2 v2.130.1 k8s.io/klog/v2 v2.130.1
k8s.io/kube-openapi v0.0.0-20240827152857-f7e401e7b4c2 k8s.io/kube-openapi v0.0.0-20240827152857-f7e401e7b4c2
sigs.k8s.io/yaml v1.4.0
) )
require ( require (
@ -39,6 +39,7 @@ require (
golang.org/x/sync v0.8.0 // indirect golang.org/x/sync v0.8.0 // indirect
golang.org/x/tools v0.24.0 // indirect golang.org/x/tools v0.24.0 // indirect
google.golang.org/protobuf v1.34.2 // indirect google.golang.org/protobuf v1.34.2 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect

View File

@ -26,12 +26,12 @@ require (
go.opentelemetry.io/otel/trace v1.28.0 go.opentelemetry.io/otel/trace v1.28.0
go.uber.org/zap v1.27.0 go.uber.org/zap v1.27.0
golang.org/x/sys v0.23.0 golang.org/x/sys v0.23.0
gopkg.in/yaml.v2 v2.4.0
k8s.io/apimachinery v0.0.0 k8s.io/apimachinery v0.0.0
k8s.io/client-go v0.0.0 k8s.io/client-go v0.0.0
k8s.io/klog/v2 v2.130.1 k8s.io/klog/v2 v2.130.1
k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 k8s.io/utils v0.0.0-20240711033017-18e509b52bc8
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd
sigs.k8s.io/yaml v1.4.0
) )
require ( require (
@ -76,11 +76,11 @@ require (
google.golang.org/grpc v1.65.0 // indirect google.golang.org/grpc v1.65.0 // indirect
google.golang.org/protobuf v1.34.2 // indirect google.golang.org/protobuf v1.34.2 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect
k8s.io/api v0.0.0 // indirect k8s.io/api v0.0.0 // indirect
k8s.io/kube-openapi v0.0.0-20240827152857-f7e401e7b4c2 // indirect k8s.io/kube-openapi v0.0.0-20240827152857-f7e401e7b4c2 // indirect
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect
sigs.k8s.io/yaml v1.4.0 // indirect
) )
replace ( replace (

View File

@ -25,11 +25,11 @@ import (
"time" "time"
"github.com/prometheus/client_golang/prometheus" "github.com/prometheus/client_golang/prometheus"
"gopkg.in/yaml.v2"
"k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/sets"
promext "k8s.io/component-base/metrics/prometheusextension" promext "k8s.io/component-base/metrics/prometheusextension"
"k8s.io/klog/v2" "k8s.io/klog/v2"
yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
var ( var (

View File

@ -76,6 +76,7 @@ require (
k8s.io/kube-openapi v0.0.0-20240827152857-f7e401e7b4c2 // indirect k8s.io/kube-openapi v0.0.0-20240827152857-f7e401e7b4c2 // indirect
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect
sigs.k8s.io/yaml v1.4.0 // indirect
) )
replace ( replace (

View File

@ -30,7 +30,6 @@ require (
github.com/stretchr/testify v1.9.0 github.com/stretchr/testify v1.9.0
golang.org/x/sys v0.23.0 golang.org/x/sys v0.23.0
gopkg.in/evanphx/json-patch.v4 v4.12.0 gopkg.in/evanphx/json-patch.v4 v4.12.0
gopkg.in/yaml.v2 v2.4.0
k8s.io/api v0.0.0 k8s.io/api v0.0.0
k8s.io/apimachinery v0.0.0 k8s.io/apimachinery v0.0.0
k8s.io/cli-runtime v0.0.0 k8s.io/cli-runtime v0.0.0
@ -93,6 +92,7 @@ require (
golang.org/x/tools v0.24.0 // indirect golang.org/x/tools v0.24.0 // indirect
google.golang.org/protobuf v1.34.2 // indirect google.golang.org/protobuf v1.34.2 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect
sigs.k8s.io/kustomize/api v0.17.2 // indirect sigs.k8s.io/kustomize/api v0.17.2 // indirect
) )

View File

@ -30,8 +30,6 @@ import (
"github.com/google/go-cmp/cmp" "github.com/google/go-cmp/cmp"
"github.com/spf13/cobra" "github.com/spf13/cobra"
yaml "gopkg.in/yaml.v2"
"k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/sets"
"k8s.io/cli-runtime/pkg/genericiooptions" "k8s.io/cli-runtime/pkg/genericiooptions"
@ -41,6 +39,7 @@ import (
"k8s.io/kubectl/pkg/cmd/create" "k8s.io/kubectl/pkg/cmd/create"
cmdtesting "k8s.io/kubectl/pkg/cmd/testing" cmdtesting "k8s.io/kubectl/pkg/cmd/testing"
cmdutil "k8s.io/kubectl/pkg/cmd/util" cmdutil "k8s.io/kubectl/pkg/cmd/util"
yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
type EditTestCase struct { type EditTestCase struct {

View File

@ -25,7 +25,7 @@ import (
"os" "os"
"strings" "strings"
yaml "gopkg.in/yaml.v2" yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
type EditTestCase struct { type EditTestCase struct {

View File

@ -31,9 +31,9 @@ import (
"strings" "strings"
"text/template" "text/template"
"gopkg.in/yaml.v2"
"github.com/onsi/ginkgo/v2/types" "github.com/onsi/ginkgo/v2/types"
yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
// ConformanceData describes the structure of the conformance.yaml file // ConformanceData describes the structure of the conformance.yaml file

View File

@ -24,7 +24,7 @@ import (
"testing" "testing"
"github.com/onsi/ginkgo/v2" "github.com/onsi/ginkgo/v2"
"gopkg.in/yaml.v2" yaml "sigs.k8s.io/yaml/goyaml.v2"
// Never, ever remove the line with "/ginkgo". Without it, // Never, ever remove the line with "/ginkgo". Without it,
// the ginkgo test runner will not detect that this // the ginkgo test runner will not detect that this

View File

@ -35,7 +35,6 @@ rules:
- selectorRegexp: ^github.com/|^gopkg.in - selectorRegexp: ^github.com/|^gopkg.in
allowedPrefixes: [ allowedPrefixes: [
"gopkg.in/inf.v0", "gopkg.in/inf.v0",
"gopkg.in/yaml.v2",
"gopkg.in/evanphx/json-patch.v4", "gopkg.in/evanphx/json-patch.v4",
"github.com/blang/semver/", "github.com/blang/semver/",
"github.com/davecgh/go-spew/spew", "github.com/davecgh/go-spew/spew",

View File

@ -19,12 +19,12 @@ package kubeadm
import ( import (
"context" "context"
"gopkg.in/yaml.v2"
authv1 "k8s.io/api/authorization/v1" authv1 "k8s.io/api/authorization/v1"
rbacv1 "k8s.io/api/rbac/v1" rbacv1 "k8s.io/api/rbac/v1"
clientset "k8s.io/client-go/kubernetes" clientset "k8s.io/client-go/kubernetes"
"k8s.io/kubernetes/test/e2e/framework" "k8s.io/kubernetes/test/e2e/framework"
admissionapi "k8s.io/pod-security-admission/api" admissionapi "k8s.io/pod-security-admission/api"
yaml "sigs.k8s.io/yaml/goyaml.v2"
"github.com/onsi/ginkgo/v2" "github.com/onsi/ginkgo/v2"
"github.com/onsi/gomega" "github.com/onsi/gomega"

View File

@ -29,9 +29,9 @@ import (
"github.com/google/go-cmp/cmp" "github.com/google/go-cmp/cmp"
"github.com/spf13/cobra" "github.com/spf13/cobra"
"gopkg.in/yaml.v2"
"k8s.io/apimachinery/pkg/util/version" "k8s.io/apimachinery/pkg/util/version"
yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
var ( var (

View File

@ -23,9 +23,9 @@ import (
"fmt" "fmt"
"strings" "strings"
"gopkg.in/yaml.v2"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
sigyaml "sigs.k8s.io/yaml" sigyaml "sigs.k8s.io/yaml"
yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
// FuzzDurationStrict is a fuzz target for strict-unmarshaling Duration defined // FuzzDurationStrict is a fuzz target for strict-unmarshaling Duration defined
@ -126,7 +126,7 @@ func FuzzTimeStrict(b []byte) int {
return 1 return 1
} }
// FuzzYamlV2 is a fuzz target for "gopkg.in/yaml.v2" unmarshaling. // FuzzYamlV2 is a fuzz target for "sigs.k8s.io/yaml/goyaml.v2" unmarshaling.
func FuzzYamlV2(b []byte) int { func FuzzYamlV2(b []byte) int {
t := struct{}{} t := struct{}{}
m := map[string]interface{}{} m := map[string]interface{}{}

View File

@ -26,9 +26,9 @@ import (
"time" "time"
flag "github.com/spf13/pflag" flag "github.com/spf13/pflag"
"gopkg.in/yaml.v2"
"k8s.io/component-base/metrics" "k8s.io/component-base/metrics"
yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
var ( var (

View File

@ -31,7 +31,7 @@ import (
"strconv" "strconv"
"strings" "strings"
"gopkg.in/yaml.v2" yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
const ( const (

View File

@ -22,8 +22,8 @@ import (
"sort" "sort"
flag "github.com/spf13/pflag" flag "github.com/spf13/pflag"
"gopkg.in/yaml.v2"
"k8s.io/component-base/metrics" "k8s.io/component-base/metrics"
yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
func main() { func main() {

View File

@ -28,7 +28,7 @@ import (
"regexp" "regexp"
"strings" "strings"
"gopkg.in/yaml.v2" yaml "sigs.k8s.io/yaml/goyaml.v2"
) )
// RegistryList holds public and private image registries // RegistryList holds public and private image registries