Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
5f8366aa
Unverified
Commit
5f8366aa
authored
Jul 04, 2016
by
Clayton Coleman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Convert() should accept the new conversion Context value
Allows Convert() to reuse the same conversions as ConvertToVersion without being overly coupled to the version.
parent
a7a7fd46
Hide whitespace changes
Inline
Side-by-side
Showing
25 changed files
with
37 additions
and
35 deletions
+37
-35
options.go
cmd/kube-proxy/app/options/options.go
+1
-1
options.go
cmd/kubelet/app/options/options.go
+1
-1
restmapper_test.go
pkg/api/meta/restmapper_test.go
+1
-1
serialization_proto_test.go
pkg/api/serialization_proto_test.go
+1
-1
serialization_test.go
pkg/api/serialization_test.go
+1
-1
conversion_test.go
pkg/api/v1/conversion_test.go
+3
-3
defaults_test.go
pkg/api/v1/defaults_test.go
+1
-1
conversion_test.go
pkg/apis/abac/v0/conversion_test.go
+1
-1
conversion_test.go
pkg/apis/extensions/v1beta1/conversion_test.go
+2
-2
defaults_test.go
pkg/apis/extensions/v1beta1/defaults_test.go
+1
-1
abac.go
pkg/auth/authorizer/abac/abac.go
+1
-1
abac_test.go
pkg/auth/authorizer/abac/abac_test.go
+2
-2
controller_utils.go
pkg/controller/controller_utils.go
+1
-1
utils.go
pkg/controller/scheduledjob/utils.go
+1
-1
file_test.go
pkg/kubelet/config/file_test.go
+1
-1
http_test.go
pkg/kubelet/config/http_test.go
+1
-1
codec.go
pkg/registry/thirdpartyresourcedata/codec.go
+2
-2
codec.go
pkg/runtime/codec.go
+3
-3
conversion_test.go
pkg/runtime/conversion_test.go
+1
-1
interfaces.go
pkg/runtime/interfaces.go
+5
-3
scheme_test.go
pkg/runtime/scheme_test.go
+2
-2
versioning.go
pkg/runtime/serializer/versioning/versioning.go
+1
-1
versioning_test.go
pkg/runtime/serializer/versioning/versioning_test.go
+1
-1
unstructured.go
pkg/runtime/unstructured.go
+1
-1
options.go
plugin/cmd/kube-scheduler/app/options/options.go
+1
-1
No files found.
cmd/kube-proxy/app/options/options.go
View file @
5f8366aa
...
...
@@ -50,7 +50,7 @@ type ProxyServerConfig struct {
func
NewProxyConfig
()
*
ProxyServerConfig
{
config
:=
componentconfig
.
KubeProxyConfiguration
{}
api
.
Scheme
.
Convert
(
&
v1alpha1
.
KubeProxyConfiguration
{},
&
config
)
api
.
Scheme
.
Convert
(
&
v1alpha1
.
KubeProxyConfiguration
{},
&
config
,
nil
)
return
&
ProxyServerConfig
{
KubeProxyConfiguration
:
config
,
ContentType
:
"application/vnd.kubernetes.protobuf"
,
...
...
cmd/kubelet/app/options/options.go
View file @
5f8366aa
...
...
@@ -58,7 +58,7 @@ type KubeletServer struct {
// NewKubeletServer will create a new KubeletServer with default values.
func
NewKubeletServer
()
*
KubeletServer
{
config
:=
componentconfig
.
KubeletConfiguration
{}
api
.
Scheme
.
Convert
(
&
v1alpha1
.
KubeletConfiguration
{},
&
config
)
api
.
Scheme
.
Convert
(
&
v1alpha1
.
KubeletConfiguration
{},
&
config
,
nil
)
return
&
KubeletServer
{
AuthPath
:
util
.
NewStringFlag
(
"/var/lib/kubelet/kubernetes_auth"
),
// deprecated
KubeConfig
:
util
.
NewStringFlag
(
"/var/lib/kubelet/kubeconfig"
),
...
...
pkg/api/meta/restmapper_test.go
View file @
5f8366aa
...
...
@@ -28,7 +28,7 @@ import (
type
fakeConvertor
struct
{}
func
(
fakeConvertor
)
Convert
(
in
,
out
interface
{})
error
{
func
(
fakeConvertor
)
Convert
(
in
,
out
,
context
interface
{})
error
{
return
nil
}
...
...
pkg/api/serialization_proto_test.go
View file @
5f8366aa
...
...
@@ -106,7 +106,7 @@ func BenchmarkEncodeCodecFromInternalProtobuf(b *testing.B) {
width
:=
len
(
items
)
encodable
:=
make
([]
api
.
Pod
,
width
)
for
i
:=
range
items
{
if
err
:=
api
.
Scheme
.
Convert
(
&
items
[
i
],
&
encodable
[
i
]);
err
!=
nil
{
if
err
:=
api
.
Scheme
.
Convert
(
&
items
[
i
],
&
encodable
[
i
]
,
nil
);
err
!=
nil
{
b
.
Fatal
(
err
)
}
}
...
...
pkg/api/serialization_test.go
View file @
5f8366aa
...
...
@@ -482,7 +482,7 @@ func BenchmarkEncodeCodecFromInternal(b *testing.B) {
width
:=
len
(
items
)
encodable
:=
make
([]
api
.
Pod
,
width
)
for
i
:=
range
items
{
if
err
:=
api
.
Scheme
.
Convert
(
&
items
[
i
],
&
encodable
[
i
]);
err
!=
nil
{
if
err
:=
api
.
Scheme
.
Convert
(
&
items
[
i
],
&
encodable
[
i
]
,
nil
);
err
!=
nil
{
b
.
Fatal
(
err
)
}
}
...
...
pkg/api/v1/conversion_test.go
View file @
5f8366aa
...
...
@@ -127,7 +127,7 @@ func TestPodSpecConversion(t *testing.T) {
ServiceAccountName
:
name
,
}
v
:=
versioned
.
PodSpec
{}
if
err
:=
api
.
Scheme
.
Convert
(
i
,
&
v
);
err
!=
nil
{
if
err
:=
api
.
Scheme
.
Convert
(
i
,
&
v
,
nil
);
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
if
v
.
ServiceAccountName
!=
name
{
...
...
@@ -152,7 +152,7 @@ func TestPodSpecConversion(t *testing.T) {
}
for
k
,
v
:=
range
testCases
{
got
:=
api
.
PodSpec
{}
err
:=
api
.
Scheme
.
Convert
(
v
,
&
got
)
err
:=
api
.
Scheme
.
Convert
(
v
,
&
got
,
nil
)
if
err
!=
nil
{
t
.
Fatalf
(
"unexpected error for case %d: %v"
,
k
,
err
)
}
...
...
@@ -206,7 +206,7 @@ func TestResourceListConversion(t *testing.T) {
for
i
,
test
:=
range
tests
{
output
:=
api
.
ResourceList
{}
err
:=
api
.
Scheme
.
Convert
(
&
test
.
input
,
&
output
)
err
:=
api
.
Scheme
.
Convert
(
&
test
.
input
,
&
output
,
nil
)
if
err
!=
nil
{
t
.
Fatalf
(
"unexpected error for case %d: %v"
,
i
,
err
)
}
...
...
pkg/api/v1/defaults_test.go
View file @
5f8366aa
...
...
@@ -40,7 +40,7 @@ func roundTrip(t *testing.T, obj runtime.Object) runtime.Object {
return
nil
}
obj3
:=
reflect
.
New
(
reflect
.
TypeOf
(
obj
)
.
Elem
())
.
Interface
()
.
(
runtime
.
Object
)
err
=
api
.
Scheme
.
Convert
(
obj2
,
obj3
)
err
=
api
.
Scheme
.
Convert
(
obj2
,
obj3
,
nil
)
if
err
!=
nil
{
t
.
Errorf
(
"%v
\n
Source: %#v"
,
err
,
obj2
)
return
nil
...
...
pkg/apis/abac/v0/conversion_test.go
View file @
5f8366aa
...
...
@@ -67,7 +67,7 @@ func TestConversion(t *testing.T) {
}
for
k
,
tc
:=
range
testcases
{
internal
:=
&
api
.
Policy
{}
if
err
:=
api
.
Scheme
.
Convert
(
tc
.
old
,
internal
);
err
!=
nil
{
if
err
:=
api
.
Scheme
.
Convert
(
tc
.
old
,
internal
,
nil
);
err
!=
nil
{
t
.
Errorf
(
"%s: unexpected error: %v"
,
k
,
err
)
}
if
!
reflect
.
DeepEqual
(
internal
,
tc
.
expected
)
{
...
...
pkg/apis/extensions/v1beta1/conversion_test.go
View file @
5f8366aa
...
...
@@ -59,7 +59,7 @@ func TestJobSpecConversion(t *testing.T) {
ManualSelector
:
test
.
in
,
}
v
:=
versioned
.
JobSpec
{}
if
err
:=
api
.
Scheme
.
Convert
(
i
,
&
v
);
err
!=
nil
{
if
err
:=
api
.
Scheme
.
Convert
(
i
,
&
v
,
nil
);
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
if
!
reflect
.
DeepEqual
(
test
.
expectOut
,
v
.
AutoSelector
)
{
...
...
@@ -73,7 +73,7 @@ func TestJobSpecConversion(t *testing.T) {
AutoSelector
:
test
.
in
,
}
e
:=
batch
.
JobSpec
{}
if
err
:=
api
.
Scheme
.
Convert
(
i
,
&
e
);
err
!=
nil
{
if
err
:=
api
.
Scheme
.
Convert
(
i
,
&
e
,
nil
);
err
!=
nil
{
t
.
Fatalf
(
"unexpected error: %v"
,
err
)
}
if
!
reflect
.
DeepEqual
(
test
.
expectOut
,
e
.
ManualSelector
)
{
...
...
pkg/apis/extensions/v1beta1/defaults_test.go
View file @
5f8366aa
...
...
@@ -728,7 +728,7 @@ func roundTrip(t *testing.T, obj runtime.Object) runtime.Object {
return
nil
}
obj3
:=
reflect
.
New
(
reflect
.
TypeOf
(
obj
)
.
Elem
())
.
Interface
()
.
(
runtime
.
Object
)
err
=
api
.
Scheme
.
Convert
(
obj2
,
obj3
)
err
=
api
.
Scheme
.
Convert
(
obj2
,
obj3
,
nil
)
if
err
!=
nil
{
t
.
Errorf
(
"%v
\n
Source: %#v"
,
err
,
obj2
)
return
nil
...
...
pkg/auth/authorizer/abac/abac.go
View file @
5f8366aa
...
...
@@ -89,7 +89,7 @@ func NewFromFile(path string) (policyList, error) {
if
err
:=
runtime
.
DecodeInto
(
decoder
,
b
,
oldPolicy
);
err
!=
nil
{
return
nil
,
policyLoadError
{
path
,
i
,
b
,
err
}
}
if
err
:=
api
.
Scheme
.
Convert
(
oldPolicy
,
p
);
err
!=
nil
{
if
err
:=
api
.
Scheme
.
Convert
(
oldPolicy
,
p
,
nil
);
err
!=
nil
{
return
nil
,
policyLoadError
{
path
,
i
,
b
,
err
}
}
pl
=
append
(
pl
,
p
)
...
...
pkg/auth/authorizer/abac/abac_test.go
View file @
5f8366aa
...
...
@@ -562,7 +562,7 @@ func TestSubjectMatches(t *testing.T) {
for
k
,
tc
:=
range
testCases
{
policy
:=
&
api
.
Policy
{}
if
err
:=
api
.
Scheme
.
Convert
(
tc
.
Policy
,
policy
);
err
!=
nil
{
if
err
:=
api
.
Scheme
.
Convert
(
tc
.
Policy
,
policy
,
nil
);
err
!=
nil
{
t
.
Errorf
(
"%s: error converting: %v"
,
k
,
err
)
continue
}
...
...
@@ -950,7 +950,7 @@ func TestPolicy(t *testing.T) {
}
for
_
,
test
:=
range
tests
{
policy
:=
&
api
.
Policy
{}
if
err
:=
api
.
Scheme
.
Convert
(
test
.
policy
,
policy
);
err
!=
nil
{
if
err
:=
api
.
Scheme
.
Convert
(
test
.
policy
,
policy
,
nil
);
err
!=
nil
{
t
.
Errorf
(
"%s: error converting: %v"
,
test
.
name
,
err
)
continue
}
...
...
pkg/controller/controller_utils.go
View file @
5f8366aa
...
...
@@ -458,7 +458,7 @@ func GetPodFromTemplate(template *api.PodTemplateSpec, parentObject runtime.Obje
if
controllerRef
!=
nil
{
pod
.
OwnerReferences
=
append
(
pod
.
OwnerReferences
,
*
controllerRef
)
}
if
err
:=
api
.
Scheme
.
Convert
(
&
template
.
Spec
,
&
pod
.
Spec
);
err
!=
nil
{
if
err
:=
api
.
Scheme
.
Convert
(
&
template
.
Spec
,
&
pod
.
Spec
,
nil
);
err
!=
nil
{
return
nil
,
fmt
.
Errorf
(
"unable to convert pod template: %v"
,
err
)
}
return
pod
,
nil
...
...
pkg/controller/scheduledjob/utils.go
View file @
5f8366aa
...
...
@@ -209,7 +209,7 @@ func getJobFromTemplate(sj *batch.ScheduledJob, scheduledTime time.Time) (*batch
Name
:
name
,
},
}
if
err
:=
api
.
Scheme
.
Convert
(
&
sj
.
Spec
.
JobTemplate
.
Spec
,
&
job
.
Spec
);
err
!=
nil
{
if
err
:=
api
.
Scheme
.
Convert
(
&
sj
.
Spec
.
JobTemplate
.
Spec
,
&
job
.
Spec
,
nil
);
err
!=
nil
{
return
nil
,
fmt
.
Errorf
(
"unable to convert job template: %v"
,
err
)
}
return
job
,
nil
...
...
pkg/kubelet/config/file_test.go
View file @
5f8366aa
...
...
@@ -129,7 +129,7 @@ func TestReadPodsFromFile(t *testing.T) {
for
_
,
testCase
:=
range
testCases
{
func
()
{
var
versionedPod
runtime
.
Object
err
:=
testapi
.
Default
.
Converter
()
.
Convert
(
&
testCase
.
pod
,
&
versionedPod
)
err
:=
testapi
.
Default
.
Converter
()
.
Convert
(
&
testCase
.
pod
,
&
versionedPod
,
nil
)
if
err
!=
nil
{
t
.
Fatalf
(
"%s: error in versioning the pod: %v"
,
testCase
.
desc
,
err
)
}
...
...
pkg/kubelet/config/http_test.go
View file @
5f8366aa
...
...
@@ -276,7 +276,7 @@ func TestExtractPodsFromHTTP(t *testing.T) {
for
_
,
testCase
:=
range
testCases
{
var
versionedPods
runtime
.
Object
err
:=
testapi
.
Default
.
Converter
()
.
Convert
(
&
testCase
.
pods
,
&
versionedPods
)
err
:=
testapi
.
Default
.
Converter
()
.
Convert
(
&
testCase
.
pods
,
&
versionedPods
,
nil
)
if
err
!=
nil
{
t
.
Fatalf
(
"%s: error in versioning the pods: %s"
,
testCase
.
desc
,
err
)
}
...
...
pkg/registry/thirdpartyresourcedata/codec.go
View file @
5f8366aa
...
...
@@ -53,8 +53,8 @@ func (t *thirdPartyObjectConverter) ConvertToVersion(in runtime.Object, outVersi
}
}
func
(
t
*
thirdPartyObjectConverter
)
Convert
(
in
,
out
interface
{})
error
{
return
t
.
converter
.
Convert
(
in
,
out
)
func
(
t
*
thirdPartyObjectConverter
)
Convert
(
in
,
out
,
context
interface
{})
error
{
return
t
.
converter
.
Convert
(
in
,
out
,
context
)
}
func
(
t
*
thirdPartyObjectConverter
)
ConvertFieldLabel
(
version
,
kind
,
label
,
value
string
)
(
string
,
string
,
error
)
{
...
...
pkg/runtime/codec.go
View file @
5f8366aa
...
...
@@ -145,16 +145,16 @@ func (c *parameterCodec) DecodeParameters(parameters url.Values, from unversione
}
targetGVK
:=
targetGVKs
[
0
]
if
targetGVK
.
GroupVersion
()
==
from
{
return
c
.
convertor
.
Convert
(
&
parameters
,
into
)
return
c
.
convertor
.
Convert
(
&
parameters
,
into
,
nil
)
}
input
,
err
:=
c
.
creator
.
New
(
from
.
WithKind
(
targetGVK
.
Kind
))
if
err
!=
nil
{
return
err
}
if
err
:=
c
.
convertor
.
Convert
(
&
parameters
,
input
);
err
!=
nil
{
if
err
:=
c
.
convertor
.
Convert
(
&
parameters
,
input
,
nil
);
err
!=
nil
{
return
err
}
return
c
.
convertor
.
Convert
(
input
,
into
)
return
c
.
convertor
.
Convert
(
input
,
into
,
nil
)
}
// EncodeParameters converts the provided object into the to version, then converts that object to url.Values.
...
...
pkg/runtime/conversion_test.go
View file @
5f8366aa
...
...
@@ -122,7 +122,7 @@ func TestStringMapConversion(t *testing.T) {
for
k
,
tc
:=
range
testCases
{
out
:=
&
ExternalComplex
{}
if
err
:=
scheme
.
Convert
(
&
tc
.
input
,
out
);
(
tc
.
errFn
==
nil
&&
err
!=
nil
)
||
(
tc
.
errFn
!=
nil
&&
!
tc
.
errFn
(
err
))
{
if
err
:=
scheme
.
Convert
(
&
tc
.
input
,
out
,
nil
);
(
tc
.
errFn
==
nil
&&
err
!=
nil
)
||
(
tc
.
errFn
!=
nil
&&
!
tc
.
errFn
(
err
))
{
t
.
Errorf
(
"%s: unexpected error: %v"
,
k
,
err
)
continue
}
else
if
err
!=
nil
{
...
...
pkg/runtime/interfaces.go
View file @
5f8366aa
...
...
@@ -176,10 +176,12 @@ type ObjectVersioner interface {
// ObjectConvertor converts an object to a different version.
type
ObjectConvertor
interface
{
// Convert attempts to convert one object into another, or returns an error. This method does
// not guarantee the in object is not mutated.
Convert
(
in
,
out
interface
{})
error
// not guarantee the in object is not mutated. The context argument will be passed to
// all nested conversions.
Convert
(
in
,
out
,
context
interface
{})
error
// ConvertToVersion takes the provided object and converts it the provided version. This
// method does not guarantee that the in object is not mutated.
// method does not guarantee that the in object is not mutated. This method is similar to
// Convert() but handles specific details of choosing the correct output version.
ConvertToVersion
(
in
Object
,
gv
GroupVersioner
)
(
out
Object
,
err
error
)
ConvertFieldLabel
(
version
,
kind
,
label
,
value
string
)
(
string
,
string
,
error
)
}
...
...
pkg/runtime/scheme_test.go
View file @
5f8366aa
...
...
@@ -129,7 +129,7 @@ func TestScheme(t *testing.T) {
// Test Convert
external
:=
&
ExternalSimple
{}
err
=
scheme
.
Convert
(
simple
,
external
)
err
=
scheme
.
Convert
(
simple
,
external
,
nil
)
if
err
!=
nil
{
t
.
Fatalf
(
"Unexpected error: %v"
,
err
)
}
...
...
@@ -894,7 +894,7 @@ func TestMetaValuesUnregisteredConvert(t *testing.T) {
simple
:=
&
InternalSimple
{
TestString
:
"foo"
}
external
:=
&
ExternalSimple
{}
err
=
s
.
Convert
(
simple
,
external
)
err
=
s
.
Convert
(
simple
,
external
,
nil
)
if
err
!=
nil
{
t
.
Fatalf
(
"Unexpected error: %v"
,
err
)
}
...
...
pkg/runtime/serializer/versioning/versioning.go
View file @
5f8366aa
...
...
@@ -102,7 +102,7 @@ func (c *codec) Decode(data []byte, defaultGVK *unversioned.GroupVersionKind, in
}
return
into
,
gvk
,
nil
}
if
err
:=
c
.
convertor
.
Convert
(
obj
,
into
);
err
!=
nil
{
if
err
:=
c
.
convertor
.
Convert
(
obj
,
into
,
c
.
decodeVersion
);
err
!=
nil
{
return
nil
,
gvk
,
err
}
if
isVersioned
{
...
...
pkg/runtime/serializer/versioning/versioning_test.go
View file @
5f8366aa
...
...
@@ -298,7 +298,7 @@ type checkConvertor struct {
directConvert
bool
}
func
(
c
*
checkConvertor
)
Convert
(
in
,
out
interface
{})
error
{
func
(
c
*
checkConvertor
)
Convert
(
in
,
out
,
context
interface
{})
error
{
if
!
c
.
directConvert
{
return
fmt
.
Errorf
(
"unexpected call to Convert"
)
}
...
...
pkg/runtime/unstructured.go
View file @
5f8366aa
...
...
@@ -168,7 +168,7 @@ func (s unstructuredJSONScheme) decodeToList(data []byte, list *UnstructuredList
// sane implementation for APIs that require an object converter.
type
UnstructuredObjectConverter
struct
{}
func
(
UnstructuredObjectConverter
)
Convert
(
in
,
out
interface
{})
error
{
func
(
UnstructuredObjectConverter
)
Convert
(
in
,
out
,
context
interface
{})
error
{
unstructIn
,
ok
:=
in
.
(
*
Unstructured
)
if
!
ok
{
return
fmt
.
Errorf
(
"input type %T in not valid for unstructured conversion"
,
in
)
...
...
plugin/cmd/kube-scheduler/app/options/options.go
View file @
5f8366aa
...
...
@@ -41,7 +41,7 @@ type SchedulerServer struct {
// NewSchedulerServer creates a new SchedulerServer with default parameters
func
NewSchedulerServer
()
*
SchedulerServer
{
config
:=
componentconfig
.
KubeSchedulerConfiguration
{}
api
.
Scheme
.
Convert
(
&
v1alpha1
.
KubeSchedulerConfiguration
{},
&
config
)
api
.
Scheme
.
Convert
(
&
v1alpha1
.
KubeSchedulerConfiguration
{},
&
config
,
nil
)
config
.
LeaderElection
.
LeaderElect
=
true
s
:=
SchedulerServer
{
KubeSchedulerConfiguration
:
config
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment