kubernetes/hack
Yongrui Lin daae4100a6 hack: enable coverage fixture generation in update-codegen.sh
Pass -test-output-root and -test-allowlist to validation-gen so the
per-Kind coverage fixtures regenerate alongside the validators. Add the
allowlist YAML at test/declarative_validation/coverage-allowlist.yaml.
2026-05-09 19:11:01 +00:00
..
boilerplate
conformance
e2e-internal
gen-swagger-doc
jenkins
kube-api-linter Merge pull request #136935 from troychiu/enable-optionalorrequired-linter-for-resource 2026-04-23 03:20:09 +05:30
lib DRA upgrade/downgrade: run etcd directly 2026-05-04 09:24:47 +02:00
make-rules test: move list of extra tests into separate file 2026-04-27 09:18:11 +02:00
testdata pause: fix version drift in various files 2026-04-03 16:11:09 +02:00
tools Bump go.yaml.in/yaml/v2 to 2.4.4 2026-05-06 18:24:52 +02:00
verify-flags
.descriptions_failures
.import-aliases Create Workload API v1alpha2 (#136976) 2026-03-10 07:59:10 +05:30
.spelling_failures
_update-generated-proto-bindings-dockerized.sh
_update-generated-protobuf-dockerized.sh
apidiff.sh
benchmark-go.sh
build-cross.sh
build-go.sh
cherry_pick_pull.sh hack/cherry_pick_pull.sh: use 'gh' to download patches 2026-05-08 19:16:21 +02:00
dependency-unit-tests.conf test: move list of extra tests into separate file 2026-04-27 09:18:11 +02:00
dev-build-and-push.sh
dev-build-and-up.sh
dev-push-conformance.sh
diff-protobuf.sh
e2e-node-test.sh
generate-docs.sh
get-build.sh
ginkgo-e2e.sh
golangci-hints.yaml chore: remove redundant comments 2026-05-06 09:35:48 +02:00
golangci.yaml chore: remove redundant comments 2026-05-06 09:35:48 +02:00
golangci.yaml.in Merge pull request #137614 from kairosci/fix-golangci-trailing-whitespace 2026-03-11 16:59:45 +05:30
grab-profiles.sh
install-etcd.sh
install-protoc.sh
lint-dependencies.sh
local-up-cluster.sh Merge pull request #138717 from pohly/dra-upgrade-downgrade-etcd 2026-05-04 17:19:40 +05:30
logcheck.conf chore: remove redundant comments 2026-05-06 09:35:48 +02:00
module-graph.sh
OWNERS
pin-dependency.sh
print-workspace-status.sh
README.md
run-prometheus-on-etcd-scrapes.sh
serve-prom-scrapes.sh
test-go.sh
unwanted-dependencies.json Remove kube-openapi from modern-go unwantedReferences 2026-05-09 13:20:11 -04:00
update-all.sh
update-codegen.sh hack: enable coverage fixture generation in update-codegen.sh 2026-05-09 19:11:01 +00:00
update-conformance-yaml.sh
update-featuregates.sh
update-generated-api-compatibility-data.sh
update-generated-docs.sh
update-generated-stable-metrics.sh add presubmit for metric naming 2026-04-21 01:03:31 +00:00
update-gofmt.sh
update-golangci-lint-config.sh
update-import-aliases.sh
update-internal-modules.sh
update-kustomize.sh
update-mocks.sh
update-netparse-cve.sh
update-openapi-spec.sh
update-owners-fmt.sh
update-translations.sh
update-vendor-licenses.sh
update-vendor.sh
verify-all.sh
verify-api-groups.sh
verify-boilerplate.sh
verify-cli-conventions.sh
verify-codegen.sh
verify-conformance-requirements.sh
verify-conformance-yaml.sh
verify-deadcode-elimination.sh Re-enable deadcode-elimination check 2026-03-05 16:57:02 -05:00
verify-description.sh
verify-e2e-images.sh
verify-e2e-test-ownership.sh
verify-external-dependencies-version.sh
verify-featuregates.sh
verify-fieldname-docs.sh
verify-file-sizes.sh
verify-flags-underscore.py
verify-generated-docs.sh
verify-generated-stable-metrics.sh add presubmit for metric naming 2026-04-21 01:03:31 +00:00
verify-gofmt.sh
verify-golangci-lint-config.sh
verify-golangci-lint-pr-hints.sh
verify-golangci-lint.sh
verify-govulncheck.sh
verify-import-aliases.sh
verify-import-boss.sh
verify-imports.sh
verify-internal-modules.sh
verify-licenses.sh
verify-metrics-naming.sh add presubmit for metric naming 2026-04-21 01:03:31 +00:00
verify-mocks.sh
verify-netparse-cve.sh
verify-no-vendor-cycles.sh
verify-non-mutating-validation.sh
verify-openapi-docs-urls.sh
verify-openapi-spec.sh
verify-owners-fmt.sh
verify-pkg-names.sh
verify-prerelease-lifecycle-tags.sh
verify-prometheus-imports.sh add presubmit for metric naming 2026-04-21 01:03:31 +00:00
verify-publishing-bot.sh
verify-readonly-packages.sh
verify-shellcheck.sh
verify-spelling.sh
verify-staging-meta-files.sh
verify-test-code.sh
verify-test-featuregates.sh
verify-test-images.sh
verify-testing-import.sh
verify-typecheck.sh
verify-vendor-licenses.sh
verify-vendor.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.