kubernetes/test/cmd
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
..
apply.sh Merge pull request #113708 from apelisse/fix-ssa-flaky-test 2022-11-09 08:30:48 -08:00
apps.sh Update shellcheck version (0.7.2 -> 0.8.0) and fix findings 2022-11-08 11:53:57 +01:00
authentication.sh Check whether static cert is already configured in UpdateTransportConfig 2022-03-07 13:54:32 -08:00
authorization.sh --as-uid flag in kubectl and kubeconfigs. 2021-11-05 13:23:49 -07:00
batch.sh Update shellcheck version (0.7.2 -> 0.8.0) and fix findings 2022-11-08 11:53:57 +01:00
certificate.sh Add --chunk-size support to kubectl describe 2021-04-21 11:44:15 -07:00
convert.sh Add kubectl-convert tests 2021-02-22 17:01:34 +01:00
core.sh kubectl scale: Add dry-run prefix to indicate result is not applied 2022-12-02 16:27:18 +03:00
crd.sh Update shellcheck version (0.7.2 -> 0.8.0) and fix findings 2022-11-08 11:53:57 +01:00
create.sh Merge pull request #109850 from ardaguclu/validate-nooptdefval 2022-06-13 08:04:11 -07:00
debug.sh Remove alpha from kubectl debug 2020-11-04 17:45:28 +01:00
delete.sh separate RootCAConfigMap from BoundServiceAccountTokenVolume 2020-11-04 17:10:39 -08:00
diff.sh Merge pull request #113508 from p-slavcheva/fix-diff-osexit 2022-12-13 15:59:34 -08:00
discovery.sh Update shellcheck version (0.7.2 -> 0.8.0) and fix findings 2022-11-08 11:53:57 +01:00
events.sh Merge pull request #113541 from oscr/update-shellcheck-0.8.0 2022-11-12 02:23:57 -08:00
exec.sh kubectl exec: return descriptive error message when multi resource passed 2022-12-02 14:05:11 +03:00
generic-resources.sh tests: adding integration test for rollout status 2022-04-21 11:21:13 -04:00
get.sh Update shellcheck version (0.7.2 -> 0.8.0) and fix findings 2022-11-08 11:53:57 +01:00
help.sh i18n: Fix bug where package-level variables are not translated. 2022-11-29 23:09:57 -05:00
kubeconfig.sh --as-uid flag in kubectl and kubeconfigs. 2021-11-05 13:23:49 -07:00
legacy-script.sh i18n: Fix bug where package-level variables are not translated. 2022-11-29 23:09:57 -05:00
node-management.sh Update shellcheck version (0.7.2 -> 0.8.0) and fix findings 2022-11-08 11:53:57 +01:00
OWNERS Update sig-cli OWNERS 2022-02-14 10:55:35 -07:00
plugins.sh Isolate kubectl test-cmd plugin tests 2019-12-19 01:35:36 -05:00
proxy.sh use a non-deprecated API to check kube-proxy 2021-03-25 12:41:50 -04:00
rbac.sh add a warning printer in cli-runtime to coordinate warning style 2022-05-23 19:10:15 +08:00
README.md Change legacy-script.sh to produce junit output in location set by the 2022-02-02 21:51:15 -05:00
request-timeout.sh go1.14: fix test/cmd timeout message check 2020-06-23 19:04:43 -04:00
results.sh kubectl: add integration test for result reporting 2022-01-11 09:04:56 +01:00
run.sh Use --dry-run=client,server in kubectl. 2020-02-12 20:46:54 -05:00
save-config.sh rename v2beta2 to v2 2021-11-09 10:34:54 +08:00
storage.sh add a warning printer in cli-runtime to coordinate warning style 2022-05-23 19:10:15 +08:00
template-output.sh fix typos in pkg/validation and test/cmd 2022-09-20 19:12:17 +05:30
version.sh kubectl version should include bundled kustomize version 2022-03-24 13:31:57 -04:00
wait.sh feat: make jsonpath wait logics consistent with condition 2022-06-29 12:28:24 +08:00

Kubernetes Command-Line Integration Test Suite

This document describes how you can use the Kubernetes command-line integration test-suite.

Running Tests

All Tests

To run this entire suite, execute make test-cmd from the top level. This will import each file containing tests functions

Specific Tests

To run a subset of tests (e.g. run_deployment_tests and run_impersonation_tests), execute make test-cmd WHAT="deployment impersonation". Running specific tests will not try and validate any required resources are available on the server.

Adding Tests

Test functions need to have the format run_*_tests so they can be executed individually. Once a test has been added, insert a section in legacy-script.sh like

######################
# Replica Sets       #
######################

if kube::test::if_supports_resource "${replicasets}" ; then
    record_command run_rs_tests
fi

Be sure to validate any supported resources required for the test by using the kube::test::if_supports_resource function.

New File

If the test resides in a new file, source the file in the top of the legacy-script.sh file by adding a new line in

source "${KUBE_ROOT}/test/cmd/apply.sh"
source "${KUBE_ROOT}/test/cmd/apps.sh"
source "${KUBE_ROOT}/test/cmd/authorization.sh"
source "${KUBE_ROOT}/test/cmd/batch.sh"
...

Please keep the order of the source list alphabetical.