Skip to content

Commit 587f4f0

Browse files
committed
kubectl drain: Generic "declare a controller" message
When it initially landed in kubernetes/kubernetes@c6e9ad066e (Initial node drain implementation for kubernetes#3885, 2015-08-30, kubernetes#16698), the drain logic looked in a created-by annotation for recognized kinds [1], so listing the set of recognized kinds was a clear approach. Sometime later, the source moved into ownerReferences, but the hard-coded set of recognized controller kinds remained. When kubernetes/kubernetes@2f1108451f (Remove hard-coded pod-controller check, 2017-12-05, kubernetes#56864) removed the hard-coded set of recognized controller kinds, it should have also updated these messages to remove stale references to the previous hard-coded values. This commit catches the message strings up with that commit. [1]: kubernetes@c6e9ad0#diff-211259b8a8ec42f105264c10897dad48029badb538684e60e43eaead68c3d219R216
1 parent 08c3108 commit 587f4f0

File tree

3 files changed

+4
-4
lines changed

3 files changed

+4
-4
lines changed

Diff for: staging/src/k8s.io/kubectl/pkg/cmd/drain/drain.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,7 @@ func NewCmdDrain(f cmdutil.Factory, ioStreams genericclioptions.IOStreams) *cobr
190190
cmdutil.CheckErr(o.RunDrain())
191191
},
192192
}
193-
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.")
193+
cmd.Flags().BoolVar(&o.drainer.Force, "force", o.drainer.Force, "Continue even if there are pods that do not declare a controller.")
194194
cmd.Flags().BoolVar(&o.drainer.IgnoreAllDaemonSets, "ignore-daemonsets", o.drainer.IgnoreAllDaemonSets, "Ignore DaemonSet-managed pods.")
195195
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).")
196196
cmd.Flags().MarkDeprecated("delete-local-data", "This option is deprecated and will be deleted. Use --delete-emptydir-data.")

Diff for: staging/src/k8s.io/kubectl/pkg/cmd/drain/drain_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -599,7 +599,7 @@ func TestDrain(t *testing.T) {
599599
args: []string{"node", "--force"},
600600
expectFatal: false,
601601
expectDelete: true,
602-
expectWarning: "WARNING: deleting Pods not managed by ReplicationController, ReplicaSet, Job, DaemonSet or StatefulSet: default/bar",
602+
expectWarning: "WARNING: deleting Pods that declare no controller: default/bar",
603603
expectOutputToContain: "node/node drained",
604604
},
605605
{

Diff for: staging/src/k8s.io/kubectl/pkg/drain/filters.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@ const (
3333
daemonSetWarning = "ignoring DaemonSet-managed Pods"
3434
localStorageFatal = "Pods with local storage (use --delete-emptydir-data to override)"
3535
localStorageWarning = "deleting Pods with local storage"
36-
unmanagedFatal = "Pods not managed by ReplicationController, ReplicaSet, Job, DaemonSet or StatefulSet (use --force to override)"
37-
unmanagedWarning = "deleting Pods not managed by ReplicationController, ReplicaSet, Job, DaemonSet or StatefulSet"
36+
unmanagedFatal = "Pods declare no controller (use --force to override)"
37+
unmanagedWarning = "deleting Pods that declare no controller"
3838
)
3939

4040
// PodDelete informs filtering logic whether a pod should be deleted or not

0 commit comments

Comments
 (0)