kubernetes/hack
2025-02-14 12:57:36 -05: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
gen-swagger-doc
jenkins Honor KUBE_HACK_TOOLS_GOTOOLCHAIN 2025-02-14 12:57:36 -05:00
lib Honor KUBE_HACK_TOOLS_GOTOOLCHAIN 2025-02-14 12:57:36 -05:00
make-rules Honor KUBE_HACK_TOOLS_GOTOOLCHAIN 2025-02-14 12:57:36 -05:00
testdata add tests 2024-06-26 01:07:24 +08:00
tools hack/tools: bump go-tools for go1.23.0 2024-12-30 13:31:32 -08:00
verify-flags kubelet: create top-level traces for pod sync and GC 2023-03-11 10:42:14 +01:00
_update-generated-proto-bindings-dockerized.sh Rename update-generated-* dockerized 2024-02-29 22:07:04 -08:00
_update-generated-protobuf-dockerized.sh Make hack scripts use go install and assume PATH 2024-02-29 22:07:32 -08: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
apidiff.sh hack: backport apidiff.sh 2025-01-23 13:10:35 +01:00
benchmark-go.sh
build-cross.sh
build-go.sh
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
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 hack/ginkgo-e2e.sh: skip S character by default, add newlines in CI 2024-05-27 15:25:50 +02:00
golangci-hints.yaml fix: enable bool-compare rule from testifylint linter (#125135) 2024-06-28 10:58:05 -07:00
golangci-strict.yaml fix: enable bool-compare rule from testifylint linter (#125135) 2024-06-28 10:58:05 -07:00
golangci.yaml Merge pull request #125926 from MadhavJivrajani/bump-staticcheck-exclude-SA1006 2024-07-15 10:05:19 -07:00
golangci.yaml.in Merge pull request #125926 from MadhavJivrajani/bump-staticcheck-exclude-SA1006 2024-07-15 10:05:19 -07:00
grab-profiles.sh
install-etcd.sh
install-protoc.sh Add helper script to install protoc 2023-01-26 18:00:08 -05:00
lint-dependencies.sh Make golang::setup-env turn on workspaces 2024-02-29 22:07:42 -08:00
list-feature-tests.sh
local-up-cluster.sh Update cni-plugins to v1.5.1 2024-08-29 09:13:54 +02:00
logcheck.conf Revert "Revert "remove legacycloudproviders from staging"" 2024-05-15 20:10:09 +08:00
module-graph.sh
OWNERS lavalamp is taking a long break 2023-05-11 16:43:38 +00:00
pin-dependency.sh Remove _tmp from pin-dependency 2024-03-05 21:44:43 -08:00
print-workspace-status.sh Remove invalid comments in hack/lib/version.sh 2022-07-06 19:19:29 +08:00
README.md
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
test-integration.sh
unwanted-dependencies.json update OpenTelemetry dependencies and grpc 2024-07-05 21:21:30 -04: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 DRA: new API for 1.31 2024-07-22 18:09:34 +02: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 Move doc-generation funcs into only caller 2024-02-29 22:07:33 -08:00
update-generated-stable-metrics.sh
update-go-workspace.sh Fix the dirname command in macOS does not have a -z option 2024-03-10 23:44:10 +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 Change pushd $d; go ...; popd to go -C $d ... 2024-03-02 14:40:10 -08:00
update-kustomize.sh update-kustomize: update the Go workspace 2024-05-28 10:40:04 +02:00
update-mocks.sh Honor KUBE_HACK_TOOLS_GOTOOLCHAIN 2025-02-14 12:57:36 -05:00
update-netparse-cve.sh Honor KUBE_HACK_TOOLS_GOTOOLCHAIN 2025-02-14 12:57:36 -05:00
update-openapi-spec.sh kube-apiserver: default --enable-logs-handler flag to false 2024-06-28 15:22:22 -04: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 Honor KUBE_HACK_TOOLS_GOTOOLCHAIN 2025-02-14 12:57:36 -05:00
update-vendor-licenses.sh Tidy update-vendor-licenses for workspaces 2024-02-29 22:06:53 -08:00
update-vendor.sh Make update-vendor log the go env 2024-02-29 22:07:08 -08:00
update-yamlfmt.sh Remove legacy references to './output' 2024-02-29 22:07:31 -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 removed this k8s.io/kubernetes/pkg/apis/componentconfig from verify-api-groups.sh 2024-04-13 05:26:16 -04:00
verify-boilerplate.sh
verify-cli-conventions.sh Make hack scripts use go install and assume PATH 2024-02-29 22:07:32 -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 Make hack scripts use go install and assume PATH 2024-02-29 22:07:32 -08:00
verify-e2e-images.sh restrict permitted e2e images to known images list 2024-07-03 10:42:51 -07:00
verify-e2e-suites.sh hack/verify-e2e-suites.sh: non-zero exit code when there were errors 2024-04-17 19:35:22 +02: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 bump zeitgeist to release v0.5.3 2024-05-08 10:20:31 +02:00
verify-fieldname-docs.sh Make hack scripts use go install and assume PATH 2024-02-29 22:07:32 -08:00
verify-file-sizes.sh Changed to use "wc -c" to ensure the command works on both Linux and Mac OS X with a single implementation 2024-04-20 04:39:50 +09:00
verify-flags-underscore.py Get rid of most references to GOPATH 2024-02-29 22:06:51 -08:00
verify-generated-docs.sh Move doc-generation funcs into only caller 2024-02-29 22:07:33 -08:00
verify-generated-stable-metrics.sh
verify-go-workspace.sh Remove references to "GO111MODULE" 2024-02-29 22:06:55 -08:00
verify-gofmt.sh Remove legacy references to './output' 2024-02-29 22:07:31 -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 Honor KUBE_HACK_TOOLS_GOTOOLCHAIN 2025-02-14 12:57:36 -05:00
verify-govulncheck.sh Bump govulncheck to 1.1.2 2024-07-03 17:17:41 +05:30
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 Move import-boss: k/code-generator/cmd -> k/k/cmd 2024-02-29 22:07:36 -08:00
verify-imports.sh Make hack scripts use go install and assume PATH 2024-02-29 22:07:32 -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 legacy references to './output' 2024-02-29 22:07:31 -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 Remove _tmp from verify-openapi-docs-urls 2024-03-05 21:44:44 -08:00
verify-openapi-spec.sh Make verify-openapi-spec use verify::generated 2024-03-05 21:44:41 -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 enforce that GA apis also have lifecycle tags 2024-05-21 13:27:01 -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 legacy references to './output' 2024-02-29 22:07:31 -08:00
verify-shellcheck.sh Make verify-shellcheck take optional args 2024-02-29 22:07:05 -08:00
verify-spelling.sh Honor KUBE_HACK_TOOLS_GOTOOLCHAIN 2025-02-14 12:57:36 -05:00
verify-staging-meta-files.sh
verify-test-code.sh e2e framework: deprecate gomega wrappers 2023-02-23 09:51:42 +01:00
verify-test-featuregates.sh Cleanup defer from SetFeatureGateDuringTest function call 2024-04-24 20:25:29 +02:00
verify-test-images.sh
verify-testing-import.sh enable testing import check for kubeadm binary 2024-01-25 19:56:42 +08:00
verify-typecheck.sh Fix for typecheck doesn't notice compile errors in test files 2024-07-04 15:01:41 -04:00
verify-vendor-licenses.sh Make vendor-licenses use verify::generated 2024-03-05 21:44:43 -08:00
verify-vendor.sh Fix verify-vendor script to check all go.mod and go.sum files 2024-07-25 10:39:11 -04: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.