kubernetes/hack
2025-06-13 15:28:55 +02: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 hack: fix KUBE_RACE in benchmark-dockerized.sh 2025-06-05 15:08:35 +02:00
kube-api-linter Add kube-api-linter plugin to golangci-lint 2025-05-16 16:04:15 +01:00
lib Adding grpcnotrace tag for production (non-debug) builds 2025-06-11 15:52:40 -04:00
make-rules test-integration: allow enabling race detection 2025-06-02 11:47:42 +02:00
testdata kubectl debug: Display a warning message that the debug container's capabilities may not work with a non-root user (#127696) 2025-03-19 00:50:30 -07:00
tools Add kube-api-linter plugin to golangci-lint 2025-05-16 16:04:15 +01:00
verify-flags
.descriptions_failures Add missing comments in k8s.io/api/core/v1 2024-11-07 18:42:33 -08:00
.import-aliases
.spelling_failures
_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
apidiff.sh chore: Update apidiff.sh script description 2024-12-16 13:44:48 -08:00
benchmark-go.sh
build-cross.sh
build-go.sh
cherry_pick_pull.sh Add release notes to the body of the pull request on create cherry-pick. 2024-08-26 20:58:51 +03:00
dev-build-and-push.sh
dev-build-and-up.sh
dev-push-conformance.sh
e2e-node-test.sh
generate-docs.sh
get-build.sh
ginkgo-e2e.sh hack/ginkgo-e2e.sh: fix misplaced brackets 2025-03-26 12:10:23 +01:00
golangci-hints.yaml chore(apiserver): avoid using html template which disables dce 2025-06-13 15:28:55 +02:00
golangci.yaml chore(apiserver): avoid using html template which disables dce 2025-06-13 15:28:55 +02:00
golangci.yaml.in chore(apiserver): avoid using html template which disables dce 2025-06-13 15:28:55 +02:00
grab-profiles.sh
install-etcd.sh install-ectd.sh: brace PATH and suggest user export 2025-03-13 11:23:53 -07:00
install-protoc.sh
lint-dependencies.sh Add guard for dependencies recursively depending on kubernetes or staging modules 2024-09-04 16:58:04 -04:00
list-feature-tests.sh
local-up-cluster.sh hack/local-up-cluster.sh: remove kubelet --cloud-config 2025-05-19 09:20:54 +02:00
logcheck.conf Migrate pkg/kubelet/status to contextual logging 2025-03-20 21:58:14 +08:00
module-graph.sh
OWNERS remove hwdef from hack reviewer 2025-05-06 15:26:20 +08:00
pin-dependency.sh Remove _tmp from pin-dependency 2024-03-05 21:44:43 -08:00
print-workspace-status.sh
README.md
run-prometheus-on-etcd-scrapes.sh
serve-prom-scrapes.sh
test-go.sh
unwanted-dependencies.json Update to etcd v3.6.1 in vendor/ 2025-06-11 16:46:03 -04:00
update-all.sh
update-codegen.sh update-codegen.sh: automatically install protoc 2025-04-24 22:54:09 -07:00
update-conformance-yaml.sh Revert "Save a list of images used by e2e.test" 2024-01-12 13:15:01 -08:00
update-featuregates.sh feat: Refactors featuregate lifecycle management script 2025-03-13 21:57:21 +00: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-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 golangci-lint: remove "strict" checking 2025-02-02 18:50:27 +01: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 Simplify update-vendor.sh to use go work sync 2024-10-10 17:58:54 -04:00
update-mocks.sh Honor KUBE_HACK_TOOLS_GOTOOLCHAIN 2025-02-14 13:01:59 -05:00
update-netparse-cve.sh Honor KUBE_HACK_TOOLS_GOTOOLCHAIN 2025-02-14 13:01:59 -05:00
update-openapi-spec.sh Allow OpenAPI verification to pass both with and without strict alpha 2025-03-05 21:31:40 +00:00
update-translations.sh
update-vendor-licenses.sh Tidy update-vendor-licenses for workspaces 2024-02-29 22:06:53 -08:00
update-vendor.sh Drop self-referencing replace directives 2024-10-17 15:51:15 -04:00
update-yamlfmt.sh Remove legacy references to './output' 2024-02-29 22:07:31 -08:00
verify-all.sh
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-api-lint.sh Implement validation-gen lint for CI 2025-03-21 08:20:04 -07: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
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 verify scripts: preserve exit code 2025-05-14 21:23:52 -07:00
verify-e2e-test-ownership.sh
verify-external-dependencies-version.sh update zeitgeist to v0.5.4 2024-10-21 09:57:12 +02:00
verify-featuregates.sh feat: Refactors featuregate lifecycle management script 2025-03-13 21:57:21 +00: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-gofmt.sh Remove legacy references to './output' 2024-02-29 22:07:31 -08:00
verify-golangci-lint-config.sh hack: verify to verify-golangci-lint.sh 2025-03-10 14:37:13 +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 Merge pull request #131561 from JoelSpeed/add-kube-api-linter 2025-05-20 14:44:33 -07: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
verify-licenses.sh Rename new::setup_env back to setup_env 2024-02-29 22:06:44 -08:00
verify-mocks.sh
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
verify-openapi-docs-urls.sh Remove _tmp from verify-openapi-docs-urls 2024-03-05 21:44:44 -08:00
verify-openapi-spec.sh Allow OpenAPI verification to pass both with and without strict alpha 2025-03-05 21:31:40 +00:00
verify-pkg-names.sh
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
verify-publishing-bot.sh Honor KUBE_HACK_TOOLS_GOTOOLCHAIN 2025-02-14 13:01:59 -05:00
verify-readonly-packages.sh Remove legacy references to './output' 2024-02-29 22:07:31 -08:00
verify-shellcheck.sh verify scripts: preserve exit code 2025-05-14 21:23:52 -07:00
verify-spelling.sh dependencies: github.com/client9/misspell -> github.com/golangci/misspell 2025-04-28 15:44:04 +02:00
verify-staging-meta-files.sh
verify-test-code.sh Provide link with e2e guidelines when verity-test-code.sh fails 2024-10-29 13:07:05 +01:00
verify-test-featuregates.sh chore: Remove unused unversioned feature gate map by consolidating feature gate files 2025-03-19 20:02:53 +00:00
verify-test-images.sh
verify-testing-import.sh hack: configure Go environments where necessary 2024-09-26 23:32:33 +02: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 Simplify update-vendor.sh to use go work sync 2024-10-10 17:58:54 -04:00
verify-yamlfmt.sh

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.