kubernetes/test/cmd
Kubernetes Prow Robot 1591590030
Merge pull request #88292 from julianvmodesto/add-dry-run
Add --dry-run=server|client|none to more kubectl commands
2020-02-20 16:30:25 -08:00
..
apply.sh Use --dry-run=client,server in kubectl. 2020-02-12 20:46:54 -05:00
apps.sh Use --dry-run=client,server in kubectl. 2020-02-12 20:46:54 -05:00
authorization.sh Make test/cmd/a*.sh pass shellcheck 2019-04-26 11:39:11 +08:00
batch.sh Use --dry-run=client,server in kubectl. 2020-02-12 20:46:54 -05:00
BUILD Removes test-cmd inappropriate dependency on kubectl 2019-06-27 10:49:42 -07:00
certificate.sh Fix shellchecks in test/cmd/{b,c}.*.sh 2019-06-04 14:42:01 +08:00
core.sh Add --dry-run to more kubectl commands. 2020-02-19 17:53:21 -05:00
crd.sh wait for pruned CR to be invisible from API 2020-02-19 17:41:13 -08:00
create.sh Use --dry-run=client,server in kubectl. 2020-02-12 20:46:54 -05:00
delete.sh Add --dry-run to more kubectl commands. 2020-02-19 17:53:21 -05:00
diff.sh kubectl-diff: Test return code on failure and changes 2020-01-21 15:34:22 -08:00
discovery.sh Promoting EndpointSlices to beta 2019-11-13 14:20:19 -08:00
exec.sh Kubectl exec support resource/name format 2019-04-25 17:44:01 +07:00
generic-resources.sh Fix shellcheck failures SC2251 2019-10-23 22:47:47 +02:00
get.sh Fix assert methods 2019-11-07 02:26:45 -05:00
kubeadm.sh drop KUBE_TIMEOUT in test/cmd/kubeadm.sh 2019-11-28 10:49:41 +01:00
kubeconfig.sh Cleanup: Audit log and error capitalization 2019-07-08 20:20:12 +09:00
legacy-script.sh Remove kubectl run generators 2020-01-22 16:44:00 +01:00
node-management.sh Add --dry-run to more kubectl commands. 2020-02-19 17:53:21 -05:00
OWNERS Updated OWNERS files to include link to docs 2019-02-04 22:33:12 +01:00
plugins.sh Isolate kubectl test-cmd plugin tests 2019-12-19 01:35:36 -05:00
proxy.sh Fix of review comments. Will squash later. 2019-07-18 09:12:28 +08:00
rbac.sh Use --dry-run=client,server in kubectl. 2020-02-12 20:46:54 -05:00
README.md Feedback from review 2019-02-21 06:15:13 -05:00
request-timeout.sh Fix shellcheck faulures in test/cmd 2019-06-17 14:04:34 +08:00
run.sh Use --dry-run=client,server in kubectl. 2020-02-12 20:46:54 -05:00
save-config.sh Remove kubectl run generators 2020-01-22 16:44:00 +01:00
storage.sh Merge pull request #74635 from xychu/fix-with-assert 2019-06-13 19:12:45 -07:00
template-output.sh Fix shellchecks follow the ${var:?} pattern 2019-02-27 09:27:13 +08:00
version.sh Merge pull request #74635 from xychu/fix-with-assert 2019-06-13 19:12:45 -07:00
wait.sh Add support for waiting by label selector or on all resources 2019-02-02 16:26:00 +01: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_test and run_impersonation_test), 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_*_test so they can 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 resouces 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.