mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-26 21:17:23 +00:00
make register.GroupVersion use GroupVersion
This commit is contained in:
parent
4fd6b6df06
commit
5077e9b644
@ -30,7 +30,6 @@ import (
|
|||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
"k8s.io/kubernetes/pkg/api/meta"
|
"k8s.io/kubernetes/pkg/api/meta"
|
||||||
"k8s.io/kubernetes/pkg/api/registered"
|
"k8s.io/kubernetes/pkg/api/registered"
|
||||||
apiutil "k8s.io/kubernetes/pkg/api/util"
|
|
||||||
"k8s.io/kubernetes/pkg/api/v1"
|
"k8s.io/kubernetes/pkg/api/v1"
|
||||||
"k8s.io/kubernetes/pkg/runtime"
|
"k8s.io/kubernetes/pkg/runtime"
|
||||||
)
|
)
|
||||||
@ -52,16 +51,16 @@ func init() {
|
|||||||
registeredGroupVersions := registered.GroupVersionsForGroup("")
|
registeredGroupVersions := registered.GroupVersionsForGroup("")
|
||||||
groupVersion := registeredGroupVersions[0]
|
groupVersion := registeredGroupVersions[0]
|
||||||
*groupMeta = latest.GroupMeta{
|
*groupMeta = latest.GroupMeta{
|
||||||
GroupVersion: groupVersion,
|
GroupVersion: groupVersion.String(),
|
||||||
Group: apiutil.GetGroup(groupVersion),
|
Group: groupVersion.Group,
|
||||||
Version: apiutil.GetVersion(groupVersion),
|
Version: groupVersion.Version,
|
||||||
Codec: runtime.CodecFor(api.Scheme, groupVersion),
|
Codec: runtime.CodecFor(api.Scheme, groupVersion.String()),
|
||||||
}
|
}
|
||||||
var versions []string
|
var versions []string
|
||||||
var groupVersions []string
|
var groupVersions []string
|
||||||
for i := len(registeredGroupVersions) - 1; i >= 0; i-- {
|
for i := len(registeredGroupVersions) - 1; i >= 0; i-- {
|
||||||
versions = append(versions, apiutil.GetVersion(registeredGroupVersions[i]))
|
versions = append(versions, registeredGroupVersions[i].Version)
|
||||||
groupVersions = append(groupVersions, registeredGroupVersions[i])
|
groupVersions = append(groupVersions, registeredGroupVersions[i].String())
|
||||||
}
|
}
|
||||||
groupMeta.Versions = versions
|
groupMeta.Versions = versions
|
||||||
groupMeta.GroupVersions = groupVersions
|
groupMeta.GroupVersions = groupVersions
|
||||||
|
@ -22,46 +22,60 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/golang/glog"
|
"github.com/golang/glog"
|
||||||
apiutil "k8s.io/kubernetes/pkg/api/util"
|
"k8s.io/kubernetes/pkg/api/unversioned"
|
||||||
)
|
)
|
||||||
|
|
||||||
// List of registered API versions.
|
// List of registered API versions.
|
||||||
// The list is in the order of most preferred to the least.
|
// The list is in the order of most preferred to the least.
|
||||||
var RegisteredVersions []string
|
var RegisteredGroupVersions []unversioned.GroupVersion
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
validGroupVersions := map[string]bool{
|
validGroupVersions := map[unversioned.GroupVersion]bool{
|
||||||
"v1": true,
|
unversioned.GroupVersion{Group: "", Version: "v1"}: true,
|
||||||
"extensions/v1beta1": true,
|
unversioned.GroupVersion{Group: "extensions", Version: "v1beta1"}: true,
|
||||||
"componentconfig/v1alpha1": true,
|
unversioned.GroupVersion{Group: "componentconfig", Version: "v1alpha1"}: true,
|
||||||
"metrics/v1alpha1": true,
|
unversioned.GroupVersion{Group: "metrics", Version: "v1alpha1"}: true,
|
||||||
}
|
}
|
||||||
|
|
||||||
// The default list of supported api versions, in order of most preferred to the least.
|
// The default list of supported api versions, in order of most preferred to the least.
|
||||||
defaultSupportedVersions := "v1,extensions/v1beta1,componentconfig/v1alpha1"
|
supportedVersions := []unversioned.GroupVersion{
|
||||||
|
{Group: "", Version: "v1"},
|
||||||
|
{Group: "extensions", Version: "v1beta1"},
|
||||||
|
{Group: "componentconfig", Version: "v1alpha1"},
|
||||||
|
}
|
||||||
|
|
||||||
// Env var KUBE_API_VERSIONS is a comma separated list of API versions that should be registered in the scheme.
|
// Env var KUBE_API_VERSIONS is a comma separated list of API versions that should be registered in the scheme.
|
||||||
// The versions should be in the order of most preferred to the least.
|
// The versions should be in the order of most preferred to the least.
|
||||||
supportedVersions := os.Getenv("KUBE_API_VERSIONS")
|
userRequestedVersions := os.Getenv("KUBE_API_VERSIONS")
|
||||||
if supportedVersions == "" {
|
if len(userRequestedVersions) != 0 {
|
||||||
supportedVersions = defaultSupportedVersions
|
// reset the supported versions
|
||||||
|
supportedVersions = []unversioned.GroupVersion{}
|
||||||
|
for _, version := range strings.Split(userRequestedVersions, ",") {
|
||||||
|
gv, err := unversioned.ParseGroupVersion(version)
|
||||||
|
if err != nil {
|
||||||
|
glog.Fatalf("invalid api version: %s in KUBE_API_VERSIONS: %s. List of valid API versions: %v",
|
||||||
|
version, os.Getenv("KUBE_API_VERSIONS"), validGroupVersions)
|
||||||
}
|
}
|
||||||
versions := strings.Split(supportedVersions, ",")
|
|
||||||
for _, version := range versions {
|
|
||||||
// Verify that the version is valid.
|
// Verify that the version is valid.
|
||||||
valid, ok := validGroupVersions[version]
|
valid, ok := validGroupVersions[gv]
|
||||||
if !ok || !valid {
|
if !ok || !valid {
|
||||||
// Not a valid API version.
|
// Not a valid API version.
|
||||||
glog.Fatalf("invalid api version: %s in KUBE_API_VERSIONS: %s. List of valid API versions: %v",
|
glog.Fatalf("invalid api version: %s in KUBE_API_VERSIONS: %s. List of valid API versions: %v",
|
||||||
version, os.Getenv("KUBE_API_VERSIONS"), validGroupVersions)
|
version, os.Getenv("KUBE_API_VERSIONS"), validGroupVersions)
|
||||||
}
|
}
|
||||||
RegisteredVersions = append(RegisteredVersions, version)
|
|
||||||
|
supportedVersions = append(supportedVersions, gv)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
RegisteredGroupVersions = supportedVersions
|
||||||
}
|
}
|
||||||
|
|
||||||
// Returns true if the given api version is one of the registered api versions.
|
// Returns true if the given api version is one of the registered api versions.
|
||||||
func IsRegisteredAPIVersion(version string) bool {
|
func IsRegisteredAPIGroupVersion(gv unversioned.GroupVersion) bool {
|
||||||
for _, apiVersion := range RegisteredVersions {
|
for _, currGV := range RegisteredGroupVersions {
|
||||||
if apiVersion == version {
|
if currGV == gv {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -70,10 +84,10 @@ func IsRegisteredAPIVersion(version string) bool {
|
|||||||
|
|
||||||
// GroupVersionsForGroup returns the registered versions of a group in the form
|
// GroupVersionsForGroup returns the registered versions of a group in the form
|
||||||
// of "group/version".
|
// of "group/version".
|
||||||
func GroupVersionsForGroup(group string) []string {
|
func GroupVersionsForGroup(group string) []unversioned.GroupVersion {
|
||||||
ret := []string{}
|
ret := []unversioned.GroupVersion{}
|
||||||
for _, v := range RegisteredVersions {
|
for _, v := range RegisteredGroupVersions {
|
||||||
if apiutil.GetGroup(v) == group {
|
if v.Group == group {
|
||||||
ret = append(ret, v)
|
ret = append(ret, v)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -284,9 +284,9 @@ func FuzzerFor(t *testing.T, version string, src rand.Source) *fuzz.Fuzzer {
|
|||||||
ev.ValueFrom = &api.EnvVarSource{}
|
ev.ValueFrom = &api.EnvVarSource{}
|
||||||
ev.ValueFrom.FieldRef = &api.ObjectFieldSelector{}
|
ev.ValueFrom.FieldRef = &api.ObjectFieldSelector{}
|
||||||
|
|
||||||
versions := registered.RegisteredVersions
|
versions := registered.RegisteredGroupVersions
|
||||||
|
|
||||||
ev.ValueFrom.FieldRef.APIVersion = versions[c.Rand.Intn(len(versions))]
|
ev.ValueFrom.FieldRef.APIVersion = versions[c.Rand.Intn(len(versions))].String()
|
||||||
ev.ValueFrom.FieldRef.FieldPath = c.RandString()
|
ev.ValueFrom.FieldRef.FieldPath = c.RandString()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -28,7 +28,7 @@ var Codec = runtime.CodecFor(api.Scheme, "v1")
|
|||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
// Check if v1 is in the list of supported API versions.
|
// Check if v1 is in the list of supported API versions.
|
||||||
if !registered.IsRegisteredAPIVersion("v1") {
|
if !registered.IsRegisteredAPIGroupVersion(unversioned.GroupVersion{Group: "", Version: "v1"}) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -28,7 +28,6 @@ import (
|
|||||||
"k8s.io/kubernetes/pkg/api/latest"
|
"k8s.io/kubernetes/pkg/api/latest"
|
||||||
"k8s.io/kubernetes/pkg/api/meta"
|
"k8s.io/kubernetes/pkg/api/meta"
|
||||||
"k8s.io/kubernetes/pkg/api/registered"
|
"k8s.io/kubernetes/pkg/api/registered"
|
||||||
apiutil "k8s.io/kubernetes/pkg/api/util"
|
|
||||||
_ "k8s.io/kubernetes/pkg/apis/componentconfig"
|
_ "k8s.io/kubernetes/pkg/apis/componentconfig"
|
||||||
"k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1"
|
"k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1"
|
||||||
"k8s.io/kubernetes/pkg/runtime"
|
"k8s.io/kubernetes/pkg/runtime"
|
||||||
@ -48,16 +47,16 @@ func init() {
|
|||||||
registeredGroupVersions := registered.GroupVersionsForGroup("componentconfig")
|
registeredGroupVersions := registered.GroupVersionsForGroup("componentconfig")
|
||||||
groupVersion := registeredGroupVersions[0]
|
groupVersion := registeredGroupVersions[0]
|
||||||
*groupMeta = latest.GroupMeta{
|
*groupMeta = latest.GroupMeta{
|
||||||
GroupVersion: groupVersion,
|
GroupVersion: groupVersion.String(),
|
||||||
Group: apiutil.GetGroup(groupVersion),
|
Group: groupVersion.Group,
|
||||||
Version: apiutil.GetVersion(groupVersion),
|
Version: groupVersion.Version,
|
||||||
Codec: runtime.CodecFor(api.Scheme, groupVersion),
|
Codec: runtime.CodecFor(api.Scheme, groupVersion.String()),
|
||||||
}
|
}
|
||||||
var versions []string
|
var versions []string
|
||||||
var groupVersions []string
|
var groupVersions []string
|
||||||
for i := len(registeredGroupVersions) - 1; i >= 0; i-- {
|
for i := len(registeredGroupVersions) - 1; i >= 0; i-- {
|
||||||
versions = append(versions, apiutil.GetVersion(registeredGroupVersions[i]))
|
versions = append(versions, registeredGroupVersions[i].Version)
|
||||||
groupVersions = append(groupVersions, registeredGroupVersions[i])
|
groupVersions = append(groupVersions, registeredGroupVersions[i].String())
|
||||||
}
|
}
|
||||||
groupMeta.Versions = versions
|
groupMeta.Versions = versions
|
||||||
groupMeta.GroupVersions = groupVersions
|
groupMeta.GroupVersions = groupVersions
|
||||||
|
@ -28,7 +28,6 @@ import (
|
|||||||
"k8s.io/kubernetes/pkg/api/latest"
|
"k8s.io/kubernetes/pkg/api/latest"
|
||||||
"k8s.io/kubernetes/pkg/api/meta"
|
"k8s.io/kubernetes/pkg/api/meta"
|
||||||
"k8s.io/kubernetes/pkg/api/registered"
|
"k8s.io/kubernetes/pkg/api/registered"
|
||||||
apiutil "k8s.io/kubernetes/pkg/api/util"
|
|
||||||
_ "k8s.io/kubernetes/pkg/apis/extensions"
|
_ "k8s.io/kubernetes/pkg/apis/extensions"
|
||||||
"k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
"k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||||
"k8s.io/kubernetes/pkg/runtime"
|
"k8s.io/kubernetes/pkg/runtime"
|
||||||
@ -48,16 +47,16 @@ func init() {
|
|||||||
registeredGroupVersions := registered.GroupVersionsForGroup("extensions")
|
registeredGroupVersions := registered.GroupVersionsForGroup("extensions")
|
||||||
groupVersion := registeredGroupVersions[0]
|
groupVersion := registeredGroupVersions[0]
|
||||||
*groupMeta = latest.GroupMeta{
|
*groupMeta = latest.GroupMeta{
|
||||||
GroupVersion: groupVersion,
|
GroupVersion: groupVersion.String(),
|
||||||
Group: apiutil.GetGroup(groupVersion),
|
Group: groupVersion.Group,
|
||||||
Version: apiutil.GetVersion(groupVersion),
|
Version: groupVersion.Version,
|
||||||
Codec: runtime.CodecFor(api.Scheme, groupVersion),
|
Codec: runtime.CodecFor(api.Scheme, groupVersion.String()),
|
||||||
}
|
}
|
||||||
var versions []string
|
var versions []string
|
||||||
var groupVersions []string
|
var groupVersions []string
|
||||||
for i := len(registeredGroupVersions) - 1; i >= 0; i-- {
|
for i := len(registeredGroupVersions) - 1; i >= 0; i-- {
|
||||||
versions = append(versions, apiutil.GetVersion(registeredGroupVersions[i]))
|
versions = append(versions, registeredGroupVersions[i].Version)
|
||||||
groupVersions = append(groupVersions, registeredGroupVersions[i])
|
groupVersions = append(groupVersions, registeredGroupVersions[i].String())
|
||||||
}
|
}
|
||||||
groupMeta.Versions = versions
|
groupMeta.Versions = versions
|
||||||
groupMeta.GroupVersions = groupVersions
|
groupMeta.GroupVersions = groupVersions
|
||||||
|
@ -28,7 +28,6 @@ import (
|
|||||||
"k8s.io/kubernetes/pkg/api/latest"
|
"k8s.io/kubernetes/pkg/api/latest"
|
||||||
"k8s.io/kubernetes/pkg/api/meta"
|
"k8s.io/kubernetes/pkg/api/meta"
|
||||||
"k8s.io/kubernetes/pkg/api/registered"
|
"k8s.io/kubernetes/pkg/api/registered"
|
||||||
apiutil "k8s.io/kubernetes/pkg/api/util"
|
|
||||||
_ "k8s.io/kubernetes/pkg/apis/metrics"
|
_ "k8s.io/kubernetes/pkg/apis/metrics"
|
||||||
"k8s.io/kubernetes/pkg/apis/metrics/v1alpha1"
|
"k8s.io/kubernetes/pkg/apis/metrics/v1alpha1"
|
||||||
"k8s.io/kubernetes/pkg/runtime"
|
"k8s.io/kubernetes/pkg/runtime"
|
||||||
@ -48,16 +47,16 @@ func init() {
|
|||||||
registeredGroupVersions := registered.GroupVersionsForGroup("metrics")
|
registeredGroupVersions := registered.GroupVersionsForGroup("metrics")
|
||||||
groupVersion := registeredGroupVersions[0]
|
groupVersion := registeredGroupVersions[0]
|
||||||
*groupMeta = latest.GroupMeta{
|
*groupMeta = latest.GroupMeta{
|
||||||
GroupVersion: groupVersion,
|
GroupVersion: groupVersion.String(),
|
||||||
Group: apiutil.GetGroup(groupVersion),
|
Group: groupVersion.Group,
|
||||||
Version: apiutil.GetVersion(groupVersion),
|
Version: groupVersion.Version,
|
||||||
Codec: runtime.CodecFor(api.Scheme, groupVersion),
|
Codec: runtime.CodecFor(api.Scheme, groupVersion.String()),
|
||||||
}
|
}
|
||||||
var versions []string
|
var versions []string
|
||||||
var groupVersions []string
|
var groupVersions []string
|
||||||
for i := len(registeredGroupVersions) - 1; i >= 0; i-- {
|
for i := len(registeredGroupVersions) - 1; i >= 0; i-- {
|
||||||
versions = append(versions, apiutil.GetVersion(registeredGroupVersions[i]))
|
versions = append(versions, registeredGroupVersions[i].Version)
|
||||||
groupVersions = append(groupVersions, registeredGroupVersions[i])
|
groupVersions = append(groupVersions, registeredGroupVersions[i].String())
|
||||||
}
|
}
|
||||||
groupMeta.Versions = versions
|
groupMeta.Versions = versions
|
||||||
groupMeta.GroupVersions = groupVersions
|
groupMeta.GroupVersions = groupVersions
|
||||||
|
@ -294,7 +294,11 @@ func (c *Fake) ServerAPIVersions() (*unversioned.APIVersions, error) {
|
|||||||
action.Resource = "apiversions"
|
action.Resource = "apiversions"
|
||||||
|
|
||||||
c.Invokes(action, nil)
|
c.Invokes(action, nil)
|
||||||
return &unversioned.APIVersions{Versions: registered.RegisteredVersions}, nil
|
gvStrings := []string{}
|
||||||
|
for _, gv := range registered.RegisteredGroupVersions {
|
||||||
|
gvStrings = append(gvStrings, gv.String())
|
||||||
|
}
|
||||||
|
return &unversioned.APIVersions{Versions: gvStrings}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Fake) ComponentStatuses() client.ComponentStatusInterface {
|
func (c *Fake) ComponentStatuses() client.ComponentStatusInterface {
|
||||||
|
@ -22,6 +22,7 @@ import (
|
|||||||
|
|
||||||
"k8s.io/kubernetes/pkg/api/latest"
|
"k8s.io/kubernetes/pkg/api/latest"
|
||||||
"k8s.io/kubernetes/pkg/api/registered"
|
"k8s.io/kubernetes/pkg/api/registered"
|
||||||
|
"k8s.io/kubernetes/pkg/api/unversioned"
|
||||||
"k8s.io/kubernetes/pkg/kubectl"
|
"k8s.io/kubernetes/pkg/kubectl"
|
||||||
cmdutil "k8s.io/kubernetes/pkg/kubectl/cmd/util"
|
cmdutil "k8s.io/kubernetes/pkg/kubectl/cmd/util"
|
||||||
"k8s.io/kubernetes/pkg/kubectl/resource"
|
"k8s.io/kubernetes/pkg/kubectl/resource"
|
||||||
@ -95,7 +96,11 @@ type ConvertOptions struct {
|
|||||||
// Complete collects information required to run Convert command from command line.
|
// Complete collects information required to run Convert command from command line.
|
||||||
func (o *ConvertOptions) Complete(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []string) (err error) {
|
func (o *ConvertOptions) Complete(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []string) (err error) {
|
||||||
o.outputVersion = cmdutil.OutputVersion(cmd, latest.GroupOrDie("").Version)
|
o.outputVersion = cmdutil.OutputVersion(cmd, latest.GroupOrDie("").Version)
|
||||||
if !registered.IsRegisteredAPIVersion(o.outputVersion) {
|
outputGV, err := unversioned.ParseGroupVersion(o.outputVersion)
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("unable to parse group/version from %q: %v", o.outputVersion, err)
|
||||||
|
}
|
||||||
|
if !registered.IsRegisteredAPIGroupVersion(outputGV) {
|
||||||
cmdutil.UsageError(cmd, "'%s' is not a registered version.", o.outputVersion)
|
cmdutil.UsageError(cmd, "'%s' is not a registered version.", o.outputVersion)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -71,16 +71,8 @@ func (c *ClientCache) ClientConfigForVersion(version string) (*client.Config, er
|
|||||||
}
|
}
|
||||||
preferredGV = &gv
|
preferredGV = &gv
|
||||||
}
|
}
|
||||||
registeredGVs := []unversioned.GroupVersion{}
|
|
||||||
for _, gvString := range registered.RegisteredVersions {
|
|
||||||
gv, err := unversioned.ParseGroupVersion(gvString)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
registeredGVs = append(registeredGVs, gv)
|
|
||||||
}
|
|
||||||
|
|
||||||
negotiatedVersion, err := client.NegotiateVersion(c.defaultClient, &config, preferredGV, registeredGVs)
|
negotiatedVersion, err := client.NegotiateVersion(c.defaultClient, &config, preferredGV, registered.RegisteredGroupVersions)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -35,6 +35,7 @@ import (
|
|||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
"k8s.io/kubernetes/pkg/api/meta"
|
"k8s.io/kubernetes/pkg/api/meta"
|
||||||
"k8s.io/kubernetes/pkg/api/registered"
|
"k8s.io/kubernetes/pkg/api/registered"
|
||||||
|
"k8s.io/kubernetes/pkg/api/unversioned"
|
||||||
"k8s.io/kubernetes/pkg/api/validation"
|
"k8s.io/kubernetes/pkg/api/validation"
|
||||||
client "k8s.io/kubernetes/pkg/client/unversioned"
|
client "k8s.io/kubernetes/pkg/client/unversioned"
|
||||||
"k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
|
"k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
|
||||||
@ -476,8 +477,12 @@ func (c *clientSwaggerSchema) ValidateBytes(data []byte) error {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if ok := registered.IsRegisteredAPIVersion(version); !ok {
|
gv, err := unversioned.ParseGroupVersion(version)
|
||||||
return fmt.Errorf("API version %q isn't supported, only supports API versions %q", version, registered.RegisteredVersions)
|
if err != nil {
|
||||||
|
return fmt.Errorf("unable to parse group/version from %q: %v", version, err)
|
||||||
|
}
|
||||||
|
if ok := registered.IsRegisteredAPIGroupVersion(gv); !ok {
|
||||||
|
return fmt.Errorf("API version %q isn't supported, only supports API versions %q", version, registered.RegisteredGroupVersions)
|
||||||
}
|
}
|
||||||
resource, _ := meta.KindToResource(kind, false)
|
resource, _ := meta.KindToResource(kind, false)
|
||||||
group, err := c.mapper.GroupForResource(resource)
|
group, err := c.mapper.GroupForResource(resource)
|
||||||
|
@ -23,6 +23,7 @@ import (
|
|||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
"k8s.io/kubernetes/pkg/api/meta"
|
"k8s.io/kubernetes/pkg/api/meta"
|
||||||
"k8s.io/kubernetes/pkg/api/registered"
|
"k8s.io/kubernetes/pkg/api/registered"
|
||||||
|
"k8s.io/kubernetes/pkg/api/unversioned"
|
||||||
"k8s.io/kubernetes/pkg/runtime"
|
"k8s.io/kubernetes/pkg/runtime"
|
||||||
"k8s.io/kubernetes/pkg/util/yaml"
|
"k8s.io/kubernetes/pkg/util/yaml"
|
||||||
)
|
)
|
||||||
@ -48,8 +49,12 @@ func (m *Mapper) InfoForData(data []byte, source string) (*Info, error) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("unable to get type info from %q: %v", source, err)
|
return nil, fmt.Errorf("unable to get type info from %q: %v", source, err)
|
||||||
}
|
}
|
||||||
if ok := registered.IsRegisteredAPIVersion(version); !ok {
|
gv, err := unversioned.ParseGroupVersion(version)
|
||||||
return nil, fmt.Errorf("API version %q in %q isn't supported, only supports API versions %q", version, source, registered.RegisteredVersions)
|
if err != nil {
|
||||||
|
return nil, fmt.Errorf("unable to parse group/version from %q: %v", version, err)
|
||||||
|
}
|
||||||
|
if ok := registered.IsRegisteredAPIGroupVersion(gv); !ok {
|
||||||
|
return nil, fmt.Errorf("API version %q in %q isn't supported, only supports API versions %q", version, source, registered.RegisteredGroupVersions)
|
||||||
}
|
}
|
||||||
if kind == "" {
|
if kind == "" {
|
||||||
return nil, fmt.Errorf("kind not set in %q", source)
|
return nil, fmt.Errorf("kind not set in %q", source)
|
||||||
|
@ -71,8 +71,8 @@ func TestDecodeSinglePod(t *testing.T) {
|
|||||||
t.Errorf("expected:\n%#v\ngot:\n%#v\n%s", pod, podOut, string(json))
|
t.Errorf("expected:\n%#v\ngot:\n%#v\n%s", pod, podOut, string(json))
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, version := range registered.GroupVersionsForGroup("") {
|
for _, gv := range registered.GroupVersionsForGroup("") {
|
||||||
externalPod, err := testapi.Default.Converter().ConvertToVersion(pod, version)
|
externalPod, err := testapi.Default.Converter().ConvertToVersion(pod, gv.String())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Errorf("unexpected error: %v", err)
|
t.Errorf("unexpected error: %v", err)
|
||||||
}
|
}
|
||||||
@ -137,8 +137,8 @@ func TestDecodePodList(t *testing.T) {
|
|||||||
t.Errorf("expected:\n%#v\ngot:\n%#v\n%s", podList, &podListOut, string(json))
|
t.Errorf("expected:\n%#v\ngot:\n%#v\n%s", podList, &podListOut, string(json))
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, version := range registered.GroupVersionsForGroup("") {
|
for _, gv := range registered.GroupVersionsForGroup("") {
|
||||||
externalPodList, err := testapi.Default.Converter().ConvertToVersion(podList, version)
|
externalPodList, err := testapi.Default.Converter().ConvertToVersion(podList, gv.String())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Errorf("unexpected error: %v", err)
|
t.Errorf("unexpected error: %v", err)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user