kubernetes/test/cmd
Kubernetes Prow Robot 19ca6d30d2
Merge pull request #87437 from apelisse/kubectl-diff-exit-code
kubectl-diff: Return non-1 errors on kubectl failures
2020-02-01 18:33:20 -08:00
..
apply.sh Fix shellcheck failures SC2251 2019-10-23 22:47:47 +02:00
apps.sh Remove workaround for RS bug in cmd apps test 2020-01-10 09:39:54 +08:00
authorization.sh Make test/cmd/a*.sh pass shellcheck 2019-04-26 11:39:11 +08:00
batch.sh Remove kubectl run generators 2020-01-22 16:44:00 +01: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 Remove kubectl run generators 2020-01-22 16:44:00 +01:00
crd.sh Fix shellcheck failures SC2251 2019-10-23 22:47:47 +02:00
create.sh Remove kubectl run generators 2020-01-22 16:44:00 +01:00
delete.sh make test/cmd/delete.sh pass shellcheck 2019-02-21 00:45:37 -08: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 Fix kubectl taint's Complete parsing 2020-01-27 13:31:22 +01: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 Fix shellcheck faulures in test/cmd 2019-06-17 14:04:34 +08: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 Remove kubectl run generators 2020-01-22 16:44:00 +01: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.