kubernetes/hack
Tim Hockin 6dbc754ed6
Retool typecheck to be simpler
Instead of walking paths ourselves, just let Go's packages library do
it.  This is a slight CLI change - it wants "./foo" rather than "foo".

This also flagged a few things which seem to be legit failures.
2024-02-29 22:07:00 -08:00
..
boilerplate Get rid of most references to GOPATH 2024-02-29 22:06:51 -08:00
conformance e2e: remove redundant spaces in test names 2023-09-29 08:30:57 +02:00
e2e-internal hack/update-bazel.sh 2021-02-28 15:17:29 -08:00
gen-swagger-doc
jenkins Defer builds to test-cmd and test-integration targets 2023-02-01 15:35:14 -05:00
lib Remove KUBE_GO_PACKAGE 2024-02-29 22:06:58 -08:00
make-rules Fix make test-integration for workspaces 2024-02-29 22:06:57 -08:00
testdata Drop hack/verify-govet-levee 2024-01-04 21:06:52 -05:00
tools Generate go.work files 2024-02-29 00:22:06 -08:00
verify-flags kubelet: create top-level traces for pod sync and GC 2023-03-11 10:42:14 +01:00
.descriptions_failures Add missing comments in APF API types 2021-06-25 00:27:40 -04:00
.import-aliases scheduler: remove deprecated v1beta2 KubeSchedulerConfiguration 2023-08-17 13:27:21 +08:00
.spelling_failures Add gimme 2023-02-01 16:34:23 -05:00
benchmark-go.sh add comment in several hack/ sh scripts. 2020-01-27 11:13:09 +09:00
build-cross.sh add comment in several hack/ sh scripts. 2020-01-27 11:13:09 +09:00
build-go.sh add comment in several hack/ sh scripts. 2020-01-27 11:13:09 +09:00
cherry_pick_pull.sh Update cherry_pick_pull.sh 2022-06-26 09:21:05 +05:30
dev-build-and-push.sh
dev-build-and-up.sh
dev-push-conformance.sh Build Ginkgo binary 2022-07-08 10:46:11 +08:00
e2e-node-test.sh add comment in several hack/ sh scripts. 2020-01-27 11:13:09 +09:00
generate-docs.sh
get-build.sh fix: use dl.k8s.io, not kubernetes-release bucket 2023-05-13 10:57:41 +00:00
ginkgo-e2e.sh Fix ginkgo deprecation warning 2023-05-31 12:53:11 +03:00
golangci-hints.yaml golangci-lint: add hints for error wrapping 2024-02-13 14:12:04 +01:00
golangci-strict.yaml Migrate cmd/kube-proxy to contextual logging (#122197) 2024-01-08 17:30:18 +01:00
golangci.yaml Migrate cmd/kube-proxy to contextual logging (#122197) 2024-01-08 17:30:18 +01:00
golangci.yaml.in golangci-lint: add hints for error wrapping 2024-02-13 14:12:04 +01:00
grab-profiles.sh Fix exit code check in hack/grab-profiles.sh 2021-05-17 14:47:05 +08:00
install-etcd.sh Add comments in several hack/*.sh 2020-01-28 09:27:40 +09:00
install-protoc.sh Add helper script to install protoc 2023-01-26 18:00:08 -05:00
lint-dependencies.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
list-feature-tests.sh Add comments in several hack/*.sh 2020-01-28 09:27:40 +09:00
local-up-cluster.sh Merge pull request #122612 from mtardy/remove-scdeny 2024-02-12 08:37:13 -08:00
logcheck.conf Migrate cmd/kube-proxy to contextual logging (#122197) 2024-01-08 17:30:18 +01:00
module-graph.sh Make sure the _output folder exists before using it from module-graph.sh 2020-07-07 01:19:59 -07:00
OWNERS lavalamp is taking a long break 2023-05-11 16:43:38 +00:00
pin-dependency.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
print-workspace-status.sh Remove invalid comments in hack/lib/version.sh 2022-07-06 19:19:29 +08:00
README.md add README.md in hack/ 2020-01-16 10:12:18 +08:00
run-prometheus-on-etcd-scrapes.sh Add serving of scrapes as Prometheus metrics 2021-11-08 15:28:05 -05:00
serve-prom-scrapes.sh Fixed typo in hack/serve-prom-scrapes.sh 2022-02-04 01:33:06 -05:00
test-go.sh Add comments in several hack/*.sh 2020-01-28 09:27:40 +09:00
test-integration.sh Add comments in several hack/*.sh 2020-01-28 09:27:40 +09:00
unwanted-dependencies.json chore: Cleanup in-tree credential provider azure and cloud provider azure 2024-01-20 15:18:31 +08:00
update-all.sh refactor(hack): use ${BASH_SOURCE[0]} to get script name 2022-04-16 23:58:13 +08:00
update-codegen.sh Kill off PRJ_SRC_PATH 2024-02-29 22:06:50 -08:00
update-conformance-yaml.sh Revert "Save a list of images used by e2e.test" 2024-01-12 13:15:01 -08:00
update-generated-api-compatibility-data.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
update-generated-docs.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
update-generated-proto-bindings-dockerized.sh Check protoc version strictly 2023-01-26 18:00:06 -05:00
update-generated-protobuf-dockerized.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
update-generated-stable-metrics.sh remove the rest of the bazel test wiring for metrics stability 2021-02-05 10:48:48 -08:00
update-go-workspace.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
update-gofmt.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
update-golangci-lint-config.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
update-import-aliases.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
update-internal-modules.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
update-kustomize.sh Update kubectl kustomize to kyaml/v0.14.1, cmd/config/v0.11.1, api/v0.13.2, kustomize/v5.0.1 2023-03-14 11:40:28 -05:00
update-mocks.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
update-netparse-cve.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
update-openapi-spec.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
update-translations.sh i18n: Fix bug where package-level variables are not translated. 2022-11-21 22:48:42 -05:00
update-vanity-imports.sh Remove references to "GO111MODULE" 2024-02-29 22:06:55 -08:00
update-vendor-licenses.sh Tidy update-vendor-licenses for workspaces 2024-02-29 22:06:53 -08:00
update-vendor.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
update-yamlfmt.sh Remove references to "GO111MODULE" 2024-02-29 22:06:55 -08:00
verify-all.sh refactor(hack): use ${BASH_SOURCE[0]} to get script name 2022-04-16 23:58:13 +08:00
verify-api-groups.sh Change verify-api-groups.sh to s/vendor/staging/ 2024-02-29 22:06:01 -08:00
verify-boilerplate.sh Add comments in several hack/verify-*.sh 2020-01-16 13:54:58 +09:00
verify-cli-conventions.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
verify-codegen.sh hack: move common "verify generated" shell code into function 2023-08-22 20:39:23 +02:00
verify-conformance-requirements.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
verify-conformance-yaml.sh Revert "Save a list of images used by e2e.test" 2024-01-12 13:15:01 -08:00
verify-description.sh Get rid of most references to GOPATH 2024-02-29 22:06:51 -08:00
verify-e2e-suites.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
verify-e2e-test-ownership.sh declare and assign seperately in hack/verify-e2e-test-ownership.sh 2022-10-19 23:46:18 -07:00
verify-external-dependencies-version.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
verify-fieldname-docs.sh Get rid of most references to GOPATH 2024-02-29 22:06:51 -08:00
verify-file-sizes.sh verify-file-sizes.sh: ensure that no large binary files get added 2023-10-26 20:08:09 +02:00
verify-flags-underscore.py Get rid of most references to GOPATH 2024-02-29 22:06:51 -08:00
verify-generated-docs.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
verify-generated-stable-metrics.sh remove the rest of the bazel test wiring for metrics stability 2021-02-05 10:48:48 -08:00
verify-go-workspace.sh Remove references to "GO111MODULE" 2024-02-29 22:06:55 -08:00
verify-gofmt.sh Get rid of most references to GOPATH 2024-02-29 22:06:51 -08:00
verify-golangci-lint-config.sh golangci-lint: suppress one issue, demote others to "hints" 2023-08-22 20:39:23 +02:00
verify-golangci-lint-pr-hints.sh hack: update golangci-lint verify scripts 2023-10-09 20:14:47 +02:00
verify-golangci-lint-pr.sh hack: update golangci-lint verify scripts 2023-10-09 20:14:47 +02:00
verify-golangci-lint.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
verify-govulncheck.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
verify-import-aliases.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
verify-import-boss.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
verify-imports.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
verify-internal-modules.sh hack: move common "verify generated" shell code into function 2023-08-22 20:39:23 +02:00
verify-licenses.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
verify-mocks.sh hack: move common "verify generated" shell code into function 2023-08-22 20:39:23 +02:00
verify-netparse-cve.sh Remove defunct references to "vendor" 2024-02-29 22:06:52 -08:00
verify-no-vendor-cycles.sh Call verify_go_version at the END of setup_env 2024-02-29 22:06:56 -08:00
verify-non-mutating-validation.sh add verify script to catch most validation mutations 2021-10-08 14:37:55 -04:00
verify-openapi-docs-urls.sh Add a script to verify that URLs in API documentation are valid 2023-03-13 11:37:59 -07:00
verify-openapi-spec.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
verify-pkg-names.sh remove unnecessary kube::golang::verify_go_version calls 2023-09-11 14:06:28 -07:00
verify-prerelease-lifecycle-tags.sh remove unnecessary kube::golang::verify_go_version calls 2023-09-11 14:06:28 -07:00
verify-prometheus-imports.sh kubelet: Force deleted pods can fail to move out of terminating 2023-03-08 22:03:51 -06:00
verify-publishing-bot.py update verify script to check deprecated fields 2023-09-25 21:37:40 +05:30
verify-readonly-packages.sh Remove defunct references to "vendor" 2024-02-29 22:06:52 -08:00
verify-shellcheck.sh Bump shellcheck to 0.9.0 2024-01-26 16:26:40 -08:00
verify-spelling.sh Remove references to "GO111MODULE" 2024-02-29 22:06:55 -08:00
verify-staging-meta-files.sh Add comments in several hack/verify-*.sh(s-v) 2020-01-21 19:10:46 +09:00
verify-test-code.sh e2e framework: deprecate gomega wrappers 2023-02-23 09:51:42 +01:00
verify-test-featuregates.sh add test for the registered feature gates 2024-01-07 18:10:25 +02:00
verify-test-images.sh Add comments in several hack/verify-*.sh(s-v) 2020-01-21 19:10:46 +09:00
verify-testing-import.sh enable testing import check for kubeadm binary 2024-01-25 19:56:42 +08:00
verify-typecheck-providerless.sh Add KUBE_PROVIDERLESS for CI jobs to run with providerless tag 2024-01-07 15:20:57 -05:00
verify-typecheck.sh Retool typecheck to be simpler 2024-02-29 22:07:00 -08:00
verify-vendor-licenses.sh Remove docker remote/docker-machine from build scripts 2020-12-30 12:37:51 -05:00
verify-vendor.sh Call setup_env from verify-vendor 2024-02-29 22:06:54 -08:00
verify-yamlfmt.sh hack: move common "verify generated" shell code into function 2023-08-22 20:39:23 +02:00

Kubernetes hack GuideLines

This document describes how you can use the scripts from hack directory and gives a brief introduction and explanation of these scripts.

Overview

The hack directory contains many scripts that ensure continuous development of kubernetes, enhance the robustness of the code, improve development efficiency, etc. The explanations and descriptions of these scripts are helpful for contributors. For details, refer to the following guidelines.

Key scripts

  • verify-all.sh: This script is a vestigial redirection, Please do not add "real" logic. It is equivalent to make verify.
  • update-all.sh: This script is a vestigial redirection, Please do not add "real" logic. The true target of this makerule is hack/make-rules/update.sh.It is equivalent to make update.

Attention

Note that all scripts must be run from the Kubernetes root directory. We should run hack/verify-all.sh before submitting a PR and if anything fails run hack/update-all.sh.