diff --git a/contrib/completions/bash/oc b/contrib/completions/bash/oc index f895dc634998..15c2f269ea86 100644 --- a/contrib/completions/bash/oc +++ b/contrib/completions/bash/oc @@ -5817,7 +5817,6 @@ _oc_annotate() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -5841,7 +5840,6 @@ _oc_annotate() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -5855,7 +5853,6 @@ _oc_annotate() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -5863,8 +5860,6 @@ _oc_annotate() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -5898,7 +5893,6 @@ _oc_annotate() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -5931,8 +5925,6 @@ _oc_annotate() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -5950,7 +5942,6 @@ _oc_annotate() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -5959,16 +5950,13 @@ _oc_annotate() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -6062,7 +6050,6 @@ _oc_apply_edit-last-applied() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -6086,7 +6073,6 @@ _oc_apply_edit-last-applied() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -6100,7 +6086,6 @@ _oc_apply_edit-last-applied() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -6108,8 +6093,6 @@ _oc_apply_edit-last-applied() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -6143,7 +6126,6 @@ _oc_apply_edit-last-applied() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -6176,8 +6158,6 @@ _oc_apply_edit-last-applied() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -6195,7 +6175,6 @@ _oc_apply_edit-last-applied() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -6204,16 +6183,13 @@ _oc_apply_edit-last-applied() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -10713,7 +10689,6 @@ _oc_delete() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -10737,7 +10712,6 @@ _oc_delete() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -10751,7 +10725,6 @@ _oc_delete() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -10759,8 +10732,6 @@ _oc_delete() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -10794,7 +10765,6 @@ _oc_delete() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -10827,8 +10797,6 @@ _oc_delete() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -10846,7 +10814,6 @@ _oc_delete() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -10855,16 +10822,13 @@ _oc_delete() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -11144,7 +11108,6 @@ _oc_edit() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -11168,7 +11131,6 @@ _oc_edit() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -11182,7 +11144,6 @@ _oc_edit() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -11190,8 +11151,6 @@ _oc_edit() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -11225,7 +11184,6 @@ _oc_edit() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -11258,8 +11216,6 @@ _oc_edit() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -11277,7 +11233,6 @@ _oc_edit() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -11286,16 +11241,13 @@ _oc_edit() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -11924,7 +11876,6 @@ _oc_get() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -11948,7 +11899,6 @@ _oc_get() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -11962,7 +11912,6 @@ _oc_get() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -11970,8 +11919,6 @@ _oc_get() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -12005,7 +11952,6 @@ _oc_get() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -12038,8 +11984,6 @@ _oc_get() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -12057,7 +12001,6 @@ _oc_get() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -12066,16 +12009,13 @@ _oc_get() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -12549,7 +12489,6 @@ _oc_label() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -12573,7 +12512,6 @@ _oc_label() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -12587,7 +12525,6 @@ _oc_label() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -12595,8 +12532,6 @@ _oc_label() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -12630,7 +12565,6 @@ _oc_label() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -12663,8 +12597,6 @@ _oc_label() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -12682,7 +12614,6 @@ _oc_label() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -12691,16 +12622,13 @@ _oc_label() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -13415,7 +13343,6 @@ _oc_patch() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -13439,7 +13366,6 @@ _oc_patch() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -13453,7 +13379,6 @@ _oc_patch() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -13461,8 +13386,6 @@ _oc_patch() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -13496,7 +13419,6 @@ _oc_patch() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -13529,8 +13451,6 @@ _oc_patch() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -13548,7 +13468,6 @@ _oc_patch() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -13557,16 +13476,13 @@ _oc_patch() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") diff --git a/contrib/completions/bash/openshift b/contrib/completions/bash/openshift index 3ef6b34747cc..e288c5c8c009 100644 --- a/contrib/completions/bash/openshift +++ b/contrib/completions/bash/openshift @@ -10982,7 +10982,6 @@ _openshift_cli_annotate() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -11006,7 +11005,6 @@ _openshift_cli_annotate() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -11020,7 +11018,6 @@ _openshift_cli_annotate() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -11028,8 +11025,6 @@ _openshift_cli_annotate() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -11063,7 +11058,6 @@ _openshift_cli_annotate() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -11096,8 +11090,6 @@ _openshift_cli_annotate() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -11115,7 +11107,6 @@ _openshift_cli_annotate() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -11124,16 +11115,13 @@ _openshift_cli_annotate() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -11227,7 +11215,6 @@ _openshift_cli_apply_edit-last-applied() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -11251,7 +11238,6 @@ _openshift_cli_apply_edit-last-applied() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -11265,7 +11251,6 @@ _openshift_cli_apply_edit-last-applied() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -11273,8 +11258,6 @@ _openshift_cli_apply_edit-last-applied() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -11308,7 +11291,6 @@ _openshift_cli_apply_edit-last-applied() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -11341,8 +11323,6 @@ _openshift_cli_apply_edit-last-applied() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -11360,7 +11340,6 @@ _openshift_cli_apply_edit-last-applied() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -11369,16 +11348,13 @@ _openshift_cli_apply_edit-last-applied() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -15878,7 +15854,6 @@ _openshift_cli_delete() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -15902,7 +15877,6 @@ _openshift_cli_delete() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -15916,7 +15890,6 @@ _openshift_cli_delete() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -15924,8 +15897,6 @@ _openshift_cli_delete() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -15959,7 +15930,6 @@ _openshift_cli_delete() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -15992,8 +15962,6 @@ _openshift_cli_delete() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -16011,7 +15979,6 @@ _openshift_cli_delete() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -16020,16 +15987,13 @@ _openshift_cli_delete() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -16309,7 +16273,6 @@ _openshift_cli_edit() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -16333,7 +16296,6 @@ _openshift_cli_edit() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -16347,7 +16309,6 @@ _openshift_cli_edit() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -16355,8 +16316,6 @@ _openshift_cli_edit() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -16390,7 +16349,6 @@ _openshift_cli_edit() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -16423,8 +16381,6 @@ _openshift_cli_edit() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -16442,7 +16398,6 @@ _openshift_cli_edit() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -16451,16 +16406,13 @@ _openshift_cli_edit() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -17089,7 +17041,6 @@ _openshift_cli_get() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -17113,7 +17064,6 @@ _openshift_cli_get() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -17127,7 +17077,6 @@ _openshift_cli_get() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -17135,8 +17084,6 @@ _openshift_cli_get() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -17170,7 +17117,6 @@ _openshift_cli_get() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -17203,8 +17149,6 @@ _openshift_cli_get() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -17222,7 +17166,6 @@ _openshift_cli_get() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -17231,16 +17174,13 @@ _openshift_cli_get() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -17714,7 +17654,6 @@ _openshift_cli_label() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -17738,7 +17677,6 @@ _openshift_cli_label() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -17752,7 +17690,6 @@ _openshift_cli_label() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -17760,8 +17697,6 @@ _openshift_cli_label() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -17795,7 +17730,6 @@ _openshift_cli_label() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -17828,8 +17762,6 @@ _openshift_cli_label() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -17847,7 +17779,6 @@ _openshift_cli_label() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -17856,16 +17787,13 @@ _openshift_cli_label() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -18580,7 +18508,6 @@ _openshift_cli_patch() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -18604,7 +18531,6 @@ _openshift_cli_patch() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -18618,7 +18544,6 @@ _openshift_cli_patch() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -18626,8 +18551,6 @@ _openshift_cli_patch() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -18661,7 +18584,6 @@ _openshift_cli_patch() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -18694,8 +18616,6 @@ _openshift_cli_patch() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -18713,7 +18633,6 @@ _openshift_cli_patch() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -18722,16 +18641,13 @@ _openshift_cli_patch() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -24354,7 +24270,6 @@ _openshift_kube_annotate() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -24378,7 +24293,6 @@ _openshift_kube_annotate() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -24392,7 +24306,6 @@ _openshift_kube_annotate() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -24400,8 +24313,6 @@ _openshift_kube_annotate() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -24435,7 +24346,6 @@ _openshift_kube_annotate() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -24468,8 +24378,6 @@ _openshift_kube_annotate() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -24487,7 +24395,6 @@ _openshift_kube_annotate() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -24496,16 +24403,13 @@ _openshift_kube_annotate() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -24660,7 +24564,6 @@ _openshift_kube_apply_edit-last-applied() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -24684,7 +24587,6 @@ _openshift_kube_apply_edit-last-applied() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -24698,7 +24600,6 @@ _openshift_kube_apply_edit-last-applied() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -24706,8 +24607,6 @@ _openshift_kube_apply_edit-last-applied() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -24741,7 +24640,6 @@ _openshift_kube_apply_edit-last-applied() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -24774,8 +24672,6 @@ _openshift_kube_apply_edit-last-applied() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -24793,7 +24689,6 @@ _openshift_kube_apply_edit-last-applied() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -24802,16 +24697,13 @@ _openshift_kube_apply_edit-last-applied() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -28694,7 +28586,6 @@ _openshift_kube_delete() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -28718,7 +28609,6 @@ _openshift_kube_delete() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -28732,7 +28622,6 @@ _openshift_kube_delete() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -28740,8 +28629,6 @@ _openshift_kube_delete() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -28775,7 +28662,6 @@ _openshift_kube_delete() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -28808,8 +28694,6 @@ _openshift_kube_delete() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -28827,7 +28711,6 @@ _openshift_kube_delete() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -28836,16 +28719,13 @@ _openshift_kube_delete() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -29174,7 +29054,6 @@ _openshift_kube_edit() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -29198,7 +29077,6 @@ _openshift_kube_edit() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -29212,7 +29090,6 @@ _openshift_kube_edit() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -29220,8 +29097,6 @@ _openshift_kube_edit() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -29255,7 +29130,6 @@ _openshift_kube_edit() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -29288,8 +29162,6 @@ _openshift_kube_edit() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -29307,7 +29179,6 @@ _openshift_kube_edit() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -29316,16 +29187,13 @@ _openshift_kube_edit() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -29716,7 +29584,6 @@ _openshift_kube_get() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -29740,7 +29607,6 @@ _openshift_kube_get() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -29754,7 +29620,6 @@ _openshift_kube_get() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -29762,8 +29627,6 @@ _openshift_kube_get() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -29797,7 +29660,6 @@ _openshift_kube_get() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -29830,8 +29692,6 @@ _openshift_kube_get() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -29849,7 +29709,6 @@ _openshift_kube_get() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -29858,16 +29717,13 @@ _openshift_kube_get() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -29994,7 +29850,6 @@ _openshift_kube_label() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -30018,7 +29873,6 @@ _openshift_kube_label() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -30032,7 +29886,6 @@ _openshift_kube_label() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -30040,8 +29893,6 @@ _openshift_kube_label() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -30075,7 +29926,6 @@ _openshift_kube_label() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -30108,8 +29958,6 @@ _openshift_kube_label() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -30127,7 +29975,6 @@ _openshift_kube_label() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -30136,16 +29983,13 @@ _openshift_kube_label() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -30454,7 +30298,6 @@ _openshift_kube_patch() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -30478,7 +30321,6 @@ _openshift_kube_patch() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -30492,7 +30334,6 @@ _openshift_kube_patch() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -30500,8 +30341,6 @@ _openshift_kube_patch() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -30535,7 +30374,6 @@ _openshift_kube_patch() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -30568,8 +30406,6 @@ _openshift_kube_patch() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -30587,7 +30423,6 @@ _openshift_kube_patch() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -30596,16 +30431,13 @@ _openshift_kube_patch() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") diff --git a/contrib/completions/zsh/oc b/contrib/completions/zsh/oc index 39e7e2c10b64..1f48048bebda 100644 --- a/contrib/completions/zsh/oc +++ b/contrib/completions/zsh/oc @@ -5966,7 +5966,6 @@ _oc_annotate() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -5990,7 +5989,6 @@ _oc_annotate() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -6004,7 +6002,6 @@ _oc_annotate() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -6012,8 +6009,6 @@ _oc_annotate() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -6047,7 +6042,6 @@ _oc_annotate() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -6080,8 +6074,6 @@ _oc_annotate() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -6099,7 +6091,6 @@ _oc_annotate() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -6108,16 +6099,13 @@ _oc_annotate() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -6211,7 +6199,6 @@ _oc_apply_edit-last-applied() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -6235,7 +6222,6 @@ _oc_apply_edit-last-applied() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -6249,7 +6235,6 @@ _oc_apply_edit-last-applied() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -6257,8 +6242,6 @@ _oc_apply_edit-last-applied() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -6292,7 +6275,6 @@ _oc_apply_edit-last-applied() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -6325,8 +6307,6 @@ _oc_apply_edit-last-applied() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -6344,7 +6324,6 @@ _oc_apply_edit-last-applied() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -6353,16 +6332,13 @@ _oc_apply_edit-last-applied() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -10862,7 +10838,6 @@ _oc_delete() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -10886,7 +10861,6 @@ _oc_delete() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -10900,7 +10874,6 @@ _oc_delete() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -10908,8 +10881,6 @@ _oc_delete() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -10943,7 +10914,6 @@ _oc_delete() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -10976,8 +10946,6 @@ _oc_delete() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -10995,7 +10963,6 @@ _oc_delete() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -11004,16 +10971,13 @@ _oc_delete() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -11293,7 +11257,6 @@ _oc_edit() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -11317,7 +11280,6 @@ _oc_edit() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -11331,7 +11293,6 @@ _oc_edit() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -11339,8 +11300,6 @@ _oc_edit() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -11374,7 +11333,6 @@ _oc_edit() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -11407,8 +11365,6 @@ _oc_edit() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -11426,7 +11382,6 @@ _oc_edit() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -11435,16 +11390,13 @@ _oc_edit() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -12073,7 +12025,6 @@ _oc_get() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -12097,7 +12048,6 @@ _oc_get() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -12111,7 +12061,6 @@ _oc_get() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -12119,8 +12068,6 @@ _oc_get() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -12154,7 +12101,6 @@ _oc_get() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -12187,8 +12133,6 @@ _oc_get() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -12206,7 +12150,6 @@ _oc_get() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -12215,16 +12158,13 @@ _oc_get() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -12698,7 +12638,6 @@ _oc_label() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -12722,7 +12661,6 @@ _oc_label() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -12736,7 +12674,6 @@ _oc_label() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -12744,8 +12681,6 @@ _oc_label() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -12779,7 +12714,6 @@ _oc_label() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -12812,8 +12746,6 @@ _oc_label() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -12831,7 +12763,6 @@ _oc_label() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -12840,16 +12771,13 @@ _oc_label() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -13564,7 +13492,6 @@ _oc_patch() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -13588,7 +13515,6 @@ _oc_patch() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -13602,7 +13528,6 @@ _oc_patch() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -13610,8 +13535,6 @@ _oc_patch() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -13645,7 +13568,6 @@ _oc_patch() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -13678,8 +13600,6 @@ _oc_patch() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -13697,7 +13617,6 @@ _oc_patch() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -13706,16 +13625,13 @@ _oc_patch() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") diff --git a/contrib/completions/zsh/openshift b/contrib/completions/zsh/openshift index 4ea4a882135c..8349c1994f19 100644 --- a/contrib/completions/zsh/openshift +++ b/contrib/completions/zsh/openshift @@ -11131,7 +11131,6 @@ _openshift_cli_annotate() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -11155,7 +11154,6 @@ _openshift_cli_annotate() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -11169,7 +11167,6 @@ _openshift_cli_annotate() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -11177,8 +11174,6 @@ _openshift_cli_annotate() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -11212,7 +11207,6 @@ _openshift_cli_annotate() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -11245,8 +11239,6 @@ _openshift_cli_annotate() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -11264,7 +11256,6 @@ _openshift_cli_annotate() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -11273,16 +11264,13 @@ _openshift_cli_annotate() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -11376,7 +11364,6 @@ _openshift_cli_apply_edit-last-applied() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -11400,7 +11387,6 @@ _openshift_cli_apply_edit-last-applied() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -11414,7 +11400,6 @@ _openshift_cli_apply_edit-last-applied() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -11422,8 +11407,6 @@ _openshift_cli_apply_edit-last-applied() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -11457,7 +11440,6 @@ _openshift_cli_apply_edit-last-applied() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -11490,8 +11472,6 @@ _openshift_cli_apply_edit-last-applied() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -11509,7 +11489,6 @@ _openshift_cli_apply_edit-last-applied() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -11518,16 +11497,13 @@ _openshift_cli_apply_edit-last-applied() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -16027,7 +16003,6 @@ _openshift_cli_delete() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -16051,7 +16026,6 @@ _openshift_cli_delete() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -16065,7 +16039,6 @@ _openshift_cli_delete() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -16073,8 +16046,6 @@ _openshift_cli_delete() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -16108,7 +16079,6 @@ _openshift_cli_delete() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -16141,8 +16111,6 @@ _openshift_cli_delete() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -16160,7 +16128,6 @@ _openshift_cli_delete() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -16169,16 +16136,13 @@ _openshift_cli_delete() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -16458,7 +16422,6 @@ _openshift_cli_edit() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -16482,7 +16445,6 @@ _openshift_cli_edit() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -16496,7 +16458,6 @@ _openshift_cli_edit() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -16504,8 +16465,6 @@ _openshift_cli_edit() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -16539,7 +16498,6 @@ _openshift_cli_edit() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -16572,8 +16530,6 @@ _openshift_cli_edit() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -16591,7 +16547,6 @@ _openshift_cli_edit() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -16600,16 +16555,13 @@ _openshift_cli_edit() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -17238,7 +17190,6 @@ _openshift_cli_get() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -17262,7 +17213,6 @@ _openshift_cli_get() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -17276,7 +17226,6 @@ _openshift_cli_get() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -17284,8 +17233,6 @@ _openshift_cli_get() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -17319,7 +17266,6 @@ _openshift_cli_get() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -17352,8 +17298,6 @@ _openshift_cli_get() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -17371,7 +17315,6 @@ _openshift_cli_get() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -17380,16 +17323,13 @@ _openshift_cli_get() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -17863,7 +17803,6 @@ _openshift_cli_label() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -17887,7 +17826,6 @@ _openshift_cli_label() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -17901,7 +17839,6 @@ _openshift_cli_label() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -17909,8 +17846,6 @@ _openshift_cli_label() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -17944,7 +17879,6 @@ _openshift_cli_label() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -17977,8 +17911,6 @@ _openshift_cli_label() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -17996,7 +17928,6 @@ _openshift_cli_label() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -18005,16 +17936,13 @@ _openshift_cli_label() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -18729,7 +18657,6 @@ _openshift_cli_patch() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -18753,7 +18680,6 @@ _openshift_cli_patch() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -18767,7 +18693,6 @@ _openshift_cli_patch() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -18775,8 +18700,6 @@ _openshift_cli_patch() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -18810,7 +18733,6 @@ _openshift_cli_patch() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -18843,8 +18765,6 @@ _openshift_cli_patch() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -18862,7 +18782,6 @@ _openshift_cli_patch() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -18871,16 +18790,13 @@ _openshift_cli_patch() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -24503,7 +24419,6 @@ _openshift_kube_annotate() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -24527,7 +24442,6 @@ _openshift_kube_annotate() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -24541,7 +24455,6 @@ _openshift_kube_annotate() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -24549,8 +24462,6 @@ _openshift_kube_annotate() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -24584,7 +24495,6 @@ _openshift_kube_annotate() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -24617,8 +24527,6 @@ _openshift_kube_annotate() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -24636,7 +24544,6 @@ _openshift_kube_annotate() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -24645,16 +24552,13 @@ _openshift_kube_annotate() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -24809,7 +24713,6 @@ _openshift_kube_apply_edit-last-applied() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -24833,7 +24736,6 @@ _openshift_kube_apply_edit-last-applied() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -24847,7 +24749,6 @@ _openshift_kube_apply_edit-last-applied() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -24855,8 +24756,6 @@ _openshift_kube_apply_edit-last-applied() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -24890,7 +24789,6 @@ _openshift_kube_apply_edit-last-applied() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -24923,8 +24821,6 @@ _openshift_kube_apply_edit-last-applied() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -24942,7 +24838,6 @@ _openshift_kube_apply_edit-last-applied() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -24951,16 +24846,13 @@ _openshift_kube_apply_edit-last-applied() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -28843,7 +28735,6 @@ _openshift_kube_delete() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -28867,7 +28758,6 @@ _openshift_kube_delete() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -28881,7 +28771,6 @@ _openshift_kube_delete() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -28889,8 +28778,6 @@ _openshift_kube_delete() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -28924,7 +28811,6 @@ _openshift_kube_delete() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -28957,8 +28843,6 @@ _openshift_kube_delete() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -28976,7 +28860,6 @@ _openshift_kube_delete() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -28985,16 +28868,13 @@ _openshift_kube_delete() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -29323,7 +29203,6 @@ _openshift_kube_edit() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -29347,7 +29226,6 @@ _openshift_kube_edit() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -29361,7 +29239,6 @@ _openshift_kube_edit() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -29369,8 +29246,6 @@ _openshift_kube_edit() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -29404,7 +29279,6 @@ _openshift_kube_edit() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -29437,8 +29311,6 @@ _openshift_kube_edit() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -29456,7 +29328,6 @@ _openshift_kube_edit() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -29465,16 +29336,13 @@ _openshift_kube_edit() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -29865,7 +29733,6 @@ _openshift_kube_get() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -29889,7 +29756,6 @@ _openshift_kube_get() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -29903,7 +29769,6 @@ _openshift_kube_get() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -29911,8 +29776,6 @@ _openshift_kube_get() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -29946,7 +29809,6 @@ _openshift_kube_get() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -29979,8 +29841,6 @@ _openshift_kube_get() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -29998,7 +29858,6 @@ _openshift_kube_get() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -30007,16 +29866,13 @@ _openshift_kube_get() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -30143,7 +29999,6 @@ _openshift_kube_label() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -30167,7 +30022,6 @@ _openshift_kube_label() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -30181,7 +30035,6 @@ _openshift_kube_label() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -30189,8 +30042,6 @@ _openshift_kube_label() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -30224,7 +30075,6 @@ _openshift_kube_label() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -30257,8 +30107,6 @@ _openshift_kube_label() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -30276,7 +30124,6 @@ _openshift_kube_label() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -30285,16 +30132,13 @@ _openshift_kube_label() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") @@ -30603,7 +30447,6 @@ _openshift_kube_patch() must_have_one_noun+=("clusterpolicybinding") must_have_one_noun+=("clusterresourcequota") must_have_one_noun+=("clusterrole") - must_have_one_noun+=("clusterrole") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("clusterrolebinding") must_have_one_noun+=("componentstatus") @@ -30627,7 +30470,6 @@ _openshift_kube_patch() must_have_one_noun+=("ingress") must_have_one_noun+=("ispersonalsubjectaccessreview") must_have_one_noun+=("job") - must_have_one_noun+=("limitrange") must_have_one_noun+=("namespace") must_have_one_noun+=("netnamespace") must_have_one_noun+=("networkpolicy") @@ -30641,7 +30483,6 @@ _openshift_kube_patch() must_have_one_noun+=("persistentvolumeclaim") must_have_one_noun+=("pod") must_have_one_noun+=("poddisruptionbudget") - must_have_one_noun+=("podpreset") must_have_one_noun+=("podsecuritypolicy") must_have_one_noun+=("podtemplate") must_have_one_noun+=("policy") @@ -30649,8 +30490,6 @@ _openshift_kube_patch() must_have_one_noun+=("project") must_have_one_noun+=("replicaset") must_have_one_noun+=("replicationcontroller") - must_have_one_noun+=("resourcequota") - must_have_one_noun+=("role") must_have_one_noun+=("role") must_have_one_noun+=("rolebinding") must_have_one_noun+=("rolebinding") @@ -30684,7 +30523,6 @@ _openshift_kube_patch() noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterrolebindings") noun_aliases+=("clusterroles") - noun_aliases+=("clusterroles") noun_aliases+=("clusters") noun_aliases+=("cm") noun_aliases+=("componentstatuses") @@ -30717,8 +30555,6 @@ _openshift_kube_patch() noun_aliases+=("ingresses") noun_aliases+=("ispersonalsubjectaccessreviews") noun_aliases+=("jobs") - noun_aliases+=("limitranges") - noun_aliases+=("limits") noun_aliases+=("namespaces") noun_aliases+=("netnamespaces") noun_aliases+=("netpol") @@ -30736,7 +30572,6 @@ _openshift_kube_patch() noun_aliases+=("persistentvolumes") noun_aliases+=("po") noun_aliases+=("poddisruptionbudgets") - noun_aliases+=("podpresets") noun_aliases+=("pods") noun_aliases+=("podsecuritypolicies") noun_aliases+=("podtemplates") @@ -30745,16 +30580,13 @@ _openshift_kube_patch() noun_aliases+=("projects") noun_aliases+=("pv") noun_aliases+=("pvc") - noun_aliases+=("quota") noun_aliases+=("rc") noun_aliases+=("replicasets") noun_aliases+=("replicationcontrollers") - noun_aliases+=("resourcequotas") noun_aliases+=("rolebindingrestrictions") noun_aliases+=("rolebindings") noun_aliases+=("rolebindings") noun_aliases+=("roles") - noun_aliases+=("roles") noun_aliases+=("routes") noun_aliases+=("rs") noun_aliases+=("sa") diff --git a/vendor/k8s.io/kubernetes/pkg/printers/BUILD b/vendor/k8s.io/kubernetes/pkg/printers/BUILD index c888148e23b2..0db096c1437f 100644 --- a/vendor/k8s.io/kubernetes/pkg/printers/BUILD +++ b/vendor/k8s.io/kubernetes/pkg/printers/BUILD @@ -25,8 +25,6 @@ go_library( ], tags = ["automanaged"], deps = [ - "//pkg/util/slice:go_default_library", - "//vendor/github.com/fatih/camelcase:go_default_library", "//vendor/github.com/ghodss/yaml:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/meta:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", @@ -69,11 +67,3 @@ filegroup( ], tags = ["automanaged"], ) - -go_test( - name = "go_default_test", - srcs = ["humanreadable_test.go"], - library = ":go_default_library", - tags = ["automanaged"], - deps = ["//vendor/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured:go_default_library"], -) diff --git a/vendor/k8s.io/kubernetes/pkg/printers/humanreadable.go b/vendor/k8s.io/kubernetes/pkg/printers/humanreadable.go index 59bcf7e76ea9..a4b1945746c8 100644 --- a/vendor/k8s.io/kubernetes/pkg/printers/humanreadable.go +++ b/vendor/k8s.io/kubernetes/pkg/printers/humanreadable.go @@ -21,12 +21,9 @@ import ( "fmt" "io" "reflect" - "sort" "strings" "text/tabwriter" - "github.com/fatih/camelcase" - "k8s.io/apimachinery/pkg/api/meta" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1alpha1 "k8s.io/apimachinery/pkg/apis/meta/v1alpha1" @@ -34,7 +31,6 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" utilruntime "k8s.io/apimachinery/pkg/util/runtime" - "k8s.io/kubernetes/pkg/util/slice" ) type TablePrinter interface { @@ -44,6 +40,7 @@ type TablePrinter interface { type PrintHandler interface { Handler(columns, columnsWithWide []string, printFunc interface{}) error TableHandler(columns []metav1alpha1.TableColumnDefinition, printFunc interface{}) error + DefaultTableHandler(columns []metav1alpha1.TableColumnDefinition, printFunc interface{}) error } var withNamespacePrefixColumns = []string{"NAMESPACE"} // TODO(erictune): print cluster name too. @@ -60,12 +57,13 @@ type handlerEntry struct { // will only be printed if the object type changes. This makes it useful for printing items // received from watches. type HumanReadablePrinter struct { - handlerMap map[reflect.Type]*handlerEntry - options PrintOptions - lastType reflect.Type - skipTabWriter bool - encoder runtime.Encoder - decoder runtime.Decoder + handlerMap map[reflect.Type]*handlerEntry + defaultHandler *handlerEntry + options PrintOptions + lastType interface{} + skipTabWriter bool + encoder runtime.Encoder + decoder runtime.Decoder } var _ PrintHandler = &HumanReadablePrinter{} @@ -188,6 +186,25 @@ func (h *HumanReadablePrinter) TableHandler(columnDefinitions []metav1alpha1.Tab return nil } +// DefaultTableHandler registers a set of columns and a print func that is given a chance to process +// any object without an explicit handler. Only the most recently set print handler is used. +// See ValidateRowPrintHandlerFunc for required method signature. +func (h *HumanReadablePrinter) DefaultTableHandler(columnDefinitions []metav1alpha1.TableColumnDefinition, printFunc interface{}) error { + printFuncValue := reflect.ValueOf(printFunc) + if err := ValidateRowPrintHandlerFunc(printFuncValue); err != nil { + utilruntime.HandleError(fmt.Errorf("unable to register print function: %v", err)) + return err + } + entry := &handlerEntry{ + columnDefinitions: columnDefinitions, + printRows: true, + printFunc: printFuncValue, + } + + h.defaultHandler = entry + return nil +} + // ValidateRowPrintHandlerFunc validates print handler signature. // printFunc is the function that will be called to print an object. // It must be of the following type: @@ -266,7 +283,7 @@ func (h *HumanReadablePrinter) unknown(data []byte, w io.Writer) error { return err } -func (h *HumanReadablePrinter) printHeader(columnNames []string, w io.Writer) error { +func printHeader(columnNames []string, w io.Writer) error { if _, err := fmt.Fprintf(w, "%s\n", strings.Join(columnNames, "\t")); err != nil { return err } @@ -299,141 +316,24 @@ func (h *HumanReadablePrinter) PrintObj(obj runtime.Object, output io.Writer) er obj, _ = decodeUnknownObject(obj, h.encoder, h.decoder) } + // print with a registered handler t := reflect.TypeOf(obj) if handler := h.handlerMap[t]; handler != nil { - if !h.options.NoHeaders && t != h.lastType { - var headers []string - for _, column := range handler.columnDefinitions { - if column.Priority != 0 && !h.options.Wide { - continue - } - headers = append(headers, strings.ToUpper(column.Name)) - } - headers = append(headers, formatLabelHeaders(h.options.ColumnLabels)...) - // LABELS is always the last column. - headers = append(headers, formatShowLabelsHeader(h.options.ShowLabels, t)...) - if h.options.WithNamespace { - headers = append(withNamespacePrefixColumns, headers...) - } - h.printHeader(headers, output) - h.lastType = t - } - - if handler.printRows { - args := []reflect.Value{reflect.ValueOf(obj), reflect.ValueOf(h.options)} - results := handler.printFunc.Call(args) - if results[1].IsNil() { - rows := results[0].Interface().([]metav1alpha1.TableRow) - for _, row := range rows { - - if h.options.WithNamespace { - if obj := row.Object.Object; obj != nil { - if m, err := meta.Accessor(obj); err == nil { - fmt.Fprint(output, m.GetNamespace()) - } - } - fmt.Fprint(output, "\t") - } - - for i, cell := range row.Cells { - if i != 0 { - fmt.Fprint(output, "\t") - } else { - // TODO: remove this once we drop the legacy printers - if h.options.WithKind && len(h.options.Kind) > 0 { - fmt.Fprintf(output, "%s/%s", h.options.Kind, cell) - continue - } - } - fmt.Fprint(output, cell) - } - - hasLabels := len(h.options.ColumnLabels) > 0 - if obj := row.Object.Object; obj != nil && (hasLabels || h.options.ShowLabels) { - if m, err := meta.Accessor(obj); err == nil { - for _, value := range labelValues(m.GetLabels(), h.options) { - output.Write([]byte("\t")) - output.Write([]byte(value)) - } - } - } - - output.Write([]byte("\n")) - } - return nil - } - return results[1].Interface().(error) - } - - // TODO: this code path is deprecated and will be removed when all handlers are row printers - args := []reflect.Value{reflect.ValueOf(obj), reflect.ValueOf(output), reflect.ValueOf(h.options)} - resultValue := handler.printFunc.Call(args)[0] - if resultValue.IsNil() { - return nil + includeHeaders := h.lastType != t && !h.options.NoHeaders + if err := printRowsForHandlerEntry(output, handler, obj, h.options, includeHeaders); err != nil { + return err } - return resultValue.Interface().(error) + h.lastType = t + return nil } - if _, err := meta.Accessor(obj); err == nil { - // we don't recognize this type, but we can still attempt to print some reasonable information about. - unstructured, ok := obj.(runtime.Unstructured) - if !ok { - return fmt.Errorf("error: unknown type %T, expected unstructured in %#v", obj, h.handlerMap) - } - - content := unstructured.UnstructuredContent() - - // we'll elect a few more fields to print depending on how much columns are already taken - maxDiscoveredFieldsToPrint := 3 - maxDiscoveredFieldsToPrint = maxDiscoveredFieldsToPrint - len(h.options.ColumnLabels) - if h.options.WithNamespace { // where's my ternary - maxDiscoveredFieldsToPrint-- - } - if h.options.ShowLabels { - maxDiscoveredFieldsToPrint-- - } - if maxDiscoveredFieldsToPrint < 0 { - maxDiscoveredFieldsToPrint = 0 - } - - var discoveredFieldNames []string // we want it predictable so this will be used to sort - ignoreIfDiscovered := []string{"kind", "apiVersion"} // these are already covered - for field, value := range content { - if slice.ContainsString(ignoreIfDiscovered, field, nil) { - continue - } - switch value.(type) { - case map[string]interface{}: - // just simpler types - continue - } - discoveredFieldNames = append(discoveredFieldNames, field) - } - sort.Strings(discoveredFieldNames) - if len(discoveredFieldNames) > maxDiscoveredFieldsToPrint { - discoveredFieldNames = discoveredFieldNames[:maxDiscoveredFieldsToPrint] - } - - if !h.options.NoHeaders && t != h.lastType { - headers := []string{"NAME", "KIND"} - for _, discoveredField := range discoveredFieldNames { - fieldAsHeader := strings.ToUpper(strings.Join(camelcase.Split(discoveredField), " ")) - headers = append(headers, fieldAsHeader) - } - headers = append(headers, formatLabelHeaders(h.options.ColumnLabels)...) - // LABELS is always the last column. - headers = append(headers, formatShowLabelsHeader(h.options.ShowLabels, t)...) - if h.options.WithNamespace { - headers = append(withNamespacePrefixColumns, headers...) - } - h.printHeader(headers, output) - h.lastType = t - } - - // if the error isn't nil, report the "I don't recognize this" error - if err := printUnstructured(unstructured, output, discoveredFieldNames, h.options); err != nil { + // print with the default handler if set, and use the columns from the last time + if h.defaultHandler != nil { + includeHeaders := h.lastType != h.defaultHandler && !h.options.NoHeaders + if err := printRowsForHandlerEntry(output, h.defaultHandler, obj, h.options, includeHeaders); err != nil { return err } + h.lastType = h.defaultHandler return nil } @@ -631,6 +531,87 @@ func (h *HumanReadablePrinter) PrintTable(obj runtime.Object, options PrintOptio return table, nil } +// printRowsForHandlerEntry prints the incremental table output (headers if the current type is +// different from lastType) including all the rows in the object. It returns the current type +// or an error, if any. +func printRowsForHandlerEntry(output io.Writer, handler *handlerEntry, obj runtime.Object, options PrintOptions, includeHeaders bool) error { + if includeHeaders { + var headers []string + for _, column := range handler.columnDefinitions { + if column.Priority != 0 && !options.Wide { + continue + } + headers = append(headers, strings.ToUpper(column.Name)) + } + headers = append(headers, formatLabelHeaders(options.ColumnLabels)...) + // LABELS is always the last column. + headers = append(headers, formatShowLabelsHeader(options.ShowLabels)...) + if options.WithNamespace { + headers = append(withNamespacePrefixColumns, headers...) + } + printHeader(headers, output) + } + + if !handler.printRows { + // TODO: this code path is deprecated and will be removed when all handlers are row printers + args := []reflect.Value{reflect.ValueOf(obj), reflect.ValueOf(output), reflect.ValueOf(options)} + resultValue := handler.printFunc.Call(args)[0] + if resultValue.IsNil() { + return nil + } + return resultValue.Interface().(error) + } + + args := []reflect.Value{reflect.ValueOf(obj), reflect.ValueOf(options)} + results := handler.printFunc.Call(args) + if results[1].IsNil() { + rows := results[0].Interface().([]metav1alpha1.TableRow) + printRows(output, rows, options) + return nil + } + return results[1].Interface().(error) + +} + +// printRows writes the provided rows to output. +func printRows(output io.Writer, rows []metav1alpha1.TableRow, options PrintOptions) { + for _, row := range rows { + if options.WithNamespace { + if obj := row.Object.Object; obj != nil { + if m, err := meta.Accessor(obj); err == nil { + fmt.Fprint(output, m.GetNamespace()) + } + } + fmt.Fprint(output, "\t") + } + + for i, cell := range row.Cells { + if i != 0 { + fmt.Fprint(output, "\t") + } else { + // TODO: remove this once we drop the legacy printers + if options.WithKind && len(options.Kind) > 0 { + fmt.Fprintf(output, "%s/%s", options.Kind, cell) + continue + } + } + fmt.Fprint(output, cell) + } + + hasLabels := len(options.ColumnLabels) > 0 + if obj := row.Object.Object; obj != nil && (hasLabels || options.ShowLabels) { + if m, err := meta.Accessor(obj); err == nil { + for _, value := range labelValues(m.GetLabels(), options) { + output.Write([]byte("\t")) + output.Write([]byte(value)) + } + } + } + + output.Write([]byte("\n")) + } +} + // legacyPrinterToTable uses the old printFunc with tabbed writer to generate a table. // TODO: remove when all legacy printers are removed. func (h *HumanReadablePrinter) legacyPrinterToTable(obj runtime.Object, handler *handlerEntry) (*metav1alpha1.Table, error) { @@ -754,12 +735,9 @@ func formatLabelHeaders(columnLabels []string) []string { } // headers for --show-labels=true -func formatShowLabelsHeader(showLabels bool, t reflect.Type) []string { +func formatShowLabelsHeader(showLabels bool) []string { if showLabels { - // TODO: this is all sorts of hack, fix - if t.String() != "*api.ThirdPartyResource" && t.String() != "*api.ThirdPartyResourceList" { - return []string{"LABELS"} - } + return []string{"LABELS"} } return nil } diff --git a/vendor/k8s.io/kubernetes/pkg/printers/humanreadable_test.go b/vendor/k8s.io/kubernetes/pkg/printers/humanreadable_test.go deleted file mode 100644 index 2649ba34e23a..000000000000 --- a/vendor/k8s.io/kubernetes/pkg/printers/humanreadable_test.go +++ /dev/null @@ -1,90 +0,0 @@ -/* -Copyright 2017 The Kubernetes Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package printers - -import ( - "bytes" - "regexp" - "testing" - - "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" -) - -func TestPrintUnstructuredObject(t *testing.T) { - tests := []struct { - expected string - options PrintOptions - }{ - { - expected: "NAME\\s+KIND\\s+DUMMY 1\\s+DUMMY 2\\s+ITEMS\nMyName\\s+Test\\.v1\\.\\s+present\\s+present\\s+1 item\\(s\\)", - }, - { - options: PrintOptions{ - WithNamespace: true, - }, - expected: "NAMESPACE\\s+NAME\\s+KIND\\s+DUMMY 1\\s+DUMMY 2\nMyNamespace\\s+MyName\\s+Test\\.v1\\.\\s+present\\s+present", - }, - { - options: PrintOptions{ - ShowLabels: true, - WithNamespace: true, - }, - expected: "NAMESPACE\\s+NAME\\s+KIND\\s+DUMMY 1\\s+LABELS\nMyNamespace\\s+MyName\\s+Test\\.v1\\.\\s+present\\s+", - }, - } - out := bytes.NewBuffer([]byte{}) - - obj := &unstructured.Unstructured{ - Object: map[string]interface{}{ - "apiVersion": "v1", - "kind": "Test", - "dummy1": "present", - "dummy2": "present", - "metadata": map[string]interface{}{ - "name": "MyName", - "namespace": "MyNamespace", - "creationTimestamp": "2017-04-01T00:00:00Z", - "resourceVersion": 123, - "uid": "00000000-0000-0000-0000-000000000001", - "dummy3": "present", - }, - "items": []interface{}{ - map[string]interface{}{ - "itemBool": true, - "itemInt": 42, - }, - }, - "url": "http://localhost", - "status": "ok", - }, - } - - for _, test := range tests { - printer := &HumanReadablePrinter{ - options: test.options, - } - printer.PrintObj(obj, out) - - matches, err := regexp.MatchString(test.expected, out.String()) - if err != nil { - t.Fatalf("unexpected error: %v", err) - } - if !matches { - t.Errorf("wanted %s, got %s", test.expected, out) - } - } -} diff --git a/vendor/k8s.io/kubernetes/pkg/printers/internalversion/BUILD b/vendor/k8s.io/kubernetes/pkg/printers/internalversion/BUILD index 4f087fd706f3..bc735afbb5eb 100644 --- a/vendor/k8s.io/kubernetes/pkg/printers/internalversion/BUILD +++ b/vendor/k8s.io/kubernetes/pkg/printers/internalversion/BUILD @@ -78,7 +78,6 @@ go_library( "//pkg/apis/networking:go_default_library", "//pkg/apis/policy:go_default_library", "//pkg/apis/rbac:go_default_library", - "//pkg/apis/settings:go_default_library", "//pkg/apis/storage:go_default_library", "//pkg/apis/storage/util:go_default_library", "//pkg/client/clientset_generated/clientset:go_default_library", diff --git a/vendor/k8s.io/kubernetes/pkg/printers/internalversion/printers.go b/vendor/k8s.io/kubernetes/pkg/printers/internalversion/printers.go index a5bcedb85558..c9065a9677e0 100644 --- a/vendor/k8s.io/kubernetes/pkg/printers/internalversion/printers.go +++ b/vendor/k8s.io/kubernetes/pkg/printers/internalversion/printers.go @@ -26,6 +26,7 @@ import ( "strings" "time" + "k8s.io/apimachinery/pkg/api/meta" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1alpha1 "k8s.io/apimachinery/pkg/apis/meta/v1alpha1" "k8s.io/apimachinery/pkg/labels" @@ -45,7 +46,6 @@ import ( "k8s.io/kubernetes/pkg/apis/networking" "k8s.io/kubernetes/pkg/apis/policy" "k8s.io/kubernetes/pkg/apis/rbac" - "k8s.io/kubernetes/pkg/apis/settings" "k8s.io/kubernetes/pkg/apis/storage" storageutil "k8s.io/kubernetes/pkg/apis/storage/util" "k8s.io/kubernetes/pkg/controller" @@ -77,8 +77,6 @@ var ( daemonSetColumns = []string{"NAME", "DESIRED", "CURRENT", "READY", "UP-TO-DATE", "AVAILABLE", "NODE-SELECTOR", "AGE"} daemonSetWideColumns = []string{"CONTAINER(S)", "IMAGE(S)", "SELECTOR"} eventColumns = []string{"LASTSEEN", "FIRSTSEEN", "COUNT", "NAME", "KIND", "SUBOBJECT", "TYPE", "REASON", "SOURCE", "MESSAGE"} - limitRangeColumns = []string{"NAME", "AGE"} - resourceQuotaColumns = []string{"NAME", "AGE"} namespaceColumns = []string{"NAME", "STATUS", "AGE"} secretColumns = []string{"NAME", "TYPE", "DATA", "AGE"} serviceAccountColumns = []string{"NAME", "SECRETS", "AGE"} @@ -86,10 +84,8 @@ var ( persistentVolumeClaimColumns = []string{"NAME", "STATUS", "VOLUME", "CAPACITY", "ACCESSMODES", "STORAGECLASS", "AGE"} componentStatusColumns = []string{"NAME", "STATUS", "MESSAGE", "ERROR"} thirdPartyResourceColumns = []string{"NAME", "DESCRIPTION", "VERSION(S)"} - roleColumns = []string{"NAME", "AGE"} roleBindingColumns = []string{"NAME", "AGE"} roleBindingWideColumns = []string{"ROLE", "USERS", "GROUPS", "SERVICEACCOUNTS"} - clusterRoleColumns = []string{"NAME", "AGE"} clusterRoleBindingColumns = []string{"NAME", "AGE"} clusterRoleBindingWideColumns = []string{"ROLE", "USERS", "GROUPS", "SERVICEACCOUNTS"} storageClassColumns = []string{"NAME", "TYPE"} @@ -150,10 +146,6 @@ func AddHandlers(h printers.PrintHandler) { h.Handler(nodeColumns, nodeWideColumns, printNodeList) h.Handler(eventColumns, nil, printEvent) h.Handler(eventColumns, nil, printEventList) - h.Handler(limitRangeColumns, nil, printLimitRange) - h.Handler(limitRangeColumns, nil, printLimitRangeList) - h.Handler(resourceQuotaColumns, nil, printResourceQuota) - h.Handler(resourceQuotaColumns, nil, printResourceQuotaList) h.Handler(namespaceColumns, nil, printNamespace) h.Handler(namespaceColumns, nil, printNamespaceList) h.Handler(secretColumns, nil, printSecret) @@ -184,23 +176,59 @@ func AddHandlers(h printers.PrintHandler) { h.Handler(networkPolicyColumns, nil, printExtensionsNetworkPolicyList) h.Handler(networkPolicyColumns, nil, printNetworkPolicy) h.Handler(networkPolicyColumns, nil, printNetworkPolicyList) - h.Handler(roleColumns, nil, printRole) - h.Handler(roleColumns, nil, printRoleList) h.Handler(roleBindingColumns, roleBindingWideColumns, printRoleBinding) h.Handler(roleBindingColumns, roleBindingWideColumns, printRoleBindingList) - h.Handler(clusterRoleColumns, nil, printClusterRole) - h.Handler(clusterRoleColumns, nil, printClusterRoleList) h.Handler(clusterRoleBindingColumns, clusterRoleBindingWideColumns, printClusterRoleBinding) h.Handler(clusterRoleBindingColumns, clusterRoleBindingWideColumns, printClusterRoleBindingList) h.Handler(certificateSigningRequestColumns, nil, printCertificateSigningRequest) h.Handler(certificateSigningRequestColumns, nil, printCertificateSigningRequestList) h.Handler(storageClassColumns, nil, printStorageClass) h.Handler(storageClassColumns, nil, printStorageClassList) - h.Handler(podPresetColumns, nil, printPodPreset) - h.Handler(podPresetColumns, nil, printPodPresetList) h.Handler(statusColumns, nil, printStatus) h.Handler(controllerRevisionColumns, nil, printControllerRevision) h.Handler(controllerRevisionColumns, nil, printControllerRevisionList) + + AddDefaultHandlers(h) +} + +// AddDefaultHandlers adds handlers that can work with most Kubernetes objects. +func AddDefaultHandlers(h printers.PrintHandler) { + // types without defined columns + objectMetaColumnDefinitions := []metav1alpha1.TableColumnDefinition{ + {Name: "Name", Type: "string", Format: "name", Description: metav1.ObjectMeta{}.SwaggerDoc()["name"]}, + {Name: "Age", Type: "string", Description: metav1.ObjectMeta{}.SwaggerDoc()["creationTimestamp"]}, + } + h.DefaultTableHandler(objectMetaColumnDefinitions, printObjectMeta) +} + +func printObjectMeta(obj runtime.Object, options printers.PrintOptions) ([]metav1alpha1.TableRow, error) { + if meta.IsListType(obj) { + rows := make([]metav1alpha1.TableRow, 0, 16) + err := meta.EachListItem(obj, func(obj runtime.Object) error { + nestedRows, err := printObjectMeta(obj, options) + if err != nil { + return err + } + rows = append(rows, nestedRows...) + return nil + }) + if err != nil { + return nil, err + } + return rows, nil + } + + rows := make([]metav1alpha1.TableRow, 0, 1) + m, err := meta.Accessor(obj) + if err != nil { + return nil, err + } + row := metav1alpha1.TableRow{ + Object: runtime.RawExtension{Object: obj}, + } + row.Cells = append(row.Cells, m.GetName(), translateTimestamp(m.GetCreationTimestamp())) + rows = append(rows, row) + return rows, nil } // Pass ports=nil for all ports. @@ -1314,72 +1342,6 @@ func printEventList(list *api.EventList, w io.Writer, options printers.PrintOpti return nil } -func printLimitRange(limitRange *api.LimitRange, w io.Writer, options printers.PrintOptions) error { - return printObjectMeta(limitRange.ObjectMeta, w, options, true) -} - -// Prints the LimitRangeList in a human-friendly format. -func printLimitRangeList(list *api.LimitRangeList, w io.Writer, options printers.PrintOptions) error { - for i := range list.Items { - if err := printLimitRange(&list.Items[i], w, options); err != nil { - return err - } - } - return nil -} - -// printObjectMeta prints the object metadata of a given resource. -func printObjectMeta(meta metav1.ObjectMeta, w io.Writer, options printers.PrintOptions, namespaced bool) error { - name := printers.FormatResourceName(options.Kind, meta.Name, options.WithKind) - - if namespaced && options.WithNamespace { - if _, err := fmt.Fprintf(w, "%s\t", meta.Namespace); err != nil { - return err - } - } - - if _, err := fmt.Fprintf( - w, "%s\t%s", - name, - translateTimestamp(meta.CreationTimestamp), - ); err != nil { - return err - } - if _, err := fmt.Fprint(w, printers.AppendLabels(meta.Labels, options.ColumnLabels)); err != nil { - return err - } - _, err := fmt.Fprint(w, printers.AppendAllLabels(options.ShowLabels, meta.Labels)) - return err -} - -func printResourceQuota(resourceQuota *api.ResourceQuota, w io.Writer, options printers.PrintOptions) error { - return printObjectMeta(resourceQuota.ObjectMeta, w, options, true) -} - -// Prints the ResourceQuotaList in a human-friendly format. -func printResourceQuotaList(list *api.ResourceQuotaList, w io.Writer, options printers.PrintOptions) error { - for i := range list.Items { - if err := printResourceQuota(&list.Items[i], w, options); err != nil { - return err - } - } - return nil -} - -func printRole(role *rbac.Role, w io.Writer, options printers.PrintOptions) error { - return printObjectMeta(role.ObjectMeta, w, options, true) -} - -// Prints the Role in a human-friendly format. -func printRoleList(list *rbac.RoleList, w io.Writer, options printers.PrintOptions) error { - for i := range list.Items { - if err := printRole(&list.Items[i], w, options); err != nil { - return err - } - } - return nil -} - func printRoleBinding(roleBinding *rbac.RoleBinding, w io.Writer, options printers.PrintOptions) error { meta := roleBinding.ObjectMeta name := printers.FormatResourceName(options.Kind, meta.Name, options.WithKind) @@ -1428,23 +1390,6 @@ func printRoleBindingList(list *rbac.RoleBindingList, w io.Writer, options print return nil } -func printClusterRole(clusterRole *rbac.ClusterRole, w io.Writer, options printers.PrintOptions) error { - if options.WithNamespace { - return fmt.Errorf("clusterRole is not namespaced") - } - return printObjectMeta(clusterRole.ObjectMeta, w, options, false) -} - -// Prints the ClusterRole in a human-friendly format. -func printClusterRoleList(list *rbac.ClusterRoleList, w io.Writer, options printers.PrintOptions) error { - for i := range list.Items { - if err := printClusterRole(&list.Items[i], w, options); err != nil { - return err - } - } - return nil -} - func printClusterRoleBinding(clusterRoleBinding *rbac.ClusterRoleBinding, w io.Writer, options printers.PrintOptions) error { meta := clusterRoleBinding.ObjectMeta name := printers.FormatResourceName(options.Kind, meta.Name, options.WithKind) @@ -1947,19 +1892,6 @@ func printStorageClassList(scList *storage.StorageClassList, w io.Writer, option return nil } -func printPodPreset(podPreset *settings.PodPreset, w io.Writer, options printers.PrintOptions) error { - return printObjectMeta(podPreset.ObjectMeta, w, options, false) -} - -func printPodPresetList(list *settings.PodPresetList, w io.Writer, options printers.PrintOptions) error { - for i := range list.Items { - if err := printPodPreset(&list.Items[i], w, options); err != nil { - return err - } - } - return nil -} - func printStatus(status *metav1.Status, w io.Writer, options printers.PrintOptions) error { if _, err := fmt.Fprintf(w, "%s\t%s\t%s\n", status.Status, status.Reason, status.Message); err != nil { return err diff --git a/vendor/k8s.io/kubernetes/pkg/printers/internalversion/printers_test.go b/vendor/k8s.io/kubernetes/pkg/printers/internalversion/printers_test.go index b1afd8ca326a..663d5bcb7615 100644 --- a/vendor/k8s.io/kubernetes/pkg/printers/internalversion/printers_test.go +++ b/vendor/k8s.io/kubernetes/pkg/printers/internalversion/printers_test.go @@ -22,6 +22,7 @@ import ( "fmt" "io" "reflect" + "regexp" "strconv" "strings" "testing" @@ -103,6 +104,112 @@ func TestPrintDefault(t *testing.T) { } } +func TestPrintUnstructuredObject(t *testing.T) { + obj := &unstructured.Unstructured{ + Object: map[string]interface{}{ + "apiVersion": "v1", + "kind": "Test", + "dummy1": "present", + "dummy2": "present", + "metadata": map[string]interface{}{ + "name": "MyName", + "namespace": "MyNamespace", + "creationTimestamp": "2017-04-01T00:00:00Z", + "resourceVersion": 123, + "uid": "00000000-0000-0000-0000-000000000001", + "dummy3": "present", + "labels": map[string]interface{}{"test": "other"}, + }, + /*"items": []interface{}{ + map[string]interface{}{ + "itemBool": true, + "itemInt": 42, + }, + },*/ + "url": "http://localhost", + "status": "ok", + }, + } + + tests := []struct { + expected string + options printers.PrintOptions + object runtime.Object + }{ + { + expected: "NAME\\s+AGE\nMyName\\s+\\d+", + object: obj, + }, + { + options: printers.PrintOptions{ + WithNamespace: true, + }, + expected: "NAMESPACE\\s+NAME\\s+AGE\nMyNamespace\\s+MyName\\s+\\d+", + object: obj, + }, + { + options: printers.PrintOptions{ + ShowLabels: true, + WithNamespace: true, + }, + expected: "NAMESPACE\\s+NAME\\s+AGE\\s+LABELS\nMyNamespace\\s+MyName\\s+\\d+\\w+\\s+test\\=other", + object: obj, + }, + { + expected: "NAME\\s+AGE\nMyName\\s+\\d+\\w+\nMyName2\\s+\\d+", + object: &unstructured.Unstructured{ + Object: map[string]interface{}{ + "apiVersion": "v1", + "kind": "Test", + "dummy1": "present", + "dummy2": "present", + "items": []interface{}{ + map[string]interface{}{ + "metadata": map[string]interface{}{ + "name": "MyName", + "namespace": "MyNamespace", + "creationTimestamp": "2017-04-01T00:00:00Z", + "resourceVersion": 123, + "uid": "00000000-0000-0000-0000-000000000001", + "dummy3": "present", + "labels": map[string]interface{}{"test": "other"}, + }, + }, + map[string]interface{}{ + "metadata": map[string]interface{}{ + "name": "MyName2", + "namespace": "MyNamespace", + "creationTimestamp": "2017-04-01T00:00:00Z", + "resourceVersion": 123, + "uid": "00000000-0000-0000-0000-000000000001", + "dummy3": "present", + "labels": "badlabel", + }, + }, + }, + "url": "http://localhost", + "status": "ok", + }, + }, + }, + } + out := bytes.NewBuffer([]byte{}) + + for _, test := range tests { + out.Reset() + printer := printers.NewHumanReadablePrinter(nil, nil, test.options).With(AddDefaultHandlers) + printer.PrintObj(test.object, out) + + matches, err := regexp.MatchString(test.expected, out.String()) + if err != nil { + t.Fatalf("unexpected error: %v", err) + } + if !matches { + t.Errorf("wanted:\n%s\ngot:\n%s", test.expected, out) + } + } +} + type TestPrintType struct { Data string } diff --git a/vendor/k8s.io/kubernetes/staging/src/k8s.io/apimachinery/pkg/api/meta/help.go b/vendor/k8s.io/kubernetes/staging/src/k8s.io/apimachinery/pkg/api/meta/help.go index 9e0fb152adea..c70b3d2b6c70 100644 --- a/vendor/k8s.io/kubernetes/staging/src/k8s.io/apimachinery/pkg/api/meta/help.go +++ b/vendor/k8s.io/kubernetes/staging/src/k8s.io/apimachinery/pkg/api/meta/help.go @@ -67,6 +67,9 @@ func GetItemsPtr(list runtime.Object) (interface{}, error) { // EachListItem invokes fn on each runtime.Object in the list. Any error immediately terminates // the loop. func EachListItem(obj runtime.Object, fn func(runtime.Object) error) error { + if unstructured, ok := obj.(runtime.Unstructured); ok { + return unstructured.EachListItem(fn) + } // TODO: Change to an interface call? itemsPtr, err := GetItemsPtr(obj) if err != nil { diff --git a/vendor/k8s.io/kubernetes/staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/unstructured.go b/vendor/k8s.io/kubernetes/staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/unstructured.go index fed687e9bd32..e288686949a2 100644 --- a/vendor/k8s.io/kubernetes/staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/unstructured.go +++ b/vendor/k8s.io/kubernetes/staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured/unstructured.go @@ -69,6 +69,39 @@ func (obj *Unstructured) IsList() bool { } func (obj *UnstructuredList) IsList() bool { return true } +func (obj *Unstructured) EachListItem(fn func(runtime.Object) error) error { + if obj.Object == nil { + return fmt.Errorf("content is not a list") + } + field, ok := obj.Object["items"] + if !ok { + return fmt.Errorf("content is not a list") + } + items, ok := field.([]interface{}) + if !ok { + return nil + } + for _, item := range items { + child, ok := item.(map[string]interface{}) + if !ok { + return fmt.Errorf("items member is not an object") + } + if err := fn(&Unstructured{Object: child}); err != nil { + return err + } + } + return nil +} + +func (obj *UnstructuredList) EachListItem(fn func(runtime.Object) error) error { + for i := range obj.Items { + if err := fn(&obj.Items[i]); err != nil { + return err + } + } + return nil +} + func (obj *Unstructured) UnstructuredContent() map[string]interface{} { if obj.Object == nil { obj.Object = make(map[string]interface{}) diff --git a/vendor/k8s.io/kubernetes/staging/src/k8s.io/apimachinery/pkg/runtime/interfaces.go b/vendor/k8s.io/kubernetes/staging/src/k8s.io/apimachinery/pkg/runtime/interfaces.go index fcb18ba111f1..281f8d23c7c2 100644 --- a/vendor/k8s.io/kubernetes/staging/src/k8s.io/apimachinery/pkg/runtime/interfaces.go +++ b/vendor/k8s.io/kubernetes/staging/src/k8s.io/apimachinery/pkg/runtime/interfaces.go @@ -242,10 +242,14 @@ type Unstructured interface { // IsUnstructuredObject is a marker interface to allow objects that can be serialized but not introspected // to bypass conversion. IsUnstructuredObject() - // IsList returns true if this type is a list or matches the list convention - has an array called "items". - IsList() bool // UnstructuredContent returns a non-nil, mutable map of the contents of this object. Values may be // []interface{}, map[string]interface{}, or any primitive type. Contents are typically serialized to // and from JSON. UnstructuredContent() map[string]interface{} + // IsList returns true if this type is a list or matches the list convention - has an array called "items". + IsList() bool + // EachListItem should pass a single item out of the list as an Object to the provided function. Any + // error should terminate the iteration. If IsList() returns false, this method should return an error + // instead of calling the provided function. + EachListItem(func(Object) error) error }