Commit Graph

79 Commits

Author SHA1 Message Date
wojtekt 4f3723dc40 Register conversions for kubectl testing types
Kubernetes-commit: ea140f5e1a1a297e251cc28a40e2bbf77dfd02e4
2020-01-09 14:16:33 +01:00
Tim Allclair 6fca42a14a Ensure testing credentials are labeled as such
Kubernetes-commit: 9d3670f3586c98c02cdca93b7c98dd91fc0b87bd
2020-02-04 10:36:05 -08:00
Antoine Pelisse 4c36396b35 kubectl-diff: Return non-1 errors on kubectl failures
Currently, diff AND kubectl can return 1 errors either when diff finds
differences, or when kubectl fails something. It also prints an ugly
error when diff finds a differences, since 1 is treated as an error.

Two things this PR does:

1. If diff returns 1, then do not treat it as an error, and exit with
exit code 1. It no longer prints the ugly error.

2. Kubectl errors are +1'd so that they never return 1 which shouldn't
be considered an error.

We need to update the documentation accordingly, to mention that
`KUBECTL_EXTERNAL_DIFF` programs must also follow the convention of
using one as their exit code for changes detected.

Kubernetes-commit: f2b21f08d95291212ba8987aa9d446c02a96089a
2020-01-21 13:52:41 -08:00
Julian V. Modesto c0b11fa131 Extend --dry-run to support string values.
* Extend --dry-run to support string values for dry run strategies
  'client', 'server', and 'none'
* Ensure --dry-run is set and accessed via cmdutil
* Deprecate --dry-run (unset), --dry-run=true, and --dry-run=false

Kubernetes-commit: af52beda260257e81cc9e19e9e5108b682ee93d6
2019-12-15 18:29:27 -05:00
Mike Danese 4524edecce cleanup req.Context() and ResponseWrapper
Kubernetes-commit: 968adfa99362f733ef82f4aabb34a59dbbd6e56a
2020-01-27 18:52:27 -08:00
Maciej Szulik c6c7c0dfb8 Remove kubectl run generators
Kubernetes-commit: 82f97775b7c2317a8ca45e616a09e447da987ab2
2020-01-09 17:09:51 +01:00
Maciej Szulik 72f1da0b87 Fix kubectl taint's Complete parsing
Kubernetes-commit: 6972d6f33af6b04a9f436fc0858b27d3b9249ea2
2020-01-21 14:36:16 +01:00
Julian V. Modesto a3f7877cd1 Support DryRun in cli-runtime REST Helper.
- Move TestSupportsDryRun to cli-runtime
- Move TestDryRunVerifier to cli-runtime
- Add OpenAPI schema for testdata to cli-runtime
- Use Helper.DryRun and DryRunVerifier for Apply
- Add WithOptions methods to Helper

Kubernetes-commit: 6bea0e469bcfe4967cbf2656a998d60e0b684747
2019-12-18 22:00:34 -05:00
Antoine Pelisse 104e4d1e7a Improve error message when diff binary is not in PATH
Kubernetes-commit: c1a4cd9c75b4ed476ec3ed1b27a785dd1685a6e3
2020-01-17 16:17:41 -08:00
martinkaburu 50f26dd951 fix apply --prune to check cli specified namespace
Kubernetes-commit: f2518347f3dbe36586367c94aa98d5096f74a742
2019-11-25 23:21:43 +03:00
Name Surname b21179860f Fix kubectl top sort-by cpu and sort-by memory options
Kubernetes-commit: 824af9e3072d9d68071fec291ac3f5f89362e4ab
2019-09-04 16:28:21 +02:00
yuzhiquan baaee7d515 cleanup(kubectl taint): fix Errorf and comment error, and remove unnecessary bool flag
Kubernetes-commit: 87e8137c18ab27308617e83a18fde5de3edc64d7
2019-12-17 19:41:18 +08:00
Maciej Szulik 51c0d83068 Allow embedding logs command
Kubernetes-commit: 925be295fb09655ae668842e42aab2ea919c5ef2
2020-01-13 14:54:54 +01:00
zhouya0 cbbf8d8bf6 fix kubectl annotate local error
Kubernetes-commit: 568edf72ec1fc10368a19be8184b201265e6c39e
2020-01-08 17:10:08 +08:00
zhouya0 65d1aa5d00 fix apply set last applied namespace
Kubernetes-commit: 4291a03e39559d10eab0253f9cd431d6a375e235
2019-12-20 16:09:49 +08:00
danielqsj 4b914450ab unify alias of api errors under pkg and staging
Kubernetes-commit: 5bc0e26c1902e7e28abfc828de19a2dbb3e492c2
2019-11-12 16:26:59 +08:00
hbceylan f0cc26a729 fix kubectl run help image name
Kubernetes-commit: 5b4a7744fad614732de87e032f5d4dba743fddf9
2019-12-23 21:49:37 +00:00
Sean Sullivan 2598a9eb6d Adds PreProcessor and PostProcessor functions for modifying apply behavior
Kubernetes-commit: 79bc63fb4b79caea4b141d318b11a0892ca14c95
2019-12-17 14:58:54 -08:00
Sean Sullivan 641631dfad Moves visitedUids and visitedNamespaces (used for pruning) into ApplyOptions
Kubernetes-commit: 4e45421f610eb881a03c0d82fca038788db12b08
2019-12-17 14:19:00 -08:00
Sean Sullivan 42da131431 Move patch functionality for apply into its own file.
Kubernetes-commit: 670369f2a4a7a7d9dad3a1ae1a334317a135f6c7
2019-12-16 16:41:49 -08:00
Sean Sullivan 65d873e277 Moved prune functionality into its own file.
Kubernetes-commit: e38e320222a1f44373ab3eaea8713f4772b26f6b
2019-12-16 16:13:39 -08:00
Sean Sullivan dfcc649b05 Refactored some apply printing functionality; removed unneeded count and objs variables
Kubernetes-commit: 07cb2fda5dada5c5145216bcab90e38426cf68e8
2019-12-16 15:21:57 -08:00
Sean Sullivan dd819b3425 Created GetObjects() method for ApplyOptions and integrated into apply
Kubernetes-commit: 02af4c9be20db201f2a2069816e97004a96bf760
2019-12-16 13:56:52 -08:00
Sean Sullivan 395bc6fc90 Changes Visit() to Infos() in apply to keep slice of objects
Kubernetes-commit: 2103ea4ddedc59d14322fd0fc34c8a9928256551
2019-12-16 13:00:33 -08:00
Anish Shah 3c43664ced Refactor `kubectl proxy` command to have similar design pattern as other kubectl commands.
Few days ago I watched this kubectl code base tour on Youtube
(https://www.youtube.com/watch?v=uz8TS3V9qqY). It talks about a design
pattern that almost every command follows. But I found out that
`kubectl proxy` command does not follow this pattern. So, I'm
refactoring this command to use similar design pattern as other kubectl
commands.

Kubernetes-commit: 0bd41a300f12b1dbaec19fc94b868f91640542df
2019-09-21 10:52:42 -07:00
Haosdent Huang 08def252f7 fix static check in kubectl/pkg/cmd/annotate.
Kubernetes-commit: 303c1a40bcee81fe14845d2af9dae2073f86ec52
2019-12-08 23:25:50 +08:00
Naoki Oketani fe07b19cb4 Fix a bug in port-forward: named port not working with service
Kubernetes-commit: 73c1ab71e27eee0066ba637575e60093952f3ff1
2019-11-22 02:59:26 +09:00
zhouya0 0833d7cba2 kubectl change podSecurityPolicy group
Kubernetes-commit: 7947b6ce6d8a498000d81b68fa674f88b1d7680a
2019-11-18 15:00:33 +08:00
Michael Gugino ebda9f6262 kubectl/drain: add option skip-wait-for-delete-timeout
Currently, some circumstances may cause waitForDelete to
never succeed after the pod has been marked for deletion.
In particular, Nodes that are unresponsive and have
pods with local-storage will not be able to
successfully drain.

We should allow drain to ignore pods that have a
DeletionTimestamp older than a user-provided age.
This will allow controllers utilizing kubectl/drain
to optionally account for a pod that cannot be
removed due to a misbehaving node.

Kubernetes-commit: da53044abdf8c8a9771a5c3dfd861f0c4ec78c40
2019-11-23 20:00:06 -05:00
Sally O'Malley 6d309ed99e When running `kubectl drain` in dry-run, list warnings and pods that would be deleted.
Kubernetes-commit: 909300b8be909c48a68900c407de03be95555409
2019-09-12 14:31:09 -04:00
Michael Gugino feccbe3c28 kubectl/drain: add disable-eviction option
Currently, if eviction is supported during a drain operation,
eviction is always used.

This commit allows the user to specify disabling eviction.
This is particularly useful when you wish to ignore
PodDisruptionBudgets after a normal drain has failed for
some time.

Kubernetes-commit: 6c1d587d5142b95e6c169a198a086332a7e4d8ad
2019-11-23 11:18:52 -05:00
Jordan Liggitt 1d31df4756 fixup kubectl test
Kubernetes-commit: deb75da17bb1fa95e5b56fb1207ba247cd9953dd
2019-11-26 13:13:38 -05:00
Jordan Liggitt 74e4737411 Switch TableGenerator/TableConvertor interfaces to metav1
Kubernetes-commit: 36eb250cbb441984260ded6f7abeb796974031c3
2019-11-26 13:13:25 -05:00
Sally O'Malley de3d4fcc02 don't error if set-resources patch is empty
Kubernetes-commit: ecd1c0747272ab908daa64b0f4b2b18a8cb18362
2019-11-20 19:22:18 -05:00
zhouya0 6d82c82d12 add test coverage with kubectl get components
Kubernetes-commit: 07806d4300c5f410194c0dcd2da86c40bef42e1b
2019-11-25 17:57:56 +08:00
Jordan Liggitt 25e7825a5b Fix --resource-version handling in kubectl
Kubernetes-commit: 0ac8345d3a4c5ee38fd3fc2c40976ba876d815e7
2019-11-14 09:24:42 -05:00
Maciej Szulik dfa60c7722 Drop job from scale description
Kubernetes-commit: c3964927f758be88a65f833595a0b0d5456ce729
2019-10-23 12:25:42 +02:00
louisgong ae926dc56e fix kubectl diff panic
Kubernetes-commit: 4f13f2739a3a33c7ed4b86b98054972c0fde4579
2019-11-09 20:34:51 +08:00
Clayton Coleman 4ca8f5ecfe test: kubectl unit tests should be using codecs without conversion
Tests are also refactored to use the simpler RESTClient code path.

Kubernetes-commit: 8a9b8c87c40ee65751828d9dd02f4f642588f0ce
2019-11-03 15:20:10 -05:00
Ted Yu eb7c1bf189 Only put un-filtered pod in podDeleteList
Kubernetes-commit: 65c2f61806468d25795516d6077ce0c31c83adcd
2019-10-30 09:55:34 -07:00
Maciej Szulik 89d9f2ef29 Set TypeSetter in get print flags, like we do everywhere else
Kubernetes-commit: 626b9081fbee1eeae3f96a99f40da6c665d5753f
2019-10-31 18:25:46 +01:00
ritho b0cd1c2290 Do some Kubectl optimizations suggested by the golangci linter
The tool golangci-lint gives a bunch of warnings. This PR solves the easier/less controversial ones, so the code is simpler and a little bit more optimal, since it removes some if conditions.

Kubernetes-commit: cd2adbe760641f844d84d411f9adcf17fb6982ff
2019-06-04 01:25:43 -05:00
clarklee92 87db492820 Modify the status code number to HTTP status semantics
Signed-off-by: clarklee92 <clarklee1992@hotmail.com>

Kubernetes-commit: f86f5ee14ef3c8adf9855ce16dcc57beca949719
2019-11-06 00:45:35 +08:00
Sean Sullivan 3ec9685c39 Rename test/data directory to testdata
Kubernetes-commit: 4ce97d6c48ae4735463f020430dd20539a03e8c5
2019-10-31 13:40:02 -07:00
Sean Sullivan 7965551001 Moves kubectl get subcommand to staging
Kubernetes-commit: 2a3f28863baa804a05d35c3958a107f9210b4c9e
2019-10-29 15:51:00 -07:00
Pablo Mercado 6b77b0790a Kubectl certificate signing: fix certificate deny message (#84400)
* add certificate deny flag message

* bring back NewCertificateOptions with operation parameter

Kubernetes-commit: e528c2f2925d61fa7a12313a895af5a312d36dd6
2019-10-27 03:24:33 +00:00
Ted Yu 587c053a55 Add note on the applicability of --grace-period
Kubernetes-commit: abc9a9f8369c220ee3a1de2e1917edef3d7d680e
2019-10-24 16:07:02 -07:00
Sean Sullivan c6a8c8a72e Removes duplicate TabWriter. Several updates to reference the one remaining TabWriter in cli-runtime.
Kubernetes-commit: 958d7d3b6e74b8648fb897ce09f52049eb9823a1
2019-10-17 13:32:40 -07:00
David Eads 3fa753054c add option to skip verifying kubelet certificates for logs
Kubernetes-commit: f0931cbf48cb4f170177d42c1a3c75b9d8792c52
2019-10-23 14:33:37 -04:00
Ivan Shvedunov 6bf46a2bba Fix crash in kubectl drain
When there's a pod that can't be evicted/deleted, and apiserver
connection breaks at a wrong moment, kubectl can panic due
to nil pointer dereference. This PR also improves drain tests
to avoid confusing panics with fatal errors.

Kubernetes-commit: 37226f8e8306475895d7e68eb52c57e57f00ee28
2019-10-11 22:12:26 +03:00