Merge pull request #108314 from wking/avoid-drain-controller-assumptions

kubectl drain: Generic "declare a controller" message

Kubernetes-commit: c71f9465b1339ca3da56e6b0fda17b5752c0dc88
This commit is contained in:
Kubernetes Publisher 2022-03-04 15:35:02 -08:00
commit 42c5fd5eeb
5 changed files with 8 additions and 8 deletions

4
go.mod
View File

@ -32,7 +32,7 @@ require (
golang.org/x/sys v0.0.0-20220209214540-3681064d5158
gopkg.in/yaml.v2 v2.4.0
k8s.io/api v0.0.0-20220226220324-b8c40e080bc5
k8s.io/apimachinery v0.0.0-20220226220127-2936d3f03931
k8s.io/apimachinery v0.0.0-20220305020656-da0995ba93c3
k8s.io/cli-runtime v0.0.0-20220304062546-5a23dd4f767a
k8s.io/client-go v0.0.0-20220303122547-eb103e0abf62
k8s.io/component-base v0.0.0-20220301021127-30d23418100a
@ -49,7 +49,7 @@ require (
replace (
k8s.io/api => k8s.io/api v0.0.0-20220226220324-b8c40e080bc5
k8s.io/apimachinery => k8s.io/apimachinery v0.0.0-20220226220127-2936d3f03931
k8s.io/apimachinery => k8s.io/apimachinery v0.0.0-20220305020656-da0995ba93c3
k8s.io/cli-runtime => k8s.io/cli-runtime v0.0.0-20220304062546-5a23dd4f767a
k8s.io/client-go => k8s.io/client-go v0.0.0-20220303122547-eb103e0abf62
k8s.io/code-generator => k8s.io/code-generator v0.0.0-20220226191723-8d7923dd2451

4
go.sum
View File

@ -921,8 +921,8 @@ honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9
honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k=
k8s.io/api v0.0.0-20220226220324-b8c40e080bc5 h1:z4oqfOInb6p7EwsJbKUe2IcKaeSBWmfYEIsIdFHq6ak=
k8s.io/api v0.0.0-20220226220324-b8c40e080bc5/go.mod h1:xmVR3mDgBB2FAJoueQFwuWn03L5odGCiOKivsptcgRU=
k8s.io/apimachinery v0.0.0-20220226220127-2936d3f03931 h1:pb7vtSnIF7dReuA6s+WsakFL6vLZ4xA71kJMln9j4Pc=
k8s.io/apimachinery v0.0.0-20220226220127-2936d3f03931/go.mod h1:6HjHJr7AD3yHuu+gOdE3O1dqE21lBVCDBk5W7wry/WI=
k8s.io/apimachinery v0.0.0-20220305020656-da0995ba93c3 h1:JEGi8vCoh23TJCSXA4pExj5REB7X4bn2SbWsEuI8abY=
k8s.io/apimachinery v0.0.0-20220305020656-da0995ba93c3/go.mod h1:6HjHJr7AD3yHuu+gOdE3O1dqE21lBVCDBk5W7wry/WI=
k8s.io/cli-runtime v0.0.0-20220304062546-5a23dd4f767a h1:GLtjCZTc3Qx7ZuYJb+gKDGT1XTBqENco3v64fSYJjPk=
k8s.io/cli-runtime v0.0.0-20220304062546-5a23dd4f767a/go.mod h1:R3r66bEzcK8AGKIBf7tz+CW0cOyn7CfOtPfblRlGT6o=
k8s.io/client-go v0.0.0-20220303122547-eb103e0abf62 h1:kpsNQiWWMoxhrGbeNBVlojVEIkOUUXs+prjf7026YDE=

View File

@ -190,7 +190,7 @@ func NewCmdDrain(f cmdutil.Factory, ioStreams genericclioptions.IOStreams) *cobr
cmdutil.CheckErr(o.RunDrain())
},
}
cmd.Flags().BoolVar(&o.drainer.Force, "force", o.drainer.Force, "Continue even if there are pods not managed by a ReplicationController, ReplicaSet, Job, DaemonSet or StatefulSet.")
cmd.Flags().BoolVar(&o.drainer.Force, "force", o.drainer.Force, "Continue even if there are pods that do not declare a controller.")
cmd.Flags().BoolVar(&o.drainer.IgnoreAllDaemonSets, "ignore-daemonsets", o.drainer.IgnoreAllDaemonSets, "Ignore DaemonSet-managed pods.")
cmd.Flags().BoolVar(&o.drainer.DeleteEmptyDirData, "delete-local-data", o.drainer.DeleteEmptyDirData, "Continue even if there are pods using emptyDir (local data that will be deleted when the node is drained).")
cmd.Flags().MarkDeprecated("delete-local-data", "This option is deprecated and will be deleted. Use --delete-emptydir-data.")

View File

@ -599,7 +599,7 @@ func TestDrain(t *testing.T) {
args: []string{"node", "--force"},
expectFatal: false,
expectDelete: true,
expectWarning: "WARNING: deleting Pods not managed by ReplicationController, ReplicaSet, Job, DaemonSet or StatefulSet: default/bar",
expectWarning: "WARNING: deleting Pods that declare no controller: default/bar",
expectOutputToContain: "node/node drained",
},
{

View File

@ -33,8 +33,8 @@ const (
daemonSetWarning = "ignoring DaemonSet-managed Pods"
localStorageFatal = "Pods with local storage (use --delete-emptydir-data to override)"
localStorageWarning = "deleting Pods with local storage"
unmanagedFatal = "Pods not managed by ReplicationController, ReplicaSet, Job, DaemonSet or StatefulSet (use --force to override)"
unmanagedWarning = "deleting Pods not managed by ReplicationController, ReplicaSet, Job, DaemonSet or StatefulSet"
unmanagedFatal = "Pods declare no controller (use --force to override)"
unmanagedWarning = "deleting Pods that declare no controller"
)
// PodDelete informs filtering logic whether a pod should be deleted or not