Merge pull request #81956 from apelisse/server-side-apply-beta

Server side apply beta

Kubernetes-commit: 991d71e9fe7da2035e06101f1b47cb8544592335
This commit is contained in:
Kubernetes Publisher 2019-08-29 19:56:16 -07:00
commit 2385566928
6 changed files with 29 additions and 29 deletions

10
Godeps/Godeps.json generated
View File

@ -548,11 +548,11 @@
},
{
"ImportPath": "k8s.io/api",
"Rev": "eb06f43765d3"
"Rev": "63b8484e5766"
},
{
"ImportPath": "k8s.io/apimachinery",
"Rev": "508c689428e4"
"Rev": "e709f673dfd9"
},
{
"ImportPath": "k8s.io/cli-runtime",
@ -560,11 +560,11 @@
},
{
"ImportPath": "k8s.io/client-go",
"Rev": "065c7aba1f3f"
"Rev": "326ca7a019c8"
},
{
"ImportPath": "k8s.io/code-generator",
"Rev": "79369ab2ae19"
"Rev": "e1805110f988"
},
{
"ImportPath": "k8s.io/component-base",
@ -584,7 +584,7 @@
},
{
"ImportPath": "k8s.io/metrics",
"Rev": "207193cd263a"
"Rev": "806c80b9816f"
},
{
"ImportPath": "k8s.io/utils",

18
go.mod
View File

@ -35,14 +35,14 @@ require (
golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f
gopkg.in/yaml.v2 v2.2.2
gotest.tools v2.2.0+incompatible // indirect
k8s.io/api v0.0.0-20190829194742-eb06f43765d3
k8s.io/apimachinery v0.0.0-20190829154700-508c689428e4
k8s.io/api v0.0.0-20190830034750-63b8484e5766
k8s.io/apimachinery v0.0.0-20190830034626-e709f673dfd9
k8s.io/cli-runtime v0.0.0-20190829195939-729e37b0deac
k8s.io/client-go v0.0.0-20190829155211-065c7aba1f3f
k8s.io/client-go v0.0.0-20190830034949-326ca7a019c8
k8s.io/component-base v0.0.0-20190829160041-be152a771707
k8s.io/klog v0.4.0
k8s.io/kube-openapi v0.0.0-20190709113604-33be087ad058
k8s.io/metrics v0.0.0-20190828120413-207193cd263a
k8s.io/metrics v0.0.0-20190830040341-806c80b9816f
k8s.io/utils v0.0.0-20190801114015-581e00157fb1
sigs.k8s.io/kustomize v2.0.3+incompatible
sigs.k8s.io/yaml v1.1.0
@ -56,11 +56,11 @@ replace (
golang.org/x/sys => golang.org/x/sys v0.0.0-20190209173611-3b5209105503
golang.org/x/text => golang.org/x/text v0.3.1-0.20181227161524-e6919f6577db
golang.org/x/time => golang.org/x/time v0.0.0-20161028155119-f51c12702a4d
k8s.io/api => k8s.io/api v0.0.0-20190829194742-eb06f43765d3
k8s.io/apimachinery => k8s.io/apimachinery v0.0.0-20190829154700-508c689428e4
k8s.io/api => k8s.io/api v0.0.0-20190830034750-63b8484e5766
k8s.io/apimachinery => k8s.io/apimachinery v0.0.0-20190830034626-e709f673dfd9
k8s.io/cli-runtime => k8s.io/cli-runtime v0.0.0-20190829195939-729e37b0deac
k8s.io/client-go => k8s.io/client-go v0.0.0-20190829155211-065c7aba1f3f
k8s.io/code-generator => k8s.io/code-generator v0.0.0-20190828114452-79369ab2ae19
k8s.io/client-go => k8s.io/client-go v0.0.0-20190830034949-326ca7a019c8
k8s.io/code-generator => k8s.io/code-generator v0.0.0-20190830010859-e1805110f988
k8s.io/component-base => k8s.io/component-base v0.0.0-20190829160041-be152a771707
k8s.io/metrics => k8s.io/metrics v0.0.0-20190828120413-207193cd263a
k8s.io/metrics => k8s.io/metrics v0.0.0-20190830040341-806c80b9816f
)

10
go.sum
View File

@ -273,11 +273,11 @@ gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo=
gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw=
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
k8s.io/api v0.0.0-20190829194742-eb06f43765d3/go.mod h1:87temCTGeJAq22HWTJDnKM9cT6PpMADm5DqxEe3uRnk=
k8s.io/apimachinery v0.0.0-20190829154700-508c689428e4/go.mod h1:OOC7vMsHyCzra5xu6r1bRXkXMH76iww9BeHOAAJof4U=
k8s.io/api v0.0.0-20190830034750-63b8484e5766/go.mod h1:ZPzpiABYnAONRNqslkGU1hppe1VEXgsEJlFRIbP75G8=
k8s.io/apimachinery v0.0.0-20190830034626-e709f673dfd9/go.mod h1:OOC7vMsHyCzra5xu6r1bRXkXMH76iww9BeHOAAJof4U=
k8s.io/cli-runtime v0.0.0-20190829195939-729e37b0deac/go.mod h1:/prHxT5vPcOwlCFxzAfH10i40j1ta2rMlDQOmKWzOTk=
k8s.io/client-go v0.0.0-20190829155211-065c7aba1f3f/go.mod h1:OTl/HIPWX8UHQQEslKfnYiXsTUfdVT1omr+YXmbJCI0=
k8s.io/code-generator v0.0.0-20190828114452-79369ab2ae19/go.mod h1:DcZnH9wu/rlc2W9W82F8WPyJRR2mJVZGNE1cA/Qn6zQ=
k8s.io/client-go v0.0.0-20190830034949-326ca7a019c8/go.mod h1:huNBVKTSC/El60xPK9hLr2PLP1Jhcyz4O6K25rRWvYk=
k8s.io/code-generator v0.0.0-20190830010859-e1805110f988/go.mod h1:DcZnH9wu/rlc2W9W82F8WPyJRR2mJVZGNE1cA/Qn6zQ=
k8s.io/component-base v0.0.0-20190829160041-be152a771707/go.mod h1:bAfLerY9PEE9mAANE1bydHRWmLL0Ql9gB3HG/39Vws4=
k8s.io/gengo v0.0.0-20190128074634-0689ccc1d7d6/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
k8s.io/gengo v0.0.0-20190822140433-26a664648505/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0=
@ -287,7 +287,7 @@ k8s.io/klog v0.4.0 h1:lCJCxf/LIowc2IGS9TPjWDyXY4nOmdGdfcwwDQCOURQ=
k8s.io/klog v0.4.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I=
k8s.io/kube-openapi v0.0.0-20190709113604-33be087ad058 h1:di3XCwddOR9cWBNpfgXaskhh6cgJuwcK54rvtwUaC10=
k8s.io/kube-openapi v0.0.0-20190709113604-33be087ad058/go.mod h1:nfDlWeOsu3pUf4yWGL+ERqohP4YsZcBJXWMK+gkzOA4=
k8s.io/metrics v0.0.0-20190828120413-207193cd263a/go.mod h1:bJFJ0I6BQ0IpZwcUkV2KaFE2Xygojk2E5ImHQGkH67o=
k8s.io/metrics v0.0.0-20190830040341-806c80b9816f/go.mod h1:1EfRMF68LK5NSWYzPkPmLUxjnu8lYsdtA9hkLsIoH5M=
k8s.io/utils v0.0.0-20190801114015-581e00157fb1 h1:+ySTxfHnfzZb9ys375PXNlLhkJPLKgHajBU0N62BDvE=
k8s.io/utils v0.0.0-20190801114015-581e00157fb1/go.mod h1:sZAwmy6armz5eXlNoLmJcl4F1QuKu7sr+mFQ0byX7Ew=
modernc.org/cc v1.0.0/go.mod h1:1Sk4//wdnYJiUIxnW8ddKpaOJCF37yAdqYnkxUpaYxw=

View File

@ -204,11 +204,11 @@ func (o *ApplyOptions) Complete(f cmdutil.Factory, cmd *cobra.Command) error {
o.DryRun = cmdutil.GetDryRunFlag(cmd)
if o.ForceConflicts && !o.ServerSideApply {
return fmt.Errorf("--experimental-force-conflicts only works with --experimental-server-side")
return fmt.Errorf("--force-conflicts only works with --server-side")
}
if o.DryRun && o.ServerSideApply {
return fmt.Errorf("--dry-run doesn't work with --experimental-server-side (did you mean --server-dry-run instead?)")
return fmt.Errorf("--dry-run doesn't work with --server-side (did you mean --server-dry-run instead?)")
}
if o.DryRun && o.ServerDryRun {

View File

@ -402,7 +402,7 @@ func (o *DiffOptions) Complete(f cmdutil.Factory, cmd *cobra.Command) error {
o.ServerSideApply = cmdutil.GetServerSideApplyFlag(cmd)
o.ForceConflicts = cmdutil.GetForceConflictsFlag(cmd)
if o.ForceConflicts && !o.ServerSideApply {
return fmt.Errorf("--experimental-force-conflicts only works with --experimental-server-side")
return fmt.Errorf("--force-conflicts only works with --server-side")
}
if !o.ServerSideApply {

View File

@ -26,7 +26,7 @@ import (
"strings"
"time"
"github.com/evanphx/json-patch"
jsonpatch "github.com/evanphx/json-patch"
"github.com/spf13/cobra"
"github.com/spf13/pflag"
kerrors "k8s.io/apimachinery/pkg/api/errors"
@ -409,9 +409,9 @@ func AddDryRunFlag(cmd *cobra.Command) {
}
func AddServerSideApplyFlags(cmd *cobra.Command) {
cmd.Flags().Bool("experimental-server-side", false, "If true, apply runs in the server instead of the client. This is an alpha feature and flag.")
cmd.Flags().Bool("experimental-force-conflicts", false, "If true, server-side apply will force the changes against conflicts. This is an alpha feature and flag.")
cmd.Flags().String("experimental-field-manager", "kubectl", "Name of the manager used to track field ownership. This is an alpha feature and flag.")
cmd.Flags().Bool("server-side", false, "If true, apply runs in the server instead of the client.")
cmd.Flags().Bool("force-conflicts", false, "If true, server-side apply will force the changes against conflicts.")
cmd.Flags().String("field-manager", "kubectl", "Name of the manager used to track field ownership.")
}
func AddIncludeUninitializedFlag(cmd *cobra.Command) {
@ -488,15 +488,15 @@ func DumpReaderToFile(reader io.Reader, filename string) error {
}
func GetServerSideApplyFlag(cmd *cobra.Command) bool {
return GetFlagBool(cmd, "experimental-server-side")
return GetFlagBool(cmd, "server-side")
}
func GetForceConflictsFlag(cmd *cobra.Command) bool {
return GetFlagBool(cmd, "experimental-force-conflicts")
return GetFlagBool(cmd, "force-conflicts")
}
func GetFieldManagerFlag(cmd *cobra.Command) string {
return GetFlagString(cmd, "experimental-field-manager")
return GetFlagString(cmd, "field-manager")
}
func GetDryRunFlag(cmd *cobra.Command) bool {