mirror of https://github.com/k3s-io/k3s
![]() **What this PR does / why we need it**: Visibility rules allow dependency control. The rules currently in place make all targets public, to override the default state of private. This PR removes public visibility from kubectl code. It uses specially named pacakge groups to identify "bad" dependencies on kubectl code for later refactoring or removal. **Which issue this PR fixes** First in a series of PRs to address kubernetes/community#598 **Release note**: ```release-note NONE ``` |
||
---|---|---|
.. | ||
testcase-create-list | ||
testcase-create-list-error | ||
testcase-edit-error-reedit | ||
testcase-immutable-name | ||
testcase-list | ||
testcase-list-errors | ||
testcase-list-record | ||
testcase-missing-service | ||
testcase-no-op | ||
testcase-not-update-annotation | ||
testcase-repeat-error | ||
testcase-schemaless-list | ||
testcase-single-service | ||
testcase-syntax-error | ||
testcase-unknown-field-known-group-kind | ||
testcase-unknown-version-known-group-kind | ||
testcase-update-annotation | ||
BUILD | ||
README | ||
record.go | ||
record_editor.sh | ||
record_testcase.sh | ||
test_editor.sh |
README
This folder contains test cases for interactive edit, and helpers for recording new test cases To record a new test: 1. Start a local cluster running unsecured on http://localhost:8080 (e.g. hack/local-up-cluster.sh) 2. Set up any pre-existing resources you want to be available on that server (namespaces, resources to edit, etc) 3. Run ./pkg/kubectl/cmd/testdata/edit/record_testcase.sh my-testcase 4. Run the desired `kubectl edit ...` command, and interact with the editor as desired until it completes. * You can do things that cause errors to appear in the editor (change immutable fields, fail validation, etc) * You can perform edit flows that invoke the editor multiple times * You can make out-of-band changes to the server resources that cause conflict errors to be returned * The API requests/responses and editor inputs/outputs are captured in your testcase folder 5. Type exit. 6. Inspect the captured requests/responses and inputs/outputs for sanity 7. Modify the generated test.yaml file: * Set a description of what the test is doing * Enter the args (if any) you invoked edit with * Enter the filename (if any) you invoked edit with * Enter the output format (if any) you invoked edit with * Optionally specify substrings to look for in the stdout or stderr of the edit command 8. Add your new testcase name to the list of testcases in edit_test.go 9. Run `go test ./pkg/kubectl/cmd -run TestEdit -v` to run edit tests