Commit Graph

367 Commits

Author SHA1 Message Date
Tim Hockin
5f490b4fe8
Clarify, document KUBE_OUTPUT_* variables 2024-02-29 22:05:42 -08:00
Tim Hockin
a7cf7fe55a
Bump shellcheck to 0.9.0
Fix everything it flagged.
2024-01-26 16:26:40 -08:00
yulng
06679402e7 remove PruneWhitelist, use prune-allowlist instead
Signed-off-by: yulng <wei.yang@daocloud.io>
Signed-off-by: Paco Xu <paco.xu@daocloud.io>
2023-12-15 11:51:14 +08:00
Arda Güçlü
074a8b0084
KEP-3638: Promote plugin resolution to beta (#120663)
* Promote plugin resolution to beta

* Not use plugin for kubectl create -f command execution

`kubectl create -f` is legitimate command execution and we shouldn't
search plugins if user invokes this.

* Add integration test for plugin resolution for create command

* Reintroduce feature flag to ability to disable it explicitly
2023-10-23 13:41:38 +02:00
Kubernetes Prow Robot
68d55bc4fb
Merge pull request #120416 from ardaguclu/move-interactive-delete-beta
KEP-3895: Promote interactive delete to beta
2023-10-23 12:30:44 +02:00
Kubernetes Prow Robot
b4fd162664
Merge pull request #118647 from mochizuki875/fix_netadmin_debugging_profile
Add CAP_NET_RAW to netadmin debugging profile
2023-10-19 09:31:16 +02:00
Arda Güçlü
a504aed54d
Add shortname ambiguity warning in shortcut expander (#117668)
* Add warning handler callback function in shortcut expander

Currently, errors in client-go are propagated back to the callers via
function returns. However, there is no elegant way for just warning users.
For example, when user wants to get a resource with it's short name format
and if there are multiple resources belonging to this short name, we need to
warn user about this ambugity which one is picked and which ones are discarded.

Not only to overcome this particular case mentioned above, but also propose a
way for the possible warnings in the future, this commit adds a warningHandler
callback function in shortcutExpander.

* Add warningPrinter functionality in ConfigFlags

ConfigFlags has neither warning user in a standardized
format functionality nor passing warning callback functions to other upper level
libraries such as client-go.

This commit adds an ability that user can set warningPrinters
according to their IOStreams and this warningPrinters will be used
to raise possible warnings happening not only in cli-runtime but
also in client-go.

* Pass warning callback function in ConfigFlags to shortcutExpander

This commit passes warning callback function to print possible
warnings happened in shortcut expander to warn user in a
standardized format.

* Add integration test for CRDs having ambiguous short names

This commit adds integration test to assure that warning message
related to this ambiguity is printed when resources are being retrieved via their short name
representations in cases where multiple resources have same
short names.

This integration test also ensures that the logic behind which resource
will be selected hasn't been changed which may cause disperancies in
clusters.

* Remove defaultConfigFlag global variable

* Move default config flags initialization into function

* Skip warning for versions of same group/resource

* Run update-vendor

* Warn only once when there are multiple versions registered for ambiguous resource

* Apply gocritic review

* Add multi-resource multi-version ambiguity unit test
2023-10-11 17:04:11 +02:00
mochizuki875
e22f8ed553 add CAP_NET_RAW to netadmin profile and remove privileged 2023-09-14 08:55:58 +00:00
Arda Güçlü
e8564d6c5b KEP-3895: Promote interactive delete to beta 2023-09-05 11:16:30 +03:00
ithrael
39e433891b fix(test): delete cronjobs.v1.example.com pi for clean up 2023-09-01 23:13:26 +08:00
ithrael
36e33cd88e fix(test): Remove 'shortNames' Property from CronJob Fields in e2e-test 2023-09-01 22:16:06 +08:00
ithrael
903156daa2 fix(test): add e2e-test for kubectl events filter by GroupVersion 2023-08-31 23:51:54 +08:00
Kubernetes Prow Robot
d486180eb0
Merge pull request #118748 from andreaskaris/kubectl-wait-for
Kubectl: Improve conditionFuncFor expression parsing for wait --for jsonpath
2023-08-15 15:17:26 -07:00
Andreas Karis
4188998430 Improve conditionFuncFor expression parsing for wait --for jsonpath
Make it possible to parse jsonpath filter expressions: Split
jsonpath expressions on single '=' only and leave '==' as part of the
string.

Reported-at: https://github.com/kubernetes/kubernetes/issues/119206
Signed-off-by: Andreas Karis <ak.karis@gmail.com>
2023-07-23 15:54:28 +02:00
Arda Güçlü
3267dd9d52
kubectl delete: Introduce new interactive flag for interactive deletion (#114530) 2023-07-11 06:05:11 -07:00
Maciej Szulik
3f07fc3acc
Remove long/golang version information making short the default 2023-07-07 18:46:34 +02:00
Kubernetes Prow Robot
00b8a0a95b
Merge pull request #118160 from minherz/master
Support JSONPath condition without value
2023-07-04 00:26:52 -07:00
minherz
dbdd861ea3
chore: address review feedback
add integration test to wait for json without value
refactor JSON condition value parsing and validating
adjusting test to reflect the error message refactoring
2023-06-29 00:36:07 -07:00
Mihai Costea
e6bc945a61
Add startup probe in integration test 2023-06-09 08:49:31 +03:00
Kubernetes Prow Robot
82f7cf6010
Merge pull request #117930 from LronDC/master
kubectl: optimize usage message of commands which have subcommands.
2023-06-01 02:19:46 -07:00
LronDC
15678e4a67 Optimize usage message of commands which have subcommands.
Signed-off-by: LronDC <lun.su@daocloud.io>
2023-05-26 10:07:43 +08:00
Keita Mochizuki
0813904404
Fix: Restricted profile comply with PSS (#117543)
* restricted profile comply with PSA v1.27

* add test case

* Reflect review comments

* Reflect review comments 2

* Reflect review comments 3
2023-05-24 04:16:49 -07:00
m.nabokikh
7c5573d326 Fix cmd, integration, and conformance tests
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>
2023-05-03 01:29:37 +02:00
m.nabokikh
40de26dcff KEP-3325: Promote SelfSubjectReview to GA
Signed-off-by: m.nabokikh <maksim.nabokikh@flant.com>
2023-05-02 14:50:40 +02:00
Arda Güçlü
457bb58ebb kubectl events: Support fully qualified names for --for flag
Users can pass resources into `kubectl events` command via `--for` flag,
if they have desire to only get events for the resource they specify.

However, current `kubectl events` does not support passing fully qualified
names(e.g. `replicasets.apps`, `cronjobs.v1.batch`, etc.). This PR adds support
for this.
2023-03-31 12:34:00 +03:00
Shang Ding
177905302e add integration tests for debug profiles general & baseline 2023-02-21 17:43:03 -06:00
Arda Güçlü
6c346e6cc9 Re-enable label selector 2023-02-20 09:10:51 +03:00
Arda Güçlü
6e8a1beda7 Add integration test for diff --prune --selector
This PR adds new integration tests for `kubectl diff --prune -l` to
catch possible regressions in the future.
2023-02-20 09:10:50 +03:00
Kubernetes Prow Robot
1749bb2991
Merge pull request #115579 from ardaguclu/fix-wait-sh-timeout
flaky test wait.sh: Add deployment assertion before running wait
2023-02-10 13:59:29 -08:00
Arda Güçlü
e0fedec69d (kubectl debug): Support debugging via files
Currently `kubectl debug` only supports passing names in command line.
However, users might want to pass resources in files by passing `-f` flag like
in all other kubectl commands.

This PR adds this ability.
2023-02-10 10:21:30 +03:00
Arda Güçlü
60401d35d1 flaky test wait.sh: Add deployment assertion before running wait
There is a test in wait.sh integration suite which is checking the
given timeout value(passed by user) is equal to actual happened timeout value.

However, this test rarely gets `no matching resources found` error and
causes flakyiness. The reason is we are running wait command, immediately
after applying deployment. In reality, timeout test does not care about
deployment, since it is testing the timeout by passing invalid configurations.
But we need this deployment to not get `no matching resources found` error.

That's why, this PR adds deployment assertion before executing wait command.
2023-02-07 14:19:34 +03:00
Kubernetes Prow Robot
12c71fdf1c
Merge pull request #113542 from ardaguclu/fix-shortname-disperancy
Set singular names for core types to pass to discovery
2023-01-03 09:29:43 -08:00
Kubernetes Prow Robot
4a5d8a4b08
Merge pull request #114627 from ardaguclu/fix-discovery-flaky
Ignore api-resources not found error until it's ready
2022-12-21 13:53:40 -08:00
Arda Güçlü
a5698efff2 Ignore api-resources not found error until it's ready 2022-12-21 10:34:53 +03:00
Maciej Szulik
132f8127a3
Fix wait test timeout 2022-12-20 17:02:23 +01:00
Arda Güçlü
369534c6ec
kubectl wait: wire generic context (#114574)
* Wire generic context to better handle timeout

* Add integration test for wait timeout

* kubectl wait: Fix integration test always passing issue

Currently, `kubectl wait` integration test always passes even if
it gets an error. Problem is object check is done after errexit is
turned off.

This PR redirects error to output and correctly assures that
object is expected status and if it is not, test should fail.
2022-12-19 09:21:56 -08:00
Kubernetes Prow Robot
3ceb213fc1
Merge pull request #113508 from p-slavcheva/fix-diff-osexit
Replace os.Exit in diff
2022-12-13 15:59:34 -08:00
petya.slavcheva1
2dce194e16 Replace os.exit in diff 2022-12-13 14:27:35 +01:00
Kubernetes Prow Robot
9758911fd5
Merge pull request #114252 from ardaguclu/scale-piped-input
kubectl scale: Use visitor only once
2022-12-10 07:55:19 -08:00
Kubernetes Prow Robot
9f85f6d1f1
Merge pull request #114249 from ardaguclu/improve-exec-multi-error
kubectl exec: return descriptive error message when multi resource passed
2022-12-10 07:55:12 -08:00
Arda Güçlü
76ee3788cc kubectl scale: Add dry-run prefix to indicate result is not applied
Currently, if user executes `kubectl scale --dry-run`, output has no
indicator showing that this is not applied in reality.

This PR adds dry run suffix to the output as well as more integration
tests to verify it.
2022-12-02 16:27:18 +03:00
Arda Güçlü
13be899b42 kubectl scale: Use visitor only once
`kubectl scale` calls visitor two times. Second call fails when
the piped input is passed by returning an
`error: no objects passed to scale` error.

This PR uses the result of first visitor and fixes that piped
input problem. In addition to that, this PR also adds new
scale test to verify.
2022-12-02 16:00:22 +03:00
Arda Güçlü
832644f0b3 kubectl exec: return descriptive error message when multi resource passed
`kubectl exec` command supports getting files as inputs. However,
if the file contains multiple resources, it returns unclear error message;
`cannot attach to *v1.List: selector for *v1.List not implemented`.

Since `exec` command does not support multi resources, this PR
handles that and returns descriptive error message earlier.
2022-12-02 14:05:11 +03:00
Brian Pursley
c0dea5e31a i18n: Fix bug where package-level variables are not translated.
Change i18n.T() to load translations if they have not yet been loaded.

Added new integration tests to test help output translation.
2022-11-29 23:09:57 -05:00
Arda Güçlü
1f54f610e4 minor integration test fixes and more singular resource 2022-11-18 13:11:16 +03:00
Arda Güçlü
d6532f5eb8 run discovery tests if resources are supported 2022-11-18 12:21:13 +03:00
Arda Güçlü
0990ba1cc9 Introduce singularNameProvider for core types
This introduces `singularNameProvider`. This provider will be used
by core types to have their singular names are defined in discovery
endpoint. Thanks to that, core resources singular name always have
higher precedence than CRDs shortcuts or singular names.
2022-11-18 12:21:07 +03:00
Arda Güçlü
ab376e09dd Add integration tests for shortnames expanding to correct resources
This adds new integration tests to test shortnames and
singular names are expanding to correct resources.

In this case, core types have always higher precendence than
CRDs.
2022-11-18 12:18:31 +03:00
Mark Rossetti
534f052a8d
Updating pause image refernces to 3.9
Signed-off-by: Mark Rossetti <marosset@microsoft.com>
2022-11-14 10:24:54 -08:00
Kubernetes Prow Robot
29ddedae1d
Merge pull request #113541 from oscr/update-shellcheck-0.8.0
Update shellcheck version (0.7.2 -> 0.8.0) and fix findings
2022-11-12 02:23:57 -08:00