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
d0366861
Unverified
Commit
d0366861
authored
May 16, 2017
by
juanvallejo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix --local flag for `kubectl set` commands
parent
0cb3cb25
Hide whitespace changes
Inline
Side-by-side
Showing
42 changed files
with
290 additions
and
148 deletions
+290
-148
test-cmd-util.sh
hack/make-rules/test-cmd-util.sh
+18
-0
annotate.go
pkg/kubectl/cmd/annotate.go
+19
-6
apply.go
pkg/kubectl/cmd/apply.go
+7
-3
apply_set_last_applied.go
pkg/kubectl/cmd/apply_set_last_applied.go
+7
-3
apply_view_last_applied.go
pkg/kubectl/cmd/apply_view_last_applied.go
+3
-4
attach.go
pkg/kubectl/cmd/attach.go
+1
-3
autoscale.go
pkg/kubectl/cmd/autoscale.go
+3
-3
certificates.go
pkg/kubectl/cmd/certificates.go
+2
-2
clusterinfo.go
pkg/kubectl/cmd/clusterinfo.go
+1
-2
cmd_test.go
pkg/kubectl/cmd/cmd_test.go
+8
-8
convert.go
pkg/kubectl/cmd/convert.go
+3
-10
create.go
pkg/kubectl/cmd/create.go
+9
-4
create_role.go
pkg/kubectl/cmd/create_role.go
+1
-1
delete.go
pkg/kubectl/cmd/delete.go
+8
-3
describe.go
pkg/kubectl/cmd/describe.go
+3
-2
drain.go
pkg/kubectl/cmd/drain.go
+1
-1
expose.go
pkg/kubectl/cmd/expose.go
+3
-3
get.go
pkg/kubectl/cmd/get.go
+13
-7
label.go
pkg/kubectl/cmd/label.go
+15
-4
logs.go
pkg/kubectl/cmd/logs.go
+4
-9
patch.go
pkg/kubectl/cmd/patch.go
+12
-2
replace.go
pkg/kubectl/cmd/replace.go
+14
-3
rollingupdate.go
pkg/kubectl/cmd/rollingupdate.go
+4
-4
rollout_history.go
pkg/kubectl/cmd/rollout/rollout_history.go
+1
-3
rollout_pause.go
pkg/kubectl/cmd/rollout/rollout_pause.go
+1
-1
rollout_resume.go
pkg/kubectl/cmd/rollout/rollout_resume.go
+1
-1
rollout_status.go
pkg/kubectl/cmd/rollout/rollout_status.go
+1
-3
rollout_undo.go
pkg/kubectl/cmd/rollout/rollout_undo.go
+1
-1
run.go
pkg/kubectl/cmd/run.go
+3
-4
scale.go
pkg/kubectl/cmd/scale.go
+2
-2
set_image.go
pkg/kubectl/cmd/set/set_image.go
+4
-4
set_resources.go
pkg/kubectl/cmd/set/set_resources.go
+4
-3
set_selector.go
pkg/kubectl/cmd/set/set_selector.go
+8
-6
set_subject.go
pkg/kubectl/cmd/set/set_subject.go
+3
-2
stop.go
pkg/kubectl/cmd/stop.go
+2
-2
taint.go
pkg/kubectl/cmd/taint.go
+2
-3
BUILD
pkg/kubectl/cmd/testing/BUILD
+1
-0
fake.go
pkg/kubectl/cmd/testing/fake.go
+36
-9
editoptions.go
pkg/kubectl/cmd/util/editor/editoptions.go
+5
-1
factory.go
pkg/kubectl/cmd/util/factory.go
+6
-4
factory_builder.go
pkg/kubectl/cmd/util/factory_builder.go
+48
-10
printing.go
pkg/kubectl/cmd/util/printing.go
+2
-2
No files found.
hack/make-rules/test-cmd-util.sh
View file @
d0366861
...
@@ -1848,6 +1848,24 @@ run_recursive_resources_tests() {
...
@@ -1848,6 +1848,24 @@ run_recursive_resources_tests() {
kube::test::get_object_assert pods
"{{range.items}}{{
${
labels_field
}
.status}}:{{end}}"
'replaced:replaced:'
kube::test::get_object_assert pods
"{{range.items}}{{
${
labels_field
}
.status}}:{{end}}"
'replaced:replaced:'
kube::test::if_has_string
"
${
output_message
}
"
'error validating data: kind not set'
kube::test::if_has_string
"
${
output_message
}
"
'error validating data: kind not set'
### Convert deployment YAML file locally without affecting the live deployment.
# Pre-condition: no deployments exist
kube::test::get_object_assert deployment
"{{range.items}}{{
$id_field
}}:{{end}}"
''
# Command
# Create a deployment (revision 1)
kubectl create
-f
hack/testdata/deployment-revision1.yaml
"
${
kube_flags
[@]
}
"
kube::test::get_object_assert deployment
"{{range.items}}{{
$id_field
}}:{{end}}"
'nginx:'
kube::test::get_object_assert deployment
"{{range.items}}{{
$deployment_image_field
}}:{{end}}"
"
${
IMAGE_DEPLOYMENT_R1
}
:"
# Command
output_message
=
$(
kubectl convert
--local
-f
hack/testdata/deployment-revision1.yaml
--output-version
=
apps/v1beta1
-o
go-template
=
'{{ .apiVersion }}'
"
${
kube_flags
[@]
}
"
)
echo
$output_message
# Post-condition: apiVersion is still extensions/v1beta1 in the live deployment, but command output is the new value
kube::test::get_object_assert
'deployment nginx'
"{{ .apiVersion }}"
'extensions/v1beta1'
kube::test::if_has_string
"
${
output_message
}
"
"apps/v1beta1"
# Clean up
kubectl delete deployment nginx
"
${
kube_flags
[@]
}
"
## Convert multiple busybox PODs recursively from directory of YAML files
## Convert multiple busybox PODs recursively from directory of YAML files
# Pre-condition: busybox0 & busybox1 PODs exist
# Pre-condition: busybox0 & busybox1 PODs exist
kube::test::get_object_assert pods
"{{range.items}}{{
$id_field
}}:{{end}}"
'busybox0:busybox1:'
kube::test::get_object_assert pods
"{{range.items}}{{
$id_field
}}:{{end}}"
'busybox0:busybox1:'
...
...
pkg/kubectl/cmd/annotate.go
View file @
d0366861
...
@@ -27,7 +27,6 @@ import (
...
@@ -27,7 +27,6 @@ import (
"k8s.io/apimachinery/pkg/api/meta"
"k8s.io/apimachinery/pkg/api/meta"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/types"
"k8s.io/apimachinery/pkg/types"
"k8s.io/apimachinery/pkg/util/json"
"k8s.io/apimachinery/pkg/util/json"
...
@@ -186,11 +185,12 @@ func (o AnnotateOptions) RunAnnotate(f cmdutil.Factory, cmd *cobra.Command) erro
...
@@ -186,11 +185,12 @@ func (o AnnotateOptions) RunAnnotate(f cmdutil.Factory, cmd *cobra.Command) erro
changeCause
:=
f
.
Command
(
cmd
,
false
)
changeCause
:=
f
.
Command
(
cmd
,
false
)
mapper
,
typer
,
err
:=
f
.
UnstructuredObject
(
)
builder
,
err
:=
f
.
NewUnstructuredBuilder
(
!
o
.
local
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
b
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
.
b
:=
builder
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
namespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
namespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
...
@@ -223,10 +223,13 @@ func (o AnnotateOptions) RunAnnotate(f cmdutil.Factory, cmd *cobra.Command) erro
...
@@ -223,10 +223,13 @@ func (o AnnotateOptions) RunAnnotate(f cmdutil.Factory, cmd *cobra.Command) erro
}
}
var
outputObj
runtime
.
Object
var
outputObj
runtime
.
Object
obj
,
err
:=
cmdutil
.
MaybeConvertObject
(
info
.
Object
,
info
.
Mapping
.
GroupVersionKind
.
GroupVersion
(),
info
.
Mapping
)
var
obj
runtime
.
Object
obj
,
err
=
cmdutil
.
MaybeConvertObject
(
info
.
Object
,
info
.
Mapping
.
GroupVersionKind
.
GroupVersion
(),
info
.
Mapping
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
if
o
.
dryrun
||
o
.
local
{
if
o
.
dryrun
||
o
.
local
{
if
err
:=
o
.
updateAnnotations
(
obj
);
err
!=
nil
{
if
err
:=
o
.
updateAnnotations
(
obj
);
err
!=
nil
{
return
err
return
err
...
@@ -271,8 +274,18 @@ func (o AnnotateOptions) RunAnnotate(f cmdutil.Factory, cmd *cobra.Command) erro
...
@@ -271,8 +274,18 @@ func (o AnnotateOptions) RunAnnotate(f cmdutil.Factory, cmd *cobra.Command) erro
return
err
return
err
}
}
}
}
if
o
.
outputFormat
!=
""
{
return
f
.
PrintObject
(
cmd
,
mapper
,
outputObj
,
o
.
out
)
var
mapper
meta
.
RESTMapper
if
o
.
local
{
mapper
,
_
=
f
.
Object
()
}
else
{
mapper
,
_
,
err
=
f
.
UnstructuredObject
()
if
err
!=
nil
{
return
err
}
}
if
len
(
o
.
outputFormat
)
>
0
{
return
f
.
PrintObject
(
cmd
,
o
.
local
,
mapper
,
outputObj
,
o
.
out
)
}
}
cmdutil
.
PrintSuccess
(
mapper
,
false
,
o
.
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
o
.
dryrun
,
"annotated"
)
cmdutil
.
PrintSuccess
(
mapper
,
false
,
o
.
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
o
.
dryrun
,
"annotated"
)
return
nil
return
nil
...
...
pkg/kubectl/cmd/apply.go
View file @
d0366861
...
@@ -29,7 +29,6 @@ import (
...
@@ -29,7 +29,6 @@ import (
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/api/meta"
"k8s.io/apimachinery/pkg/api/meta"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/runtime/schema"
...
@@ -193,7 +192,7 @@ func RunApply(f cmdutil.Factory, cmd *cobra.Command, out, errOut io.Writer, opti
...
@@ -193,7 +192,7 @@ func RunApply(f cmdutil.Factory, cmd *cobra.Command, out, errOut io.Writer, opti
return
err
return
err
}
}
mapper
,
typer
,
err
:=
f
.
UnstructuredObject
()
mapper
,
_
,
err
:=
f
.
UnstructuredObject
()
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
...
@@ -205,7 +204,12 @@ func RunApply(f cmdutil.Factory, cmd *cobra.Command, out, errOut io.Writer, opti
...
@@ -205,7 +204,12 @@ func RunApply(f cmdutil.Factory, cmd *cobra.Command, out, errOut io.Writer, opti
}
}
}
}
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
.
builder
,
err
:=
f
.
NewUnstructuredBuilder
(
true
)
if
err
!=
nil
{
return
err
}
r
:=
builder
.
Schema
(
schema
)
.
Schema
(
schema
)
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
...
...
pkg/kubectl/cmd/apply_set_last_applied.go
View file @
d0366861
...
@@ -27,7 +27,6 @@ import (
...
@@ -27,7 +27,6 @@ import (
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/api/meta"
"k8s.io/apimachinery/pkg/api/meta"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/types"
"k8s.io/apimachinery/pkg/types"
apijson
"k8s.io/apimachinery/pkg/util/json"
apijson
"k8s.io/apimachinery/pkg/util/json"
...
@@ -127,13 +126,18 @@ func (o *SetLastAppliedOptions) Complete(f cmdutil.Factory, cmd *cobra.Command)
...
@@ -127,13 +126,18 @@ func (o *SetLastAppliedOptions) Complete(f cmdutil.Factory, cmd *cobra.Command)
}
}
func
(
o
*
SetLastAppliedOptions
)
Validate
(
f
cmdutil
.
Factory
,
cmd
*
cobra
.
Command
)
error
{
func
(
o
*
SetLastAppliedOptions
)
Validate
(
f
cmdutil
.
Factory
,
cmd
*
cobra
.
Command
)
error
{
r
:=
resource
.
NewBuilder
(
o
.
Mapper
,
f
.
CategoryExpander
(),
o
.
Typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
.
builder
,
err
:=
f
.
NewUnstructuredBuilder
(
true
)
if
err
!=
nil
{
return
err
}
r
:=
builder
.
NamespaceParam
(
o
.
Namespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
o
.
Namespace
)
.
DefaultNamespace
()
.
FilenameParam
(
o
.
EnforceNamespace
,
&
o
.
FilenameOptions
)
.
FilenameParam
(
o
.
EnforceNamespace
,
&
o
.
FilenameOptions
)
.
Latest
()
.
Latest
()
.
Flatten
()
.
Flatten
()
.
Do
()
Do
()
err
:
=
r
.
Err
()
err
=
r
.
Err
()
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
...
...
pkg/kubectl/cmd/apply_view_last_applied.go
View file @
d0366861
...
@@ -24,7 +24,6 @@ import (
...
@@ -24,7 +24,6 @@ import (
"github.com/ghodss/yaml"
"github.com/ghodss/yaml"
"github.com/spf13/cobra"
"github.com/spf13/cobra"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/kubernetes/pkg/kubectl"
"k8s.io/kubernetes/pkg/kubectl"
"k8s.io/kubernetes/pkg/kubectl/cmd/templates"
"k8s.io/kubernetes/pkg/kubectl/cmd/templates"
cmdutil
"k8s.io/kubernetes/pkg/kubectl/cmd/util"
cmdutil
"k8s.io/kubernetes/pkg/kubectl/cmd/util"
...
@@ -83,17 +82,17 @@ func NewCmdApplyViewLastApplied(f cmdutil.Factory, out, err io.Writer) *cobra.Co
...
@@ -83,17 +82,17 @@ func NewCmdApplyViewLastApplied(f cmdutil.Factory, out, err io.Writer) *cobra.Co
}
}
func
(
o
*
ViewLastAppliedOptions
)
Complete
(
f
cmdutil
.
Factory
,
args
[]
string
)
error
{
func
(
o
*
ViewLastAppliedOptions
)
Complete
(
f
cmdutil
.
Factory
,
args
[]
string
)
error
{
mapper
,
typer
,
err
:=
f
.
UnstructuredObject
()
cmdNamespace
,
enforceNamespace
,
err
:=
f
.
DefaultNamespace
()
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
cmdNamespace
,
enforceNamespace
,
err
:=
f
.
DefaultNamespace
(
)
builder
,
err
:=
f
.
NewUnstructuredBuilder
(
true
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
.
r
:=
builder
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
ResourceTypeOrNameArgs
(
enforceNamespace
,
args
...
)
.
ResourceTypeOrNameArgs
(
enforceNamespace
,
args
...
)
.
...
...
pkg/kubectl/cmd/attach.go
View file @
d0366861
...
@@ -34,7 +34,6 @@ import (
...
@@ -34,7 +34,6 @@ import (
coreclient
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion"
coreclient
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion"
"k8s.io/kubernetes/pkg/kubectl/cmd/templates"
"k8s.io/kubernetes/pkg/kubectl/cmd/templates"
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/util/i18n"
"k8s.io/kubernetes/pkg/util/i18n"
)
)
...
@@ -144,8 +143,7 @@ func (p *AttachOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, argsIn [
...
@@ -144,8 +143,7 @@ func (p *AttachOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, argsIn [
return
cmdutil
.
UsageError
(
cmd
,
err
.
Error
())
return
cmdutil
.
UsageError
(
cmd
,
err
.
Error
())
}
}
mapper
,
typer
:=
f
.
Object
()
builder
:=
f
.
NewBuilder
(
true
)
.
builder
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
))
.
NamespaceParam
(
namespace
)
.
DefaultNamespace
()
NamespaceParam
(
namespace
)
.
DefaultNamespace
()
switch
len
(
argsIn
)
{
switch
len
(
argsIn
)
{
...
...
pkg/kubectl/cmd/autoscale.go
View file @
d0366861
...
@@ -91,7 +91,7 @@ func RunAutoscale(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []s
...
@@ -91,7 +91,7 @@ func RunAutoscale(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []s
}
}
mapper
,
typer
:=
f
.
Object
()
mapper
,
typer
:=
f
.
Object
()
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
r
:=
f
.
NewBuilder
(
true
)
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
namespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
namespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
options
)
.
FilenameParam
(
enforceNamespace
,
options
)
.
...
@@ -162,7 +162,7 @@ func RunAutoscale(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []s
...
@@ -162,7 +162,7 @@ func RunAutoscale(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []s
object
=
hpa
.
Object
object
=
hpa
.
Object
}
}
if
cmdutil
.
GetDryRunFlag
(
cmd
)
{
if
cmdutil
.
GetDryRunFlag
(
cmd
)
{
return
f
.
PrintObject
(
cmd
,
mapper
,
object
,
out
)
return
f
.
PrintObject
(
cmd
,
false
,
mapper
,
object
,
out
)
}
}
if
err
:=
kubectl
.
CreateOrUpdateAnnotation
(
cmdutil
.
GetFlagBool
(
cmd
,
cmdutil
.
ApplyAnnotationsFlag
),
hpa
,
f
.
JSONEncoder
());
err
!=
nil
{
if
err
:=
kubectl
.
CreateOrUpdateAnnotation
(
cmdutil
.
GetFlagBool
(
cmd
,
cmdutil
.
ApplyAnnotationsFlag
),
hpa
,
f
.
JSONEncoder
());
err
!=
nil
{
...
@@ -176,7 +176,7 @@ func RunAutoscale(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []s
...
@@ -176,7 +176,7 @@ func RunAutoscale(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []s
count
++
count
++
if
len
(
cmdutil
.
GetFlagString
(
cmd
,
"output"
))
>
0
{
if
len
(
cmdutil
.
GetFlagString
(
cmd
,
"output"
))
>
0
{
return
f
.
PrintObject
(
cmd
,
mapper
,
object
,
out
)
return
f
.
PrintObject
(
cmd
,
false
,
mapper
,
object
,
out
)
}
}
cmdutil
.
PrintSuccess
(
mapper
,
false
,
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
cmdutil
.
GetDryRunFlag
(
cmd
),
"autoscaled"
)
cmdutil
.
PrintSuccess
(
mapper
,
false
,
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
cmdutil
.
GetDryRunFlag
(
cmd
),
"autoscaled"
)
...
...
pkg/kubectl/cmd/certificates.go
View file @
d0366861
...
@@ -162,12 +162,12 @@ func (options *CertificateOptions) RunCertificateDeny(f cmdutil.Factory, out io.
...
@@ -162,12 +162,12 @@ func (options *CertificateOptions) RunCertificateDeny(f cmdutil.Factory, out io.
func
(
options
*
CertificateOptions
)
modifyCertificateCondition
(
f
cmdutil
.
Factory
,
out
io
.
Writer
,
modify
func
(
csr
*
certificates
.
CertificateSigningRequest
)
(
*
certificates
.
CertificateSigningRequest
,
string
))
error
{
func
(
options
*
CertificateOptions
)
modifyCertificateCondition
(
f
cmdutil
.
Factory
,
out
io
.
Writer
,
modify
func
(
csr
*
certificates
.
CertificateSigningRequest
)
(
*
certificates
.
CertificateSigningRequest
,
string
))
error
{
var
found
int
var
found
int
mapper
,
typer
:=
f
.
Object
()
mapper
,
_
:=
f
.
Object
()
c
,
err
:=
f
.
ClientSet
()
c
,
err
:=
f
.
ClientSet
()
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
r
:=
f
.
NewBuilder
(
true
)
.
ContinueOnError
()
.
ContinueOnError
()
.
FilenameParam
(
false
,
&
options
.
FilenameOptions
)
.
FilenameParam
(
false
,
&
options
.
FilenameOptions
)
.
ResourceNames
(
"certificatesigningrequest"
,
options
.
csrNames
...
)
.
ResourceNames
(
"certificatesigningrequest"
,
options
.
csrNames
...
)
.
...
...
pkg/kubectl/cmd/clusterinfo.go
View file @
d0366861
...
@@ -65,14 +65,13 @@ func RunClusterInfo(f cmdutil.Factory, out io.Writer, cmd *cobra.Command) error
...
@@ -65,14 +65,13 @@ func RunClusterInfo(f cmdutil.Factory, out io.Writer, cmd *cobra.Command) error
}
}
printService
(
out
,
"Kubernetes master"
,
client
.
Host
)
printService
(
out
,
"Kubernetes master"
,
client
.
Host
)
mapper
,
typer
:=
f
.
Object
()
cmdNamespace
:=
cmdutil
.
GetFlagString
(
cmd
,
"namespace"
)
cmdNamespace
:=
cmdutil
.
GetFlagString
(
cmd
,
"namespace"
)
if
cmdNamespace
==
""
{
if
cmdNamespace
==
""
{
cmdNamespace
=
metav1
.
NamespaceSystem
cmdNamespace
=
metav1
.
NamespaceSystem
}
}
// TODO use generalized labels once they are implemented (#341)
// TODO use generalized labels once they are implemented (#341)
b
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
b
:=
f
.
NewBuilder
(
true
)
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
SelectorParam
(
"kubernetes.io/cluster-service=true"
)
.
SelectorParam
(
"kubernetes.io/cluster-service=true"
)
.
ResourceTypeOrNameArgs
(
false
,
[]
string
{
"services"
}
...
)
.
ResourceTypeOrNameArgs
(
false
,
[]
string
{
"services"
}
...
)
.
...
...
pkg/kubectl/cmd/cmd_test.go
View file @
d0366861
...
@@ -197,7 +197,7 @@ func Example_printReplicationControllerWithNamespace() {
...
@@ -197,7 +197,7 @@ func Example_printReplicationControllerWithNamespace() {
},
},
}
}
mapper
,
_
:=
f
.
Object
()
mapper
,
_
:=
f
.
Object
()
err
:=
f
.
PrintObject
(
cmd
,
mapper
,
ctrl
,
os
.
Stdout
)
err
:=
f
.
PrintObject
(
cmd
,
false
,
mapper
,
ctrl
,
os
.
Stdout
)
if
err
!=
nil
{
if
err
!=
nil
{
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
}
}
...
@@ -252,7 +252,7 @@ func Example_printMultiContainersReplicationControllerWithWide() {
...
@@ -252,7 +252,7 @@ func Example_printMultiContainersReplicationControllerWithWide() {
},
},
}
}
mapper
,
_
:=
f
.
Object
()
mapper
,
_
:=
f
.
Object
()
err
:=
f
.
PrintObject
(
cmd
,
mapper
,
ctrl
,
os
.
Stdout
)
err
:=
f
.
PrintObject
(
cmd
,
false
,
mapper
,
ctrl
,
os
.
Stdout
)
if
err
!=
nil
{
if
err
!=
nil
{
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
}
}
...
@@ -306,7 +306,7 @@ func Example_printReplicationController() {
...
@@ -306,7 +306,7 @@ func Example_printReplicationController() {
},
},
}
}
mapper
,
_
:=
f
.
Object
()
mapper
,
_
:=
f
.
Object
()
err
:=
f
.
PrintObject
(
cmd
,
mapper
,
ctrl
,
os
.
Stdout
)
err
:=
f
.
PrintObject
(
cmd
,
false
,
mapper
,
ctrl
,
os
.
Stdout
)
if
err
!=
nil
{
if
err
!=
nil
{
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
}
}
...
@@ -349,7 +349,7 @@ func Example_printPodWithWideFormat() {
...
@@ -349,7 +349,7 @@ func Example_printPodWithWideFormat() {
},
},
}
}
mapper
,
_
:=
f
.
Object
()
mapper
,
_
:=
f
.
Object
()
err
:=
f
.
PrintObject
(
cmd
,
mapper
,
pod
,
os
.
Stdout
)
err
:=
f
.
PrintObject
(
cmd
,
false
,
mapper
,
pod
,
os
.
Stdout
)
if
err
!=
nil
{
if
err
!=
nil
{
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
}
}
...
@@ -395,7 +395,7 @@ func Example_printPodWithShowLabels() {
...
@@ -395,7 +395,7 @@ func Example_printPodWithShowLabels() {
},
},
}
}
mapper
,
_
:=
f
.
Object
()
mapper
,
_
:=
f
.
Object
()
err
:=
f
.
PrintObject
(
cmd
,
mapper
,
pod
,
os
.
Stdout
)
err
:=
f
.
PrintObject
(
cmd
,
false
,
mapper
,
pod
,
os
.
Stdout
)
if
err
!=
nil
{
if
err
!=
nil
{
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
}
}
...
@@ -519,7 +519,7 @@ func Example_printPodHideTerminated() {
...
@@ -519,7 +519,7 @@ func Example_printPodHideTerminated() {
}
}
for
_
,
pod
:=
range
filteredPodList
{
for
_
,
pod
:=
range
filteredPodList
{
mapper
,
_
:=
f
.
Object
()
mapper
,
_
:=
f
.
Object
()
err
:=
f
.
PrintObject
(
cmd
,
mapper
,
pod
,
os
.
Stdout
)
err
:=
f
.
PrintObject
(
cmd
,
false
,
mapper
,
pod
,
os
.
Stdout
)
if
err
!=
nil
{
if
err
!=
nil
{
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
}
}
...
@@ -547,7 +547,7 @@ func Example_printPodShowAll() {
...
@@ -547,7 +547,7 @@ func Example_printPodShowAll() {
cmd
:=
NewCmdRun
(
f
,
os
.
Stdin
,
os
.
Stdout
,
os
.
Stderr
)
cmd
:=
NewCmdRun
(
f
,
os
.
Stdin
,
os
.
Stdout
,
os
.
Stderr
)
podList
:=
newAllPhasePodList
()
podList
:=
newAllPhasePodList
()
mapper
,
_
:=
f
.
Object
()
mapper
,
_
:=
f
.
Object
()
err
:=
f
.
PrintObject
(
cmd
,
mapper
,
podList
,
os
.
Stdout
)
err
:=
f
.
PrintObject
(
cmd
,
false
,
mapper
,
podList
,
os
.
Stdout
)
if
err
!=
nil
{
if
err
!=
nil
{
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
}
}
...
@@ -622,7 +622,7 @@ func Example_printServiceWithNamespacesAndLabels() {
...
@@ -622,7 +622,7 @@ func Example_printServiceWithNamespacesAndLabels() {
ld
:=
strings
.
NewLineDelimiter
(
os
.
Stdout
,
"|"
)
ld
:=
strings
.
NewLineDelimiter
(
os
.
Stdout
,
"|"
)
defer
ld
.
Flush
()
defer
ld
.
Flush
()
mapper
,
_
:=
f
.
Object
()
mapper
,
_
:=
f
.
Object
()
err
:=
f
.
PrintObject
(
cmd
,
mapper
,
svc
,
ld
)
err
:=
f
.
PrintObject
(
cmd
,
false
,
mapper
,
svc
,
ld
)
if
err
!=
nil
{
if
err
!=
nil
{
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
fmt
.
Printf
(
"Unexpected error: %v"
,
err
)
}
}
...
...
pkg/kubectl/cmd/convert.go
View file @
d0366861
...
@@ -19,7 +19,6 @@ package cmd
...
@@ -19,7 +19,6 @@ package cmd
import
(
import
(
"fmt"
"fmt"
"io"
"io"
"os"
"k8s.io/apimachinery/pkg/api/meta"
"k8s.io/apimachinery/pkg/api/meta"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime"
...
@@ -127,14 +126,8 @@ func (o *ConvertOptions) Complete(f cmdutil.Factory, out io.Writer, cmd *cobra.C
...
@@ -127,14 +126,8 @@ func (o *ConvertOptions) Complete(f cmdutil.Factory, out io.Writer, cmd *cobra.C
}
}
// build the builder
// build the builder
mapper
,
typer
:=
f
.
Object
()
o
.
builder
=
f
.
NewBuilder
(
!
o
.
local
)
clientMapper
:=
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
)
if
!
o
.
local
{
if
o
.
local
{
fmt
.
Fprintln
(
os
.
Stderr
,
"running in local mode..."
)
o
.
builder
=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
DisabledClientForMapping
{
ClientMapper
:
clientMapper
},
f
.
Decoder
(
true
))
}
else
{
o
.
builder
=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
clientMapper
,
f
.
Decoder
(
true
))
schema
,
err
:=
f
.
Validator
(
cmdutil
.
GetFlagBool
(
cmd
,
"validate"
),
cmdutil
.
GetFlagString
(
cmd
,
"schema-cache-dir"
))
schema
,
err
:=
f
.
Validator
(
cmdutil
.
GetFlagBool
(
cmd
,
"validate"
),
cmdutil
.
GetFlagString
(
cmd
,
"schema-cache-dir"
))
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
...
@@ -164,7 +157,7 @@ func (o *ConvertOptions) Complete(f cmdutil.Factory, out io.Writer, cmd *cobra.C
...
@@ -164,7 +157,7 @@ func (o *ConvertOptions) Complete(f cmdutil.Factory, out io.Writer, cmd *cobra.C
cmd
.
Flags
()
.
Set
(
"output"
,
outputFormat
)
cmd
.
Flags
()
.
Set
(
"output"
,
outputFormat
)
}
}
o
.
encoder
=
f
.
JSONEncoder
()
o
.
encoder
=
f
.
JSONEncoder
()
o
.
printer
,
err
=
f
.
PrinterForCommand
(
cmd
,
nil
,
printers
.
PrintOptions
{})
o
.
printer
,
err
=
f
.
PrinterForCommand
(
cmd
,
o
.
local
,
nil
,
printers
.
PrintOptions
{})
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
...
...
pkg/kubectl/cmd/create.go
View file @
d0366861
...
@@ -23,7 +23,6 @@ import (
...
@@ -23,7 +23,6 @@ import (
"github.com/spf13/cobra"
"github.com/spf13/cobra"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/kubernetes/pkg/kubectl"
"k8s.io/kubernetes/pkg/kubectl"
"k8s.io/kubernetes/pkg/kubectl/cmd/templates"
"k8s.io/kubernetes/pkg/kubectl/cmd/templates"
...
@@ -125,11 +124,17 @@ func RunCreate(f cmdutil.Factory, cmd *cobra.Command, out, errOut io.Writer, opt
...
@@ -125,11 +124,17 @@ func RunCreate(f cmdutil.Factory, cmd *cobra.Command, out, errOut io.Writer, opt
return
err
return
err
}
}
mapper
,
typer
,
err
:=
f
.
UnstructuredObject
()
mapper
,
_
,
err
:=
f
.
UnstructuredObject
()
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
.
builder
,
err
:=
f
.
NewUnstructuredBuilder
(
true
)
if
err
!=
nil
{
return
err
}
r
:=
builder
.
Schema
(
schema
)
.
Schema
(
schema
)
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
...
@@ -290,5 +295,5 @@ func RunCreateSubcommand(f cmdutil.Factory, cmd *cobra.Command, out io.Writer, o
...
@@ -290,5 +295,5 @@ func RunCreateSubcommand(f cmdutil.Factory, cmd *cobra.Command, out io.Writer, o
return
nil
return
nil
}
}
return
f
.
PrintObject
(
cmd
,
mapper
,
obj
,
out
)
return
f
.
PrintObject
(
cmd
,
false
,
mapper
,
obj
,
out
)
}
}
pkg/kubectl/cmd/create_role.go
View file @
d0366861
...
@@ -199,7 +199,7 @@ func (c *CreateRoleOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args
...
@@ -199,7 +199,7 @@ func (c *CreateRoleOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args
}
}
c
.
PrintObject
=
func
(
obj
runtime
.
Object
)
error
{
c
.
PrintObject
=
func
(
obj
runtime
.
Object
)
error
{
return
f
.
PrintObject
(
cmd
,
c
.
Mapper
,
obj
,
c
.
Out
)
return
f
.
PrintObject
(
cmd
,
false
,
c
.
Mapper
,
obj
,
c
.
Out
)
}
}
clientSet
,
err
:=
f
.
ClientSet
()
clientSet
,
err
:=
f
.
ClientSet
()
...
...
pkg/kubectl/cmd/delete.go
View file @
d0366861
...
@@ -26,7 +26,6 @@ import (
...
@@ -26,7 +26,6 @@ import (
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/api/meta"
"k8s.io/apimachinery/pkg/api/meta"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/apimachinery/pkg/util/wait"
"k8s.io/apimachinery/pkg/util/wait"
"k8s.io/kubernetes/pkg/kubectl"
"k8s.io/kubernetes/pkg/kubectl"
"k8s.io/kubernetes/pkg/kubectl/cmd/templates"
"k8s.io/kubernetes/pkg/kubectl/cmd/templates"
...
@@ -170,12 +169,18 @@ func (o *DeleteOptions) Complete(f cmdutil.Factory, out, errOut io.Writer, args
...
@@ -170,12 +169,18 @@ func (o *DeleteOptions) Complete(f cmdutil.Factory, out, errOut io.Writer, args
}
}
// Set up client based support.
// Set up client based support.
mapper
,
typer
,
err
:=
f
.
UnstructuredObject
()
mapper
,
_
,
err
:=
f
.
UnstructuredObject
()
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
builder
,
err
:=
f
.
NewUnstructuredBuilder
(
true
)
if
err
!=
nil
{
return
err
}
o
.
Mapper
=
mapper
o
.
Mapper
=
mapper
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
.
r
:=
builder
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
...
...
pkg/kubectl/cmd/describe.go
View file @
d0366861
...
@@ -115,11 +115,12 @@ func RunDescribe(f cmdutil.Factory, out, cmdErr io.Writer, cmd *cobra.Command, a
...
@@ -115,11 +115,12 @@ func RunDescribe(f cmdutil.Factory, out, cmdErr io.Writer, cmd *cobra.Command, a
return
cmdutil
.
UsageError
(
cmd
,
"Required resource not specified."
)
return
cmdutil
.
UsageError
(
cmd
,
"Required resource not specified."
)
}
}
mapper
,
typer
,
err
:=
f
.
UnstructuredObject
(
)
builder
,
err
:=
f
.
NewUnstructuredBuilder
(
true
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
.
r
:=
builder
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
AllNamespaces
(
allNamespaces
)
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
AllNamespaces
(
allNamespaces
)
.
FilenameParam
(
enforceNamespace
,
options
)
.
FilenameParam
(
enforceNamespace
,
options
)
.
...
...
pkg/kubectl/cmd/drain.go
View file @
d0366861
...
@@ -215,7 +215,7 @@ func (o *DrainOptions) SetupDrain(cmd *cobra.Command, args []string) error {
...
@@ -215,7 +215,7 @@ func (o *DrainOptions) SetupDrain(cmd *cobra.Command, args []string) error {
return
err
return
err
}
}
r
:=
o
.
Factory
.
NewBuilder
()
.
r
:=
o
.
Factory
.
NewBuilder
(
true
)
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
ResourceNames
(
"node"
,
args
[
0
])
.
ResourceNames
(
"node"
,
args
[
0
])
.
Do
()
Do
()
...
...
pkg/kubectl/cmd/expose.go
View file @
d0366861
...
@@ -127,7 +127,7 @@ func RunExpose(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []stri
...
@@ -127,7 +127,7 @@ func RunExpose(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []stri
}
}
mapper
,
typer
:=
f
.
Object
()
mapper
,
typer
:=
f
.
Object
()
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
r
:=
f
.
NewBuilder
(
true
)
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
namespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
namespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
options
)
.
FilenameParam
(
enforceNamespace
,
options
)
.
...
@@ -255,7 +255,7 @@ func RunExpose(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []stri
...
@@ -255,7 +255,7 @@ func RunExpose(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []stri
info
.
Refresh
(
object
,
true
)
info
.
Refresh
(
object
,
true
)
if
cmdutil
.
GetDryRunFlag
(
cmd
)
{
if
cmdutil
.
GetDryRunFlag
(
cmd
)
{
if
len
(
cmdutil
.
GetFlagString
(
cmd
,
"output"
))
>
0
{
if
len
(
cmdutil
.
GetFlagString
(
cmd
,
"output"
))
>
0
{
return
f
.
PrintObject
(
cmd
,
mapper
,
object
,
out
)
return
f
.
PrintObject
(
cmd
,
false
,
mapper
,
object
,
out
)
}
}
cmdutil
.
PrintSuccess
(
mapper
,
false
,
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
true
,
"exposed"
)
cmdutil
.
PrintSuccess
(
mapper
,
false
,
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
true
,
"exposed"
)
return
nil
return
nil
...
@@ -271,7 +271,7 @@ func RunExpose(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []stri
...
@@ -271,7 +271,7 @@ func RunExpose(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []stri
}
}
if
len
(
cmdutil
.
GetFlagString
(
cmd
,
"output"
))
>
0
{
if
len
(
cmdutil
.
GetFlagString
(
cmd
,
"output"
))
>
0
{
return
f
.
PrintObject
(
cmd
,
mapper
,
object
,
out
)
return
f
.
PrintObject
(
cmd
,
false
,
mapper
,
object
,
out
)
}
}
cmdutil
.
PrintSuccess
(
mapper
,
false
,
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
false
,
"exposed"
)
cmdutil
.
PrintSuccess
(
mapper
,
false
,
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
false
,
"exposed"
)
...
...
pkg/kubectl/cmd/get.go
View file @
d0366861
...
@@ -168,10 +168,11 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
...
@@ -168,10 +168,11 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
selector
:=
cmdutil
.
GetFlagString
(
cmd
,
"selector"
)
selector
:=
cmdutil
.
GetFlagString
(
cmd
,
"selector"
)
allNamespaces
:=
cmdutil
.
GetFlagBool
(
cmd
,
"all-namespaces"
)
allNamespaces
:=
cmdutil
.
GetFlagBool
(
cmd
,
"all-namespaces"
)
showKind
:=
cmdutil
.
GetFlagBool
(
cmd
,
"show-kind"
)
showKind
:=
cmdutil
.
GetFlagBool
(
cmd
,
"show-kind"
)
mapper
,
typer
,
err
:=
f
.
UnstructuredObject
(
)
builder
,
err
:=
f
.
NewUnstructuredBuilder
(
true
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
cmdNamespace
,
enforceNamespace
,
err
:=
f
.
DefaultNamespace
()
cmdNamespace
,
enforceNamespace
,
err
:=
f
.
DefaultNamespace
()
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
...
@@ -201,7 +202,12 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
...
@@ -201,7 +202,12 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
// handle watch separately since we cannot watch multiple resource types
// handle watch separately since we cannot watch multiple resource types
isWatch
,
isWatchOnly
:=
cmdutil
.
GetFlagBool
(
cmd
,
"watch"
),
cmdutil
.
GetFlagBool
(
cmd
,
"watch-only"
)
isWatch
,
isWatchOnly
:=
cmdutil
.
GetFlagBool
(
cmd
,
"watch"
),
cmdutil
.
GetFlagBool
(
cmd
,
"watch-only"
)
if
isWatch
||
isWatchOnly
{
if
isWatch
||
isWatchOnly
{
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
.
builder
,
err
:=
f
.
NewUnstructuredBuilder
(
true
)
if
err
!=
nil
{
return
err
}
r
:=
builder
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
AllNamespaces
(
allNamespaces
)
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
AllNamespaces
(
allNamespaces
)
.
FilenameParam
(
enforceNamespace
,
&
options
.
FilenameOptions
)
.
FilenameParam
(
enforceNamespace
,
&
options
.
FilenameOptions
)
.
SelectorParam
(
selector
)
.
SelectorParam
(
selector
)
.
...
@@ -210,7 +216,7 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
...
@@ -210,7 +216,7 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
SingleResourceType
()
.
SingleResourceType
()
.
Latest
()
.
Latest
()
.
Do
()
Do
()
err
:
=
r
.
Err
()
err
=
r
.
Err
()
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
...
@@ -226,7 +232,7 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
...
@@ -226,7 +232,7 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
}
}
info
:=
infos
[
0
]
info
:=
infos
[
0
]
mapping
:=
info
.
ResourceMapping
()
mapping
:=
info
.
ResourceMapping
()
printer
,
err
:=
f
.
PrinterForMapping
(
cmd
,
nil
,
mapping
,
allNamespaces
)
printer
,
err
:=
f
.
PrinterForMapping
(
cmd
,
false
,
nil
,
mapping
,
allNamespaces
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
...
@@ -291,7 +297,7 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
...
@@ -291,7 +297,7 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
return
nil
return
nil
}
}
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
.
r
:=
builder
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
AllNamespaces
(
allNamespaces
)
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
AllNamespaces
(
allNamespaces
)
.
FilenameParam
(
enforceNamespace
,
&
options
.
FilenameOptions
)
.
FilenameParam
(
enforceNamespace
,
&
options
.
FilenameOptions
)
.
SelectorParam
(
selector
)
.
SelectorParam
(
selector
)
.
...
@@ -306,7 +312,7 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
...
@@ -306,7 +312,7 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
return
err
return
err
}
}
printer
,
err
:=
f
.
PrinterForCommand
(
cmd
,
nil
,
printers
.
PrintOptions
{})
printer
,
err
:=
f
.
PrinterForCommand
(
cmd
,
false
,
nil
,
printers
.
PrintOptions
{})
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
...
@@ -455,7 +461,7 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
...
@@ -455,7 +461,7 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
outputOpts
,
_
=
outputOptsForMappingFromOpenAPI
(
f
,
cmdutil
.
GetOpenAPICacheDir
(
cmd
),
mapping
)
outputOpts
,
_
=
outputOptsForMappingFromOpenAPI
(
f
,
cmdutil
.
GetOpenAPICacheDir
(
cmd
),
mapping
)
}
}
printer
,
err
=
f
.
PrinterForMapping
(
cmd
,
outputOpts
,
mapping
,
allNamespaces
)
printer
,
err
=
f
.
PrinterForMapping
(
cmd
,
false
,
outputOpts
,
mapping
,
allNamespaces
)
if
err
!=
nil
{
if
err
!=
nil
{
if
!
errs
.
Has
(
err
.
Error
())
{
if
!
errs
.
Has
(
err
.
Error
())
{
errs
.
Insert
(
err
.
Error
())
errs
.
Insert
(
err
.
Error
())
...
...
pkg/kubectl/cmd/label.go
View file @
d0366861
...
@@ -28,7 +28,6 @@ import (
...
@@ -28,7 +28,6 @@ import (
"k8s.io/apimachinery/pkg/api/meta"
"k8s.io/apimachinery/pkg/api/meta"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/types"
"k8s.io/apimachinery/pkg/types"
utilerrors
"k8s.io/apimachinery/pkg/util/errors"
utilerrors
"k8s.io/apimachinery/pkg/util/errors"
...
@@ -181,11 +180,12 @@ func (o *LabelOptions) RunLabel(f cmdutil.Factory, cmd *cobra.Command) error {
...
@@ -181,11 +180,12 @@ func (o *LabelOptions) RunLabel(f cmdutil.Factory, cmd *cobra.Command) error {
changeCause
:=
f
.
Command
(
cmd
,
false
)
changeCause
:=
f
.
Command
(
cmd
,
false
)
mapper
,
typer
,
err
:=
f
.
UnstructuredObject
(
)
builder
,
err
:=
f
.
NewUnstructuredBuilder
(
!
o
.
local
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
b
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
.
b
:=
builder
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
...
@@ -220,6 +220,7 @@ func (o *LabelOptions) RunLabel(f cmdutil.Factory, cmd *cobra.Command) error {
...
@@ -220,6 +220,7 @@ func (o *LabelOptions) RunLabel(f cmdutil.Factory, cmd *cobra.Command) error {
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
dataChangeMsg
=
"labeled"
outputObj
=
info
.
Object
outputObj
=
info
.
Object
}
else
{
}
else
{
obj
:=
info
.
Object
obj
:=
info
.
Object
...
@@ -275,8 +276,18 @@ func (o *LabelOptions) RunLabel(f cmdutil.Factory, cmd *cobra.Command) error {
...
@@ -275,8 +276,18 @@ func (o *LabelOptions) RunLabel(f cmdutil.Factory, cmd *cobra.Command) error {
return
err
return
err
}
}
}
}
var
mapper
meta
.
RESTMapper
if
o
.
local
{
mapper
,
_
=
f
.
Object
()
}
else
{
mapper
,
_
,
err
=
f
.
UnstructuredObject
()
if
err
!=
nil
{
return
err
}
}
if
o
.
outputFormat
!=
""
{
if
o
.
outputFormat
!=
""
{
return
f
.
PrintObject
(
cmd
,
mapper
,
outputObj
,
o
.
out
)
return
f
.
PrintObject
(
cmd
,
o
.
local
,
mapper
,
outputObj
,
o
.
out
)
}
}
cmdutil
.
PrintSuccess
(
mapper
,
false
,
o
.
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
o
.
dryrun
,
dataChangeMsg
)
cmdutil
.
PrintSuccess
(
mapper
,
false
,
o
.
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
o
.
dryrun
,
dataChangeMsg
)
return
nil
return
nil
...
...
pkg/kubectl/cmd/logs.go
View file @
d0366861
...
@@ -32,7 +32,6 @@ import (
...
@@ -32,7 +32,6 @@ import (
"k8s.io/kubernetes/pkg/api/validation"
"k8s.io/kubernetes/pkg/api/validation"
"k8s.io/kubernetes/pkg/kubectl/cmd/templates"
"k8s.io/kubernetes/pkg/kubectl/cmd/templates"
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/util"
"k8s.io/kubernetes/pkg/kubectl/util"
"k8s.io/kubernetes/pkg/util/i18n"
"k8s.io/kubernetes/pkg/util/i18n"
)
)
...
@@ -75,10 +74,9 @@ type LogsOptions struct {
...
@@ -75,10 +74,9 @@ type LogsOptions struct {
ResourceArg
string
ResourceArg
string
Options
runtime
.
Object
Options
runtime
.
Object
Mapper
meta
.
RESTMapper
Mapper
meta
.
RESTMapper
Typer
runtime
.
ObjectTyper
Typer
runtime
.
ObjectTyper
ClientMapper
resource
.
ClientMapper
Decoder
runtime
.
Decoder
Decoder
runtime
.
Decoder
Object
runtime
.
Object
Object
runtime
.
Object
GetPodTimeout
time
.
Duration
GetPodTimeout
time
.
Duration
...
@@ -181,7 +179,6 @@ func (o *LogsOptions) Complete(f cmdutil.Factory, out io.Writer, cmd *cobra.Comm
...
@@ -181,7 +179,6 @@ func (o *LogsOptions) Complete(f cmdutil.Factory, out io.Writer, cmd *cobra.Comm
}
}
o
.
Options
=
logOptions
o
.
Options
=
logOptions
o
.
LogsForObject
=
f
.
LogsForObject
o
.
LogsForObject
=
f
.
LogsForObject
o
.
ClientMapper
=
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
)
o
.
Out
=
out
o
.
Out
=
out
if
len
(
selector
)
!=
0
{
if
len
(
selector
)
!=
0
{
...
@@ -196,10 +193,8 @@ func (o *LogsOptions) Complete(f cmdutil.Factory, out io.Writer, cmd *cobra.Comm
...
@@ -196,10 +193,8 @@ func (o *LogsOptions) Complete(f cmdutil.Factory, out io.Writer, cmd *cobra.Comm
}
}
}
}
mapper
,
typer
:=
f
.
Object
()
decoder
:=
f
.
Decoder
(
true
)
if
o
.
Object
==
nil
{
if
o
.
Object
==
nil
{
builder
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
o
.
ClientMapper
,
decoder
)
.
builder
:=
f
.
NewBuilder
(
true
)
.
NamespaceParam
(
o
.
Namespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
o
.
Namespace
)
.
DefaultNamespace
()
.
SingleResourceType
()
SingleResourceType
()
if
o
.
ResourceArg
!=
""
{
if
o
.
ResourceArg
!=
""
{
...
...
pkg/kubectl/cmd/patch.go
View file @
d0366861
...
@@ -149,11 +149,14 @@ func RunPatch(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []strin
...
@@ -149,11 +149,14 @@ func RunPatch(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []strin
return
fmt
.
Errorf
(
"unable to parse %q: %v"
,
patch
,
err
)
return
fmt
.
Errorf
(
"unable to parse %q: %v"
,
patch
,
err
)
}
}
mapper
,
typer
,
err
:=
f
.
UnstructuredObject
()
// TODO: fix --local to work with thirdpartyresources without making use of the discovery client.
// https://github.com/kubernetes/kubernetes/issues/46722
builder
,
err
:=
f
.
NewUnstructuredBuilder
(
true
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
.
r
:=
builder
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
&
options
.
FilenameOptions
)
.
FilenameParam
(
enforceNamespace
,
&
options
.
FilenameOptions
)
.
...
@@ -220,6 +223,10 @@ func RunPatch(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []strin
...
@@ -220,6 +223,10 @@ func RunPatch(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []strin
if
len
(
options
.
OutputFormat
)
>
0
&&
options
.
OutputFormat
!=
"name"
{
if
len
(
options
.
OutputFormat
)
>
0
&&
options
.
OutputFormat
!=
"name"
{
return
cmdutil
.
PrintResourceInfoForCommand
(
cmd
,
info
,
f
,
out
)
return
cmdutil
.
PrintResourceInfoForCommand
(
cmd
,
info
,
f
,
out
)
}
}
mapper
,
_
,
err
:=
f
.
UnstructuredObject
()
if
err
!=
nil
{
return
err
}
cmdutil
.
PrintSuccess
(
mapper
,
options
.
OutputFormat
==
"name"
,
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
false
,
dataChangedMsg
)
cmdutil
.
PrintSuccess
(
mapper
,
options
.
OutputFormat
==
"name"
,
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
false
,
dataChangedMsg
)
return
nil
return
nil
}
}
...
@@ -230,14 +237,17 @@ func RunPatch(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []strin
...
@@ -230,14 +237,17 @@ func RunPatch(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []strin
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
originalPatchedObjJS
,
err
:=
getPatchedJSON
(
patchType
,
originalObjJS
,
patchBytes
,
mapping
.
GroupVersionKind
,
api
.
Scheme
)
originalPatchedObjJS
,
err
:=
getPatchedJSON
(
patchType
,
originalObjJS
,
patchBytes
,
mapping
.
GroupVersionKind
,
api
.
Scheme
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
targetObj
,
err
:=
runtime
.
Decode
(
unstructured
.
UnstructuredJSONScheme
,
originalPatchedObjJS
)
targetObj
,
err
:=
runtime
.
Decode
(
unstructured
.
UnstructuredJSONScheme
,
originalPatchedObjJS
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
// TODO: if we ever want to go generic, this allows a clean -o yaml without trying to print columns or anything
// TODO: if we ever want to go generic, this allows a clean -o yaml without trying to print columns or anything
// rawExtension := &runtime.Unknown{
// rawExtension := &runtime.Unknown{
// Raw: originalPatchedObjJS,
// Raw: originalPatchedObjJS,
...
...
pkg/kubectl/cmd/replace.go
View file @
d0366861
...
@@ -120,11 +120,17 @@ func RunReplace(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []str
...
@@ -120,11 +120,17 @@ func RunReplace(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []str
return
fmt
.
Errorf
(
"--timeout must have --force specified"
)
return
fmt
.
Errorf
(
"--timeout must have --force specified"
)
}
}
mapper
,
typer
,
err
:=
f
.
UnstructuredObject
()
mapper
,
_
,
err
:=
f
.
UnstructuredObject
()
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
.
builder
,
err
:=
f
.
NewUnstructuredBuilder
(
true
)
if
err
!=
nil
{
return
err
}
r
:=
builder
.
Schema
(
schema
)
.
Schema
(
schema
)
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
...
@@ -244,7 +250,12 @@ func forceReplace(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []s
...
@@ -244,7 +250,12 @@ func forceReplace(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []s
})
})
})
})
r
=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
.
builder
,
err
:=
f
.
NewUnstructuredBuilder
(
true
)
if
err
!=
nil
{
return
err
}
r
=
builder
.
Schema
(
schema
)
.
Schema
(
schema
)
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
...
...
pkg/kubectl/cmd/rollingupdate.go
View file @
d0366861
...
@@ -199,7 +199,7 @@ func RunRollingUpdate(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args
...
@@ -199,7 +199,7 @@ func RunRollingUpdate(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args
return
err
return
err
}
}
request
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
request
:=
f
.
NewBuilder
(
true
)
.
Schema
(
schema
)
.
Schema
(
schema
)
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
&
resource
.
FilenameOptions
{
Recursive
:
false
,
Filenames
:
[]
string
{
filename
}})
.
FilenameParam
(
enforceNamespace
,
&
resource
.
FilenameOptions
{
Recursive
:
false
,
Filenames
:
[]
string
{
filename
}})
.
...
@@ -328,10 +328,10 @@ func RunRollingUpdate(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args
...
@@ -328,10 +328,10 @@ func RunRollingUpdate(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args
oldRcData
.
WriteString
(
oldRc
.
Name
)
oldRcData
.
WriteString
(
oldRc
.
Name
)
newRcData
.
WriteString
(
newRc
.
Name
)
newRcData
.
WriteString
(
newRc
.
Name
)
}
else
{
}
else
{
if
err
:=
f
.
PrintObject
(
cmd
,
mapper
,
oldRc
,
oldRcData
);
err
!=
nil
{
if
err
:=
f
.
PrintObject
(
cmd
,
false
,
mapper
,
oldRc
,
oldRcData
);
err
!=
nil
{
return
err
return
err
}
}
if
err
:=
f
.
PrintObject
(
cmd
,
mapper
,
newRc
,
newRcData
);
err
!=
nil
{
if
err
:=
f
.
PrintObject
(
cmd
,
false
,
mapper
,
newRc
,
newRcData
);
err
!=
nil
{
return
err
return
err
}
}
}
}
...
@@ -376,7 +376,7 @@ func RunRollingUpdate(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args
...
@@ -376,7 +376,7 @@ func RunRollingUpdate(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args
return
err
return
err
}
}
if
outputFormat
!=
""
{
if
outputFormat
!=
""
{
return
f
.
PrintObject
(
cmd
,
mapper
,
newRc
,
out
)
return
f
.
PrintObject
(
cmd
,
false
,
mapper
,
newRc
,
out
)
}
}
cmdutil
.
PrintSuccess
(
mapper
,
false
,
out
,
"replicationcontrollers"
,
oldName
,
dryrun
,
message
)
cmdutil
.
PrintSuccess
(
mapper
,
false
,
out
,
"replicationcontrollers"
,
oldName
,
dryrun
,
message
)
return
nil
return
nil
...
...
pkg/kubectl/cmd/rollout/rollout_history.go
View file @
d0366861
...
@@ -74,14 +74,12 @@ func RunHistory(f cmdutil.Factory, cmd *cobra.Command, out io.Writer, args []str
...
@@ -74,14 +74,12 @@ func RunHistory(f cmdutil.Factory, cmd *cobra.Command, out io.Writer, args []str
return
fmt
.
Errorf
(
"revision must be a positive integer: %v"
,
revision
)
return
fmt
.
Errorf
(
"revision must be a positive integer: %v"
,
revision
)
}
}
mapper
,
typer
:=
f
.
Object
()
cmdNamespace
,
enforceNamespace
,
err
:=
f
.
DefaultNamespace
()
cmdNamespace
,
enforceNamespace
,
err
:=
f
.
DefaultNamespace
()
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
r
:=
f
.
NewBuilder
(
true
)
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
options
)
.
FilenameParam
(
enforceNamespace
,
options
)
.
ResourceTypeOrNameArgs
(
true
,
args
...
)
.
ResourceTypeOrNameArgs
(
true
,
args
...
)
.
...
...
pkg/kubectl/cmd/rollout/rollout_pause.go
View file @
d0366861
...
@@ -111,7 +111,7 @@ func (o *PauseConfig) CompletePause(f cmdutil.Factory, cmd *cobra.Command, out i
...
@@ -111,7 +111,7 @@ func (o *PauseConfig) CompletePause(f cmdutil.Factory, cmd *cobra.Command, out i
return
err
return
err
}
}
r
:=
resource
.
NewBuilder
(
o
.
Mapper
,
f
.
CategoryExpander
(),
o
.
Typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
r
:=
f
.
NewBuilder
(
true
)
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
ResourceTypeOrNameArgs
(
true
,
args
...
)
.
ResourceTypeOrNameArgs
(
true
,
args
...
)
.
...
...
pkg/kubectl/cmd/rollout/rollout_resume.go
View file @
d0366861
...
@@ -109,7 +109,7 @@ func (o *ResumeConfig) CompleteResume(f cmdutil.Factory, cmd *cobra.Command, out
...
@@ -109,7 +109,7 @@ func (o *ResumeConfig) CompleteResume(f cmdutil.Factory, cmd *cobra.Command, out
return
err
return
err
}
}
r
:=
resource
.
NewBuilder
(
o
.
Mapper
,
f
.
CategoryExpander
(),
o
.
Typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
r
:=
f
.
NewBuilder
(
true
)
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
ResourceTypeOrNameArgs
(
true
,
args
...
)
.
ResourceTypeOrNameArgs
(
true
,
args
...
)
.
...
...
pkg/kubectl/cmd/rollout/rollout_status.go
View file @
d0366861
...
@@ -77,14 +77,12 @@ func RunStatus(f cmdutil.Factory, cmd *cobra.Command, out io.Writer, args []stri
...
@@ -77,14 +77,12 @@ func RunStatus(f cmdutil.Factory, cmd *cobra.Command, out io.Writer, args []stri
return
cmdutil
.
UsageError
(
cmd
,
"Required resource not specified."
)
return
cmdutil
.
UsageError
(
cmd
,
"Required resource not specified."
)
}
}
mapper
,
typer
:=
f
.
Object
()
cmdNamespace
,
enforceNamespace
,
err
:=
f
.
DefaultNamespace
()
cmdNamespace
,
enforceNamespace
,
err
:=
f
.
DefaultNamespace
()
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
r
:=
f
.
NewBuilder
(
true
)
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
options
)
.
FilenameParam
(
enforceNamespace
,
options
)
.
ResourceTypeOrNameArgs
(
true
,
args
...
)
.
ResourceTypeOrNameArgs
(
true
,
args
...
)
.
...
...
pkg/kubectl/cmd/rollout/rollout_undo.go
View file @
d0366861
...
@@ -110,7 +110,7 @@ func (o *UndoOptions) CompleteUndo(f cmdutil.Factory, cmd *cobra.Command, out io
...
@@ -110,7 +110,7 @@ func (o *UndoOptions) CompleteUndo(f cmdutil.Factory, cmd *cobra.Command, out io
return
err
return
err
}
}
r
:=
resource
.
NewBuilder
(
o
.
Mapper
,
f
.
CategoryExpander
(),
o
.
Typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
r
:=
f
.
NewBuilder
(
true
)
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
ResourceTypeOrNameArgs
(
true
,
args
...
)
.
ResourceTypeOrNameArgs
(
true
,
args
...
)
.
...
...
pkg/kubectl/cmd/run.go
View file @
d0366861
...
@@ -331,8 +331,7 @@ func Run(f cmdutil.Factory, cmdIn io.Reader, cmdOut, cmdErr io.Writer, cmd *cobr
...
@@ -331,8 +331,7 @@ func Run(f cmdutil.Factory, cmdIn io.Reader, cmdOut, cmdErr io.Writer, cmd *cobr
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
_
,
typer
:=
f
.
Object
()
r
:=
f
.
NewBuilder
(
true
)
.
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
))
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
namespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
namespace
)
.
DefaultNamespace
()
.
ResourceNames
(
mapping
.
Resource
,
name
)
.
ResourceNames
(
mapping
.
Resource
,
name
)
.
...
@@ -379,7 +378,7 @@ func Run(f cmdutil.Factory, cmdIn io.Reader, cmdOut, cmdErr io.Writer, cmd *cobr
...
@@ -379,7 +378,7 @@ func Run(f cmdutil.Factory, cmdIn io.Reader, cmdOut, cmdErr io.Writer, cmd *cobr
outputFormat
:=
cmdutil
.
GetFlagString
(
cmd
,
"output"
)
outputFormat
:=
cmdutil
.
GetFlagString
(
cmd
,
"output"
)
if
outputFormat
!=
""
||
cmdutil
.
GetDryRunFlag
(
cmd
)
{
if
outputFormat
!=
""
||
cmdutil
.
GetDryRunFlag
(
cmd
)
{
return
f
.
PrintObject
(
cmd
,
mapper
,
obj
,
cmdOut
)
return
f
.
PrintObject
(
cmd
,
false
,
mapper
,
obj
,
cmdOut
)
}
}
cmdutil
.
PrintSuccess
(
mapper
,
false
,
cmdOut
,
mapping
.
Resource
,
args
[
0
],
cmdutil
.
GetDryRunFlag
(
cmd
),
"created"
)
cmdutil
.
PrintSuccess
(
mapper
,
false
,
cmdOut
,
mapping
.
Resource
,
args
[
0
],
cmdutil
.
GetDryRunFlag
(
cmd
),
"created"
)
return
nil
return
nil
...
@@ -556,7 +555,7 @@ func generateService(f cmdutil.Factory, cmd *cobra.Command, args []string, servi
...
@@ -556,7 +555,7 @@ func generateService(f cmdutil.Factory, cmd *cobra.Command, args []string, servi
}
}
if
cmdutil
.
GetFlagString
(
cmd
,
"output"
)
!=
""
||
cmdutil
.
GetDryRunFlag
(
cmd
)
{
if
cmdutil
.
GetFlagString
(
cmd
,
"output"
)
!=
""
||
cmdutil
.
GetDryRunFlag
(
cmd
)
{
err
:=
f
.
PrintObject
(
cmd
,
mapper
,
obj
,
out
)
err
:=
f
.
PrintObject
(
cmd
,
false
,
mapper
,
obj
,
out
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
...
...
pkg/kubectl/cmd/scale.go
View file @
d0366861
...
@@ -98,8 +98,8 @@ func RunScale(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []strin
...
@@ -98,8 +98,8 @@ func RunScale(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []strin
return
err
return
err
}
}
mapper
,
typer
:=
f
.
Object
()
mapper
,
_
:=
f
.
Object
()
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
r
:=
f
.
NewBuilder
(
true
)
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
options
)
.
FilenameParam
(
enforceNamespace
,
options
)
.
...
...
pkg/kubectl/cmd/set/set_image.go
View file @
d0366861
...
@@ -54,7 +54,7 @@ type ImageOptions struct {
...
@@ -54,7 +54,7 @@ type ImageOptions struct {
Cmd
*
cobra
.
Command
Cmd
*
cobra
.
Command
ResolveImage
func
(
in
string
)
(
string
,
error
)
ResolveImage
func
(
in
string
)
(
string
,
error
)
PrintObject
func
(
cmd
*
cobra
.
Command
,
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
PrintObject
func
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
UpdatePodSpecForObject
func
(
obj
runtime
.
Object
,
fn
func
(
*
api
.
PodSpec
)
error
)
(
bool
,
error
)
UpdatePodSpecForObject
func
(
obj
runtime
.
Object
,
fn
func
(
*
api
.
PodSpec
)
error
)
(
bool
,
error
)
Resources
[]
string
Resources
[]
string
ContainerImages
map
[
string
]
string
ContainerImages
map
[
string
]
string
...
@@ -137,7 +137,7 @@ func (o *ImageOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args []st
...
@@ -137,7 +137,7 @@ func (o *ImageOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args []st
return
err
return
err
}
}
builder
:=
resource
.
NewBuilder
(
o
.
Mapper
,
f
.
CategoryExpander
(),
o
.
Typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
builder
:=
f
.
NewBuilder
(
!
o
.
Local
)
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
...
@@ -227,7 +227,7 @@ func (o *ImageOptions) Run() error {
...
@@ -227,7 +227,7 @@ func (o *ImageOptions) Run() error {
}
}
if
o
.
PrintObject
!=
nil
&&
(
o
.
Local
||
o
.
DryRun
)
{
if
o
.
PrintObject
!=
nil
&&
(
o
.
Local
||
o
.
DryRun
)
{
return
o
.
PrintObject
(
o
.
Cmd
,
o
.
Mapper
,
info
.
Object
,
o
.
Out
)
return
o
.
PrintObject
(
o
.
Cmd
,
o
.
Local
,
o
.
Mapper
,
info
.
Object
,
o
.
Out
)
}
}
// patch the change
// patch the change
...
@@ -250,7 +250,7 @@ func (o *ImageOptions) Run() error {
...
@@ -250,7 +250,7 @@ func (o *ImageOptions) Run() error {
info
.
Refresh
(
obj
,
true
)
info
.
Refresh
(
obj
,
true
)
if
len
(
o
.
Output
)
>
0
{
if
len
(
o
.
Output
)
>
0
{
return
o
.
PrintObject
(
o
.
Cmd
,
o
.
Mapper
,
obj
,
o
.
Out
)
return
o
.
PrintObject
(
o
.
Cmd
,
o
.
Local
,
o
.
Mapper
,
obj
,
o
.
Out
)
}
}
cmdutil
.
PrintSuccess
(
o
.
Mapper
,
o
.
ShortOutput
,
o
.
Out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
o
.
DryRun
,
"image updated"
)
cmdutil
.
PrintSuccess
(
o
.
Mapper
,
o
.
ShortOutput
,
o
.
Out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
o
.
DryRun
,
"image updated"
)
}
}
...
...
pkg/kubectl/cmd/set/set_resources.go
View file @
d0366861
...
@@ -81,7 +81,7 @@ type ResourcesOptions struct {
...
@@ -81,7 +81,7 @@ type ResourcesOptions struct {
Requests
string
Requests
string
ResourceRequirements
api
.
ResourceRequirements
ResourceRequirements
api
.
ResourceRequirements
PrintObject
func
(
cmd
*
cobra
.
Command
,
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
PrintObject
func
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
UpdatePodSpecForObject
func
(
obj
runtime
.
Object
,
fn
func
(
*
api
.
PodSpec
)
error
)
(
bool
,
error
)
UpdatePodSpecForObject
func
(
obj
runtime
.
Object
,
fn
func
(
*
api
.
PodSpec
)
error
)
(
bool
,
error
)
Resources
[]
string
Resources
[]
string
}
}
...
@@ -141,12 +141,13 @@ func (o *ResourcesOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args
...
@@ -141,12 +141,13 @@ func (o *ResourcesOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args
return
err
return
err
}
}
builder
:=
resource
.
NewBuilder
(
o
.
Mapper
,
f
.
CategoryExpander
(),
o
.
Typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
builder
:=
f
.
NewBuilder
(
!
o
.
Local
)
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
//FilenameParam(enforceNamespace, o.Filenames...).
//FilenameParam(enforceNamespace, o.Filenames...).
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
Flatten
()
Flatten
()
if
!
o
.
Local
{
if
!
o
.
Local
{
builder
=
builder
.
builder
=
builder
.
SelectorParam
(
o
.
Selector
)
.
SelectorParam
(
o
.
Selector
)
.
...
@@ -223,7 +224,7 @@ func (o *ResourcesOptions) Run() error {
...
@@ -223,7 +224,7 @@ func (o *ResourcesOptions) Run() error {
}
}
if
o
.
Local
||
cmdutil
.
GetDryRunFlag
(
o
.
Cmd
)
{
if
o
.
Local
||
cmdutil
.
GetDryRunFlag
(
o
.
Cmd
)
{
return
o
.
PrintObject
(
o
.
Cmd
,
o
.
Mapper
,
info
.
Object
,
o
.
Out
)
return
o
.
PrintObject
(
o
.
Cmd
,
o
.
Local
,
o
.
Mapper
,
info
.
Object
,
o
.
Out
)
}
}
obj
,
err
:=
resource
.
NewHelper
(
info
.
Client
,
info
.
Mapping
)
.
Patch
(
info
.
Namespace
,
info
.
Name
,
types
.
StrategicMergePatchType
,
patch
.
Patch
)
obj
,
err
:=
resource
.
NewHelper
(
info
.
Client
,
info
.
Mapping
)
.
Patch
(
info
.
Namespace
,
info
.
Name
,
types
.
StrategicMergePatchType
,
patch
.
Patch
)
...
...
pkg/kubectl/cmd/set/set_selector.go
View file @
d0366861
...
@@ -117,14 +117,20 @@ func (o *SelectorOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args [
...
@@ -117,14 +117,20 @@ func (o *SelectorOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args [
o
.
mapper
=
mapper
o
.
mapper
=
mapper
o
.
encoder
=
f
.
JSONEncoder
()
o
.
encoder
=
f
.
JSONEncoder
()
o
.
builder
=
f
.
NewBuilder
()
.
o
.
builder
=
f
.
NewBuilder
(
!
o
.
local
)
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
&
o
.
fileOptions
)
.
FilenameParam
(
enforceNamespace
,
&
o
.
fileOptions
)
.
Flatten
()
Flatten
()
if
!
o
.
local
{
o
.
builder
=
o
.
builder
.
ResourceTypeOrNameArgs
(
o
.
all
,
o
.
resources
...
)
.
Latest
()
}
o
.
PrintObject
=
func
(
obj
runtime
.
Object
)
error
{
o
.
PrintObject
=
func
(
obj
runtime
.
Object
)
error
{
return
f
.
PrintObject
(
cmd
,
mapper
,
obj
,
o
.
out
)
return
f
.
PrintObject
(
cmd
,
o
.
local
,
mapper
,
obj
,
o
.
out
)
}
}
o
.
ClientForMapping
=
func
(
mapping
*
meta
.
RESTMapping
)
(
resource
.
RESTClient
,
error
)
{
o
.
ClientForMapping
=
func
(
mapping
*
meta
.
RESTMapping
)
(
resource
.
RESTClient
,
error
)
{
return
f
.
ClientForMapping
(
mapping
)
return
f
.
ClientForMapping
(
mapping
)
...
@@ -147,10 +153,6 @@ func (o *SelectorOptions) Validate() error {
...
@@ -147,10 +153,6 @@ func (o *SelectorOptions) Validate() error {
// RunSelector executes the command.
// RunSelector executes the command.
func
(
o
*
SelectorOptions
)
RunSelector
()
error
{
func
(
o
*
SelectorOptions
)
RunSelector
()
error
{
if
!
o
.
local
{
o
.
builder
=
o
.
builder
.
ResourceTypeOrNameArgs
(
o
.
all
,
o
.
resources
...
)
.
Latest
()
}
r
:=
o
.
builder
.
Do
()
r
:=
o
.
builder
.
Do
()
err
:=
r
.
Err
()
err
:=
r
.
Err
()
if
err
!=
nil
{
if
err
!=
nil
{
...
...
pkg/kubectl/cmd/set/set_subject.go
View file @
d0366861
...
@@ -115,7 +115,7 @@ func (o *SubjectOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args []
...
@@ -115,7 +115,7 @@ func (o *SubjectOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args []
o
.
ShortOutput
=
cmdutil
.
GetFlagString
(
cmd
,
"output"
)
==
"name"
o
.
ShortOutput
=
cmdutil
.
GetFlagString
(
cmd
,
"output"
)
==
"name"
o
.
DryRun
=
cmdutil
.
GetDryRunFlag
(
cmd
)
o
.
DryRun
=
cmdutil
.
GetDryRunFlag
(
cmd
)
o
.
PrintObject
=
func
(
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
{
o
.
PrintObject
=
func
(
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
{
return
f
.
PrintObject
(
cmd
,
mapper
,
obj
,
out
)
return
f
.
PrintObject
(
cmd
,
o
.
Local
,
mapper
,
obj
,
out
)
}
}
cmdNamespace
,
enforceNamespace
,
err
:=
f
.
DefaultNamespace
()
cmdNamespace
,
enforceNamespace
,
err
:=
f
.
DefaultNamespace
()
...
@@ -123,11 +123,12 @@ func (o *SubjectOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args []
...
@@ -123,11 +123,12 @@ func (o *SubjectOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args []
return
err
return
err
}
}
builder
:=
resource
.
NewBuilder
(
o
.
Mapper
,
f
.
CategoryExpander
(),
o
.
Typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
builder
:=
f
.
NewBuilder
(
!
o
.
Local
)
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
FilenameParam
(
enforceNamespace
,
&
o
.
FilenameOptions
)
.
Flatten
()
Flatten
()
if
!
o
.
Local
{
if
!
o
.
Local
{
builder
=
builder
.
builder
=
builder
.
SelectorParam
(
o
.
Selector
)
.
SelectorParam
(
o
.
Selector
)
.
...
...
pkg/kubectl/cmd/stop.go
View file @
d0366861
...
@@ -83,8 +83,8 @@ func RunStop(f cmdutil.Factory, cmd *cobra.Command, args []string, out io.Writer
...
@@ -83,8 +83,8 @@ func RunStop(f cmdutil.Factory, cmd *cobra.Command, args []string, out io.Writer
return
err
return
err
}
}
mapper
,
typer
:=
f
.
Object
()
mapper
,
_
:=
f
.
Object
()
r
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
)
)
.
r
:=
f
.
NewBuilder
(
true
)
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
NamespaceParam
(
cmdNamespace
)
.
DefaultNamespace
()
.
ResourceTypeOrNameArgs
(
false
,
args
...
)
.
ResourceTypeOrNameArgs
(
false
,
args
...
)
.
...
...
pkg/kubectl/cmd/taint.go
View file @
d0366861
...
@@ -246,8 +246,7 @@ func (o *TaintOptions) Complete(f cmdutil.Factory, out io.Writer, cmd *cobra.Com
...
@@ -246,8 +246,7 @@ func (o *TaintOptions) Complete(f cmdutil.Factory, out io.Writer, cmd *cobra.Com
if
o
.
taintsToAdd
,
o
.
taintsToRemove
,
err
=
parseTaints
(
taintArgs
);
err
!=
nil
{
if
o
.
taintsToAdd
,
o
.
taintsToRemove
,
err
=
parseTaints
(
taintArgs
);
err
!=
nil
{
return
cmdutil
.
UsageError
(
cmd
,
err
.
Error
())
return
cmdutil
.
UsageError
(
cmd
,
err
.
Error
())
}
}
mapper
,
typer
:=
f
.
Object
()
o
.
builder
=
f
.
NewBuilder
(
true
)
.
o
.
builder
=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
))
.
ContinueOnError
()
.
ContinueOnError
()
.
NamespaceParam
(
namespace
)
.
DefaultNamespace
()
NamespaceParam
(
namespace
)
.
DefaultNamespace
()
if
o
.
selector
!=
""
{
if
o
.
selector
!=
""
{
...
@@ -373,7 +372,7 @@ func (o TaintOptions) RunTaint() error {
...
@@ -373,7 +372,7 @@ func (o TaintOptions) RunTaint() error {
mapper
,
_
:=
o
.
f
.
Object
()
mapper
,
_
:=
o
.
f
.
Object
()
outputFormat
:=
cmdutil
.
GetFlagString
(
o
.
cmd
,
"output"
)
outputFormat
:=
cmdutil
.
GetFlagString
(
o
.
cmd
,
"output"
)
if
outputFormat
!=
""
{
if
outputFormat
!=
""
{
return
o
.
f
.
PrintObject
(
o
.
cmd
,
mapper
,
outputObj
,
o
.
out
)
return
o
.
f
.
PrintObject
(
o
.
cmd
,
false
,
mapper
,
outputObj
,
o
.
out
)
}
}
cmdutil
.
PrintSuccess
(
mapper
,
false
,
o
.
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
false
,
operation
)
cmdutil
.
PrintSuccess
(
mapper
,
false
,
o
.
out
,
info
.
Mapping
.
Resource
,
info
.
Name
,
false
,
operation
)
...
...
pkg/kubectl/cmd/testing/BUILD
View file @
d0366861
...
@@ -29,6 +29,7 @@ go_library(
...
@@ -29,6 +29,7 @@ go_library(
"//vendor/github.com/spf13/pflag:go_default_library",
"//vendor/github.com/spf13/pflag:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/api/meta:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/api/meta:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/runtime/serializer:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/runtime/serializer:go_default_library",
...
...
pkg/kubectl/cmd/testing/fake.go
View file @
d0366861
...
@@ -29,6 +29,7 @@ import (
...
@@ -29,6 +29,7 @@ import (
"k8s.io/apimachinery/pkg/api/meta"
"k8s.io/apimachinery/pkg/api/meta"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/runtime/serializer"
"k8s.io/apimachinery/pkg/runtime/serializer"
...
@@ -337,7 +338,7 @@ func (f *FakeFactory) Describer(*meta.RESTMapping) (printers.Describer, error) {
...
@@ -337,7 +338,7 @@ func (f *FakeFactory) Describer(*meta.RESTMapping) (printers.Describer, error) {
return
f
.
tf
.
Describer
,
f
.
tf
.
Err
return
f
.
tf
.
Describer
,
f
.
tf
.
Err
}
}
func
(
f
*
FakeFactory
)
PrinterForCommand
(
cmd
*
cobra
.
Command
,
outputOpts
*
printers
.
OutputOptions
,
options
printers
.
PrintOptions
)
(
printers
.
ResourcePrinter
,
error
)
{
func
(
f
*
FakeFactory
)
PrinterForCommand
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
outputOpts
*
printers
.
OutputOptions
,
options
printers
.
PrintOptions
)
(
printers
.
ResourcePrinter
,
error
)
{
return
f
.
tf
.
Printer
,
f
.
tf
.
Err
return
f
.
tf
.
Printer
,
f
.
tf
.
Err
}
}
...
@@ -457,18 +458,31 @@ func (f *FakeFactory) BindFlags(flags *pflag.FlagSet) {
...
@@ -457,18 +458,31 @@ func (f *FakeFactory) BindFlags(flags *pflag.FlagSet) {
func
(
f
*
FakeFactory
)
BindExternalFlags
(
flags
*
pflag
.
FlagSet
)
{
func
(
f
*
FakeFactory
)
BindExternalFlags
(
flags
*
pflag
.
FlagSet
)
{
}
}
func
(
f
*
FakeFactory
)
PrintObject
(
cmd
*
cobra
.
Command
,
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
{
func
(
f
*
FakeFactory
)
PrintObject
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
{
return
nil
return
nil
}
}
func
(
f
*
FakeFactory
)
PrinterForMapping
(
cmd
*
cobra
.
Command
,
outputOpts
*
printers
.
OutputOptions
,
mapping
*
meta
.
RESTMapping
,
withNamespace
bool
)
(
printers
.
ResourcePrinter
,
error
)
{
func
(
f
*
FakeFactory
)
PrinterForMapping
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
outputOpts
*
printers
.
OutputOptions
,
mapping
*
meta
.
RESTMapping
,
withNamespace
bool
)
(
printers
.
ResourcePrinter
,
error
)
{
return
f
.
tf
.
Printer
,
f
.
tf
.
Err
return
f
.
tf
.
Printer
,
f
.
tf
.
Err
}
}
func
(
f
*
FakeFactory
)
NewBuilder
()
*
resource
.
Builder
{
func
(
f
*
FakeFactory
)
NewBuilder
(
allowRemoteCalls
bool
)
*
resource
.
Builder
{
return
nil
return
nil
}
}
func
(
f
*
FakeFactory
)
NewUnstructuredBuilder
(
allowRemoteCalls
bool
)
(
*
resource
.
Builder
,
error
)
{
if
!
allowRemoteCalls
{
return
f
.
NewBuilder
(
allowRemoteCalls
),
nil
}
mapper
,
typer
,
err
:=
f
.
UnstructuredObject
()
if
err
!=
nil
{
return
nil
,
err
}
return
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
),
nil
}
func
(
f
*
FakeFactory
)
DefaultResourceFilterOptions
(
cmd
*
cobra
.
Command
,
withNamespace
bool
)
*
printers
.
PrintOptions
{
func
(
f
*
FakeFactory
)
DefaultResourceFilterOptions
(
cmd
*
cobra
.
Command
,
withNamespace
bool
)
*
printers
.
PrintOptions
{
return
&
printers
.
PrintOptions
{}
return
&
printers
.
PrintOptions
{}
}
}
...
@@ -618,7 +632,7 @@ func (f *fakeAPIFactory) UnstructuredClientForMapping(m *meta.RESTMapping) (reso
...
@@ -618,7 +632,7 @@ func (f *fakeAPIFactory) UnstructuredClientForMapping(m *meta.RESTMapping) (reso
return
f
.
tf
.
UnstructuredClient
,
f
.
tf
.
Err
return
f
.
tf
.
UnstructuredClient
,
f
.
tf
.
Err
}
}
func
(
f
*
fakeAPIFactory
)
PrinterForCommand
(
cmd
*
cobra
.
Command
,
outputOpts
*
printers
.
OutputOptions
,
options
printers
.
PrintOptions
)
(
printers
.
ResourcePrinter
,
error
)
{
func
(
f
*
fakeAPIFactory
)
PrinterForCommand
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
outputOpts
*
printers
.
OutputOptions
,
options
printers
.
PrintOptions
)
(
printers
.
ResourcePrinter
,
error
)
{
return
f
.
tf
.
Printer
,
f
.
tf
.
Err
return
f
.
tf
.
Printer
,
f
.
tf
.
Err
}
}
...
@@ -681,7 +695,7 @@ func (f *fakeAPIFactory) Generators(cmdName string) map[string]kubectl.Generator
...
@@ -681,7 +695,7 @@ func (f *fakeAPIFactory) Generators(cmdName string) map[string]kubectl.Generator
return
cmdutil
.
DefaultGenerators
(
cmdName
)
return
cmdutil
.
DefaultGenerators
(
cmdName
)
}
}
func
(
f
*
fakeAPIFactory
)
PrintObject
(
cmd
*
cobra
.
Command
,
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
{
func
(
f
*
fakeAPIFactory
)
PrintObject
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
{
gvks
,
_
,
err
:=
api
.
Scheme
.
ObjectKinds
(
obj
)
gvks
,
_
,
err
:=
api
.
Scheme
.
ObjectKinds
(
obj
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
...
@@ -692,23 +706,36 @@ func (f *fakeAPIFactory) PrintObject(cmd *cobra.Command, mapper meta.RESTMapper,
...
@@ -692,23 +706,36 @@ func (f *fakeAPIFactory) PrintObject(cmd *cobra.Command, mapper meta.RESTMapper,
return
err
return
err
}
}
printer
,
err
:=
f
.
PrinterForMapping
(
cmd
,
nil
,
mapping
,
false
)
printer
,
err
:=
f
.
PrinterForMapping
(
cmd
,
isLocal
,
nil
,
mapping
,
false
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
return
printer
.
PrintObj
(
obj
,
out
)
return
printer
.
PrintObj
(
obj
,
out
)
}
}
func
(
f
*
fakeAPIFactory
)
PrinterForMapping
(
cmd
*
cobra
.
Command
,
outputOpts
*
printers
.
OutputOptions
,
mapping
*
meta
.
RESTMapping
,
withNamespace
bool
)
(
printers
.
ResourcePrinter
,
error
)
{
func
(
f
*
fakeAPIFactory
)
PrinterForMapping
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
outputOpts
*
printers
.
OutputOptions
,
mapping
*
meta
.
RESTMapping
,
withNamespace
bool
)
(
printers
.
ResourcePrinter
,
error
)
{
return
f
.
tf
.
Printer
,
f
.
tf
.
Err
return
f
.
tf
.
Printer
,
f
.
tf
.
Err
}
}
func
(
f
*
fakeAPIFactory
)
NewBuilder
()
*
resource
.
Builder
{
func
(
f
*
fakeAPIFactory
)
NewBuilder
(
allowRemoteCalls
bool
)
*
resource
.
Builder
{
mapper
,
typer
:=
f
.
Object
()
mapper
,
typer
:=
f
.
Object
()
return
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
))
return
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
ClientForMapping
),
f
.
Decoder
(
true
))
}
}
func
(
f
*
fakeAPIFactory
)
NewUnstructuredBuilder
(
allowRemoteCalls
bool
)
(
*
resource
.
Builder
,
error
)
{
if
!
allowRemoteCalls
{
return
f
.
NewBuilder
(
allowRemoteCalls
),
nil
}
mapper
,
typer
,
err
:=
f
.
UnstructuredObject
()
if
err
!=
nil
{
return
nil
,
err
}
return
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
),
nil
}
func
(
f
*
fakeAPIFactory
)
SuggestedPodTemplateResources
()
[]
schema
.
GroupResource
{
func
(
f
*
fakeAPIFactory
)
SuggestedPodTemplateResources
()
[]
schema
.
GroupResource
{
return
[]
schema
.
GroupResource
{}
return
[]
schema
.
GroupResource
{}
}
}
...
...
pkg/kubectl/cmd/util/editor/editoptions.go
View file @
d0366861
...
@@ -104,7 +104,11 @@ func (o *EditOptions) Complete(f cmdutil.Factory, out, errOut io.Writer, args []
...
@@ -104,7 +104,11 @@ func (o *EditOptions) Complete(f cmdutil.Factory, out, errOut io.Writer, args []
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
b
:=
resource
.
NewBuilder
(
mapper
,
f
.
CategoryExpander
(),
typer
,
resource
.
ClientMapperFunc
(
f
.
UnstructuredClientForMapping
),
unstructured
.
UnstructuredJSONScheme
)
b
,
err
:=
f
.
NewUnstructuredBuilder
(
true
)
if
err
!=
nil
{
return
err
}
if
o
.
EditMode
==
NormalEditMode
||
o
.
EditMode
==
ApplyEditMode
{
if
o
.
EditMode
==
NormalEditMode
||
o
.
EditMode
==
ApplyEditMode
{
// when do normal edit or apply edit we need to always retrieve the latest resource from server
// when do normal edit or apply edit we need to always retrieve the latest resource from server
b
=
b
.
ResourceTypeOrNameArgs
(
true
,
args
...
)
.
Latest
()
b
=
b
.
ResourceTypeOrNameArgs
(
true
,
args
...
)
.
Latest
()
...
...
pkg/kubectl/cmd/util/factory.go
View file @
d0366861
...
@@ -233,16 +233,18 @@ type BuilderFactory interface {
...
@@ -233,16 +233,18 @@ type BuilderFactory interface {
// are declared on the command (see AddPrinterFlags). Returns a printer, or an error if a printer
// are declared on the command (see AddPrinterFlags). Returns a printer, or an error if a printer
// could not be found.
// could not be found.
// TODO: Break the dependency on cmd here.
// TODO: Break the dependency on cmd here.
PrinterForCommand
(
cmd
*
cobra
.
Command
,
outputOpts
*
printers
.
OutputOptions
,
options
printers
.
PrintOptions
)
(
printers
.
ResourcePrinter
,
error
)
PrinterForCommand
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
outputOpts
*
printers
.
OutputOptions
,
options
printers
.
PrintOptions
)
(
printers
.
ResourcePrinter
,
error
)
// PrinterForMapping returns a printer suitable for displaying the provided resource type.
// PrinterForMapping returns a printer suitable for displaying the provided resource type.
// Requires that printer flags have been added to cmd (see AddPrinterFlags).
// Requires that printer flags have been added to cmd (see AddPrinterFlags).
// Returns a printer, true if the printer is generic (is not internal), or
// Returns a printer, true if the printer is generic (is not internal), or
// an error if a printer could not be found.
// an error if a printer could not be found.
PrinterForMapping
(
cmd
*
cobra
.
Command
,
outputOpts
*
printers
.
OutputOptions
,
mapping
*
meta
.
RESTMapping
,
withNamespace
bool
)
(
printers
.
ResourcePrinter
,
error
)
PrinterForMapping
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
outputOpts
*
printers
.
OutputOptions
,
mapping
*
meta
.
RESTMapping
,
withNamespace
bool
)
(
printers
.
ResourcePrinter
,
error
)
// PrintObject prints an api object given command line flags to modify the output format
// PrintObject prints an api object given command line flags to modify the output format
PrintObject
(
cmd
*
cobra
.
Command
,
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
PrintObject
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
// One stop shopping for a Builder
// One stop shopping for a Builder
NewBuilder
()
*
resource
.
Builder
NewBuilder
(
allowRemoteCalls
bool
)
*
resource
.
Builder
// Resource builder for working with unstructured objects
NewUnstructuredBuilder
(
allowRemoteCalls
bool
)
(
*
resource
.
Builder
,
error
)
// PluginLoader provides the implementation to be used to load cli plugins.
// PluginLoader provides the implementation to be used to load cli plugins.
PluginLoader
()
plugins
.
PluginLoader
PluginLoader
()
plugins
.
PluginLoader
// PluginRunner provides the implementation to be used to run cli plugins.
// PluginRunner provides the implementation to be used to run cli plugins.
...
...
pkg/kubectl/cmd/util/factory_builder.go
View file @
d0366861
...
@@ -28,6 +28,7 @@ import (
...
@@ -28,6 +28,7 @@ import (
"k8s.io/apimachinery/pkg/api/meta"
"k8s.io/apimachinery/pkg/api/meta"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/kubectl/plugins"
"k8s.io/kubernetes/pkg/kubectl/plugins"
"k8s.io/kubernetes/pkg/kubectl/resource"
"k8s.io/kubernetes/pkg/kubectl/resource"
"k8s.io/kubernetes/pkg/printers"
"k8s.io/kubernetes/pkg/printers"
...
@@ -48,10 +49,19 @@ func NewBuilderFactory(clientAccessFactory ClientAccessFactory, objectMappingFac
...
@@ -48,10 +49,19 @@ func NewBuilderFactory(clientAccessFactory ClientAccessFactory, objectMappingFac
return
f
return
f
}
}
func
(
f
*
ring2Factory
)
PrinterForCommand
(
cmd
*
cobra
.
Command
,
outputOpts
*
printers
.
OutputOptions
,
options
printers
.
PrintOptions
)
(
printers
.
ResourcePrinter
,
error
)
{
func
(
f
*
ring2Factory
)
PrinterForCommand
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
outputOpts
*
printers
.
OutputOptions
,
options
printers
.
PrintOptions
)
(
printers
.
ResourcePrinter
,
error
)
{
mapper
,
typer
,
err
:=
f
.
objectMappingFactory
.
UnstructuredObject
()
var
mapper
meta
.
RESTMapper
if
err
!=
nil
{
var
typer
runtime
.
ObjectTyper
return
nil
,
err
var
err
error
if
isLocal
{
mapper
=
api
.
Registry
.
RESTMapper
()
typer
=
api
.
Scheme
}
else
{
mapper
,
typer
,
err
=
f
.
objectMappingFactory
.
UnstructuredObject
()
if
err
!=
nil
{
return
nil
,
err
}
}
}
// TODO: used by the custom column implementation and the name implementation, break this dependency
// TODO: used by the custom column implementation and the name implementation, break this dependency
decoders
:=
[]
runtime
.
Decoder
{
f
.
clientAccessFactory
.
Decoder
(
true
),
unstructured
.
UnstructuredJSONScheme
}
decoders
:=
[]
runtime
.
Decoder
{
f
.
clientAccessFactory
.
Decoder
(
true
),
unstructured
.
UnstructuredJSONScheme
}
...
@@ -59,7 +69,7 @@ func (f *ring2Factory) PrinterForCommand(cmd *cobra.Command, outputOpts *printer
...
@@ -59,7 +69,7 @@ func (f *ring2Factory) PrinterForCommand(cmd *cobra.Command, outputOpts *printer
return
PrinterForCommand
(
cmd
,
outputOpts
,
mapper
,
typer
,
encoder
,
decoders
,
options
)
return
PrinterForCommand
(
cmd
,
outputOpts
,
mapper
,
typer
,
encoder
,
decoders
,
options
)
}
}
func
(
f
*
ring2Factory
)
PrinterForMapping
(
cmd
*
cobra
.
Command
,
outputOpts
*
printers
.
OutputOptions
,
mapping
*
meta
.
RESTMapping
,
withNamespace
bool
)
(
printers
.
ResourcePrinter
,
error
)
{
func
(
f
*
ring2Factory
)
PrinterForMapping
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
outputOpts
*
printers
.
OutputOptions
,
mapping
*
meta
.
RESTMapping
,
withNamespace
bool
)
(
printers
.
ResourcePrinter
,
error
)
{
// Some callers do not have "label-columns" so we can't use the GetFlagStringSlice() helper
// Some callers do not have "label-columns" so we can't use the GetFlagStringSlice() helper
columnLabel
,
err
:=
cmd
.
Flags
()
.
GetStringSlice
(
"label-columns"
)
columnLabel
,
err
:=
cmd
.
Flags
()
.
GetStringSlice
(
"label-columns"
)
if
err
!=
nil
{
if
err
!=
nil
{
...
@@ -76,7 +86,7 @@ func (f *ring2Factory) PrinterForMapping(cmd *cobra.Command, outputOpts *printer
...
@@ -76,7 +86,7 @@ func (f *ring2Factory) PrinterForMapping(cmd *cobra.Command, outputOpts *printer
ColumnLabels
:
columnLabel
,
ColumnLabels
:
columnLabel
,
}
}
printer
,
err
:=
f
.
PrinterForCommand
(
cmd
,
outputOpts
,
options
)
printer
,
err
:=
f
.
PrinterForCommand
(
cmd
,
isLocal
,
outputOpts
,
options
)
if
err
!=
nil
{
if
err
!=
nil
{
return
nil
,
err
return
nil
,
err
}
}
...
@@ -108,7 +118,7 @@ func (f *ring2Factory) PrinterForMapping(cmd *cobra.Command, outputOpts *printer
...
@@ -108,7 +118,7 @@ func (f *ring2Factory) PrinterForMapping(cmd *cobra.Command, outputOpts *printer
return
printer
,
nil
return
printer
,
nil
}
}
func
(
f
*
ring2Factory
)
PrintObject
(
cmd
*
cobra
.
Command
,
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
{
func
(
f
*
ring2Factory
)
PrintObject
(
cmd
*
cobra
.
Command
,
isLocal
bool
,
mapper
meta
.
RESTMapper
,
obj
runtime
.
Object
,
out
io
.
Writer
)
error
{
// try to get a typed object
// try to get a typed object
_
,
typer
:=
f
.
objectMappingFactory
.
Object
()
_
,
typer
:=
f
.
objectMappingFactory
.
Object
()
gvks
,
_
,
err
:=
typer
.
ObjectKinds
(
obj
)
gvks
,
_
,
err
:=
typer
.
ObjectKinds
(
obj
)
...
@@ -132,18 +142,46 @@ func (f *ring2Factory) PrintObject(cmd *cobra.Command, mapper meta.RESTMapper, o
...
@@ -132,18 +142,46 @@ func (f *ring2Factory) PrintObject(cmd *cobra.Command, mapper meta.RESTMapper, o
return
err
return
err
}
}
printer
,
err
:=
f
.
PrinterForMapping
(
cmd
,
nil
,
mapping
,
false
)
printer
,
err
:=
f
.
PrinterForMapping
(
cmd
,
isLocal
,
nil
,
mapping
,
false
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
return
printer
.
PrintObj
(
obj
,
out
)
return
printer
.
PrintObj
(
obj
,
out
)
}
}
func
(
f
*
ring2Factory
)
NewBuilder
()
*
resource
.
Builder
{
// NewBuilder returns a new resource builder.
// Receives a bool flag and avoids remote calls if set to false
func
(
f
*
ring2Factory
)
NewBuilder
(
allowRemoteCalls
bool
)
*
resource
.
Builder
{
var
clientMapper
resource
.
ClientMapper
clientMapperFunc
:=
resource
.
ClientMapperFunc
(
f
.
objectMappingFactory
.
ClientForMapping
)
mapper
,
typer
:=
f
.
objectMappingFactory
.
Object
()
mapper
,
typer
:=
f
.
objectMappingFactory
.
Object
()
categoryExpander
:=
f
.
objectMappingFactory
.
CategoryExpander
()
categoryExpander
:=
f
.
objectMappingFactory
.
CategoryExpander
()
return
resource
.
NewBuilder
(
mapper
,
categoryExpander
,
typer
,
resource
.
ClientMapperFunc
(
f
.
objectMappingFactory
.
ClientForMapping
),
f
.
clientAccessFactory
.
Decoder
(
true
))
if
allowRemoteCalls
{
clientMapper
=
clientMapperFunc
}
else
{
clientMapper
=
resource
.
DisabledClientForMapping
{
ClientMapper
:
clientMapperFunc
}
}
return
resource
.
NewBuilder
(
mapper
,
categoryExpander
,
typer
,
clientMapper
,
f
.
clientAccessFactory
.
Decoder
(
true
))
}
func
(
f
*
ring2Factory
)
NewUnstructuredBuilder
(
allowRemoteCalls
bool
)
(
*
resource
.
Builder
,
error
)
{
if
!
allowRemoteCalls
{
return
f
.
NewBuilder
(
allowRemoteCalls
),
nil
}
clientMapperFunc
:=
resource
.
ClientMapperFunc
(
f
.
objectMappingFactory
.
UnstructuredClientForMapping
)
mapper
,
typer
,
err
:=
f
.
objectMappingFactory
.
UnstructuredObject
()
if
err
!=
nil
{
return
nil
,
err
}
categoryExpander
:=
f
.
objectMappingFactory
.
CategoryExpander
()
return
resource
.
NewBuilder
(
mapper
,
categoryExpander
,
typer
,
clientMapperFunc
,
unstructured
.
UnstructuredJSONScheme
),
nil
}
}
// PluginLoader loads plugins from a path set by the KUBECTL_PLUGINS_PATH env var.
// PluginLoader loads plugins from a path set by the KUBECTL_PLUGINS_PATH env var.
...
...
pkg/kubectl/cmd/util/printing.go
View file @
d0366861
...
@@ -129,12 +129,12 @@ func PrinterForCommand(cmd *cobra.Command, outputOpts *printers.OutputOptions, m
...
@@ -129,12 +129,12 @@ func PrinterForCommand(cmd *cobra.Command, outputOpts *printers.OutputOptions, m
// object passed is non-generic, it attempts to print the object using a HumanReadablePrinter.
// object passed is non-generic, it attempts to print the object using a HumanReadablePrinter.
// Requires that printer flags have been added to cmd (see AddPrinterFlags).
// Requires that printer flags have been added to cmd (see AddPrinterFlags).
func
PrintResourceInfoForCommand
(
cmd
*
cobra
.
Command
,
info
*
resource
.
Info
,
f
Factory
,
out
io
.
Writer
)
error
{
func
PrintResourceInfoForCommand
(
cmd
*
cobra
.
Command
,
info
*
resource
.
Info
,
f
Factory
,
out
io
.
Writer
)
error
{
printer
,
err
:=
f
.
PrinterForCommand
(
cmd
,
nil
,
printers
.
PrintOptions
{})
printer
,
err
:=
f
.
PrinterForCommand
(
cmd
,
false
,
nil
,
printers
.
PrintOptions
{})
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
if
!
printer
.
IsGeneric
()
{
if
!
printer
.
IsGeneric
()
{
printer
,
err
=
f
.
PrinterForMapping
(
cmd
,
nil
,
nil
,
false
)
printer
,
err
=
f
.
PrinterForMapping
(
cmd
,
false
,
nil
,
nil
,
false
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
...
...
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