kubernetes/pkg/kubectl
Kubernetes Submit Queue e4edd817af Merge pull request #35220 from MrHohn/kubectl-apply-type
Automatic merge from submit-queue

Implement --prune-whitelist(-w) flag to overwrite default whitelist for --prune

From #34274.

Updates:

As suggested, the new commits implement a default whitelist for `kubectl apply --prune`, which could be overwritten by using `--prune-whitelist`or `-w` flag. The default whitelist and example as below.

Also supports `--dry-run` for `--prune` to fix #35222.

whitelist:

```
type pruneResource struct {
    group      string
    version    string
    kind       string
    namespaced bool
}

*pruneResources = []pruneResource{
    {"", "v1", "ConfigMap", true},
    {"", "v1", "Endpoints", true},
    {"", "v1", "Namespace", false},
    {"", "v1", "PersistentVolumeClaim", true},
    {"", "v1", "PersistentVolume", false},
    {"", "v1", "Pod", true},
    {"", "v1", "ReplicationController", true},
    {"", "v1", "Secret", true},
    {"", "v1", "Service", true},
    {"batch", "v1", "Job", true},
    {"extensions", "v1beta1", "DaemonSet", true},
    {"extensions", "v1beta1", "Deployment", true},
    {"extensions", "v1beta1", "HorizontalPodAutoscaler", true},
    {"extensions", "v1beta1", "Ingress", true},
    {"extensions", "v1beta1", "ReplicaSet", true},
    {"apps", "v1beta1", "StatefulSet", true},
}
```

example:

```
$ kubectl apply -f /path/to/file --prune -l test=true \
      -w core/v1/Pod \
      -w core/v1/Service \
      -w extensions/v1beta1/Deployment 
```

@mikedanese
2016-11-03 18:46:17 -07:00
..
cmd Merge pull request #35220 from MrHohn/kubectl-apply-type 2016-11-03 18:46:17 -07:00
metricsutil include multiple versions in clientset 2016-10-29 13:30:47 -07:00
resource move client/unversioned/fake to client/restclient/fake 2016-10-29 14:22:02 -07:00
testing Move pkg/kubectl reviewers into an alias 2016-10-28 14:54:17 -07:00
apply.go Fix typos 2016-10-15 00:21:00 +03:00
autoscale.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
bash_comp_utils.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
BUILD Update bazel 2016-11-03 13:47:09 -07:00
cluster_test.go [Federation][(Un)join-00] Implement federation/cluster resource generator. 2016-11-01 00:58:54 -07:00
cluster.go [Federation][(Un)join-00] Implement federation/cluster resource generator. 2016-11-01 00:58:54 -07:00
configmap_test.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
configmap.go Move IsSecretKey into util/validation 2016-07-03 02:19:09 -07:00
custom_column_printer_test.go 24133 fix: --no-headers works with custom columns now 2016-07-07 10:04:09 +02:00
custom_column_printer.go Simplify the output in AfterPrint() 2016-09-08 09:42:17 +10:00
deployment_test.go Add "create deployment" sub-command 2016-08-08 13:24:30 +10:00
deployment.go Add "create deployment" sub-command 2016-08-08 13:24:30 +10:00
describe_test.go kubectl: move events sorting interface to the api for general use 2016-09-18 19:25:42 +02:00
describe.go Merge pull request #30091 from rootfs/azure-storage 2016-11-01 17:27:14 -07:00
doc.go Use Go canonical import paths 2016-07-16 13:48:21 -04:00
explain.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
generate_test.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
generate.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
history.go kubectl: refactor rollout history to be more configurable 2016-07-12 10:36:14 +02:00
interfaces.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
kubectl_test.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
kubectl.go make shortcut expanding restmapper handle all 2016-09-15 11:03:51 -04:00
namespace_test.go Fix namespace_test error message 2016-08-08 12:08:57 +10:00
namespace.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
OWNERS Move pkg/kubectl reviewers into an alias 2016-10-28 14:54:17 -07:00
proxy_server_test.go Make "attach" and "exec" rejection in proxy more explicit 2016-07-19 20:50:19 +02:00
proxy_server.go Fix various typos in kubectl 2016-08-02 19:51:51 +03:00
quota_test.go Add --scopes to kubectl-create-quota and add tests 2016-07-26 14:12:35 +02:00
quota.go Add --scopes to kubectl-create-quota and add tests 2016-07-26 14:12:35 +02:00
resource_filter.go add resource handling before printing 2016-09-21 10:03:59 -04:00
resource_printer_test.go Add NodePort value in kubectl output 2016-10-17 07:57:34 +02:00
resource_printer.go Set reason and message on Pod during nodecontroller eviction 2016-11-03 13:47:03 -07:00
rollback.go rollout undo add dry-run implementation 2016-09-08 08:02:04 +08:00
rolling_updater_test.go move client/unversioned/fake to client/restclient/fake 2016-10-29 14:22:02 -07:00
rolling_updater.go include multiple versions in clientset 2016-10-29 13:30:47 -07:00
rollout_status_test.go kubectl: add --revision flag in rollout status 2016-10-10 15:04:46 +02:00
rollout_status.go include multiple versions in clientset 2016-10-29 13:30:47 -07:00
run_test.go add port validate when --port is set or --expose=true 2016-09-01 17:24:02 +08:00
run.go use len > 0 to replace port > 0 2016-09-28 10:23:25 +08:00
scale_test.go include multiple versions in clientset 2016-10-29 13:30:47 -07:00
scale.go include multiple versions in clientset 2016-10-29 13:30:47 -07:00
secret_for_docker_registry_test.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
secret_for_docker_registry.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
secret_for_tls_test.go the created path should be closed in test case 2016-09-06 11:08:52 +08:00
secret_for_tls.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
secret_test.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
secret.go Move IsSecretKey into util/validation 2016-07-03 02:19:09 -07:00
service_basic_test.go Add "create service" sub-commands 2016-08-08 12:31:21 +10:00
service_basic.go make portallocator.ErrNotInRange a type 2016-10-04 13:19:24 -04:00
service_test.go Merge pull request #28239 from ApsOps/kubectl-expose-headless-svc 2016-08-02 01:18:19 -07:00
service.go Merge pull request #28239 from ApsOps/kubectl-expose-headless-svc 2016-08-02 01:18:19 -07:00
serviceaccount_test.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
serviceaccount.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
sorted_resource_name_list_test.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
sorted_resource_name_list.go Merge pull request #28110 from mfojtik/describe-volume-mounts 2016-06-30 17:15:05 -07:00
sorting_printer_test.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
sorting_printer.go Simplify the output in AfterPrint() 2016-09-08 09:42:17 +10:00
stop_test.go include multiple versions in clientset 2016-10-29 13:30:47 -07:00
stop.go Merge pull request #35471 from caesarxuchao/client-gen-multi-versions 2016-10-29 15:40:13 -07:00
version.go convert more command to use a generated clientset 2016-09-12 07:38:34 -04:00