In 99cdc069e2, we added a check for
whether the directory the user was attempting to test existed or not.
However, adding this check prevented us from running `make test
WHAT=./path/to/pkg/...`, because we believed that `./path/to/pkg/...`
wasn't a valid path to a directory.
Fix this by stripping `/...` before checking whether the directory
exists.
We already do this in hack/verify-generated-files.sh so we should do it
in verify-generated-files-remake.sh as well.
The idea is that any local changes made because of code generation
should not persist beyond the current run of the script.
Change-Id: I7af176773ae16c393dc2b46c006595243c9fa05b
'read' will not handle backslashes properly. 'read -r' is safer to use.
The find_genfiles() will not insert backslashes, so if there are any,
they will be from directory names.
The pattern used in the file is this:
echo " ${X[@]:-(none)}"
What happens is that the array is expanded to separate strings, and it
is checked if that's set (for the default value assignment). However,
the correct way is to check if the concatenated array string is set to
avoid a type mismatch:
echo " ${X[*]:-(none)}"
Tests show that at least bash 4.4.23 behaves the same:
X=(foo bar)
echo " ${X[@]:-(none)}"
echo " ${X[*]:-(none)}"
X=()
echo " ${X[@]:-(none)}"
echo " ${X[*]:-(none)}"
produces:
foo bar
foo bar
(none)
(none)
Both verify-golint.sh and verify-shellcheck.sh have the same logic
which checks failure_file in alphabetical order.
In addition, we'd like to add another script which requires the
same logic. So this add a common function for cleanup.
The placeholder documentation introduces a couple of problems:
- it complicates the contributor-experience (forces the CI to run
N times before the contributor finds out that they need to call an .sh
script and include certain files from docs/)
- it forces CLI related pull requests for tools like kubeadm and kubectl
to require top level approval from docs/OWNERS as such PRs still need
to touch the .generated_docs file
Stop tracking the placeholder documentation by applying the
following actions:
- remove the utility set-placeholder-gen-docs()
- make verify-generated-docs.sh only generate in a temporary folder
and not match .generated_docs
- mark generate-docs.sh as an alias for update-generated-docs.sh
- remove all current placeholder files in docs folders admin, man,
user-guide, yaml
- ignore the above folders and .generated_docs in a .gitignore file