![]() The long-term goal is that when "make verify" is invoked in pull job, it will also run golangci-lint with the strict configuration and write an $ARTIFACTS/golangci-lint-githubactions.log file with GitHub actions annotations. How to get those published for the GitHub PR is open. When "make verify" is invoked manually or in any other job, the stricter check will be skipped. That works because "PR_NUMBER" is only set for pre-merge jobs (https://github.com/kubernetes/test-infra/blob/master/prow/jobs.md#job-environment-variables). Because strict linting is still new and might not be useful without a better UI (= GitHub annotations), this PR does not fully enable the integration into "make verify". Instead, the new verify-golangci-lint-pr.sh is excluded from it and needs to be run in a separate job. |
||
---|---|---|
.. | ||
boilerplate | ||
conformance | ||
e2e-internal | ||
gen-swagger-doc | ||
jenkins | ||
lib | ||
make-rules | ||
testdata | ||
tools | ||
verify-flags | ||
.descriptions_failures | ||
.import-aliases | ||
.spelling_failures | ||
benchmark-go.sh | ||
build-cross.sh | ||
build-go.sh | ||
cherry_pick_pull.sh | ||
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 | ||
golangci-strict.yaml | ||
golangci.yaml | ||
grab-profiles.sh | ||
install-etcd.sh | ||
install-protoc.sh | ||
lint-dependencies.sh | ||
list-feature-tests.sh | ||
local-up-cluster.sh | ||
logcheck.conf | ||
module-graph.sh | ||
OWNERS | ||
pin-dependency.sh | ||
print-workspace-status.sh | ||
README.md | ||
run-in-gopath.sh | ||
run-prometheus-on-etcd-scrapes.sh | ||
serve-prom-scrapes.sh | ||
test-go.sh | ||
test-integration.sh | ||
unwanted-dependencies.json | ||
update-all.sh | ||
update-codegen.sh | ||
update-conformance-yaml.sh | ||
update-generated-api-compatibility-data.sh | ||
update-generated-docs.sh | ||
update-generated-proto-bindings-dockerized.sh | ||
update-generated-protobuf-dockerized.sh | ||
update-generated-stable-metrics.sh | ||
update-gofmt.sh | ||
update-import-aliases.sh | ||
update-internal-modules.sh | ||
update-kustomize.sh | ||
update-mocks.sh | ||
update-netparse-cve.sh | ||
update-openapi-spec.sh | ||
update-translations.sh | ||
update-vendor-licenses.sh | ||
update-vendor.sh | ||
update-yamlfmt.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-description.sh | ||
verify-e2e-test-ownership.sh | ||
verify-external-dependencies-version.sh | ||
verify-fieldname-docs.sh | ||
verify-flags-underscore.py | ||
verify-generated-docs.sh | ||
verify-generated-stable-metrics.sh | ||
verify-gofmt.sh | ||
verify-golangci-lint-pr.sh | ||
verify-golangci-lint.sh | ||
verify-govet-levee.sh | ||
verify-import-aliases.sh | ||
verify-import-boss.sh | ||
verify-imports.sh | ||
verify-internal-modules.sh | ||
verify-licenses.sh | ||
verify-mocks.sh | ||
verify-netparse-cve.sh | ||
verify-no-vendor-cycles.sh | ||
verify-non-mutating-validation.sh | ||
verify-openapi-spec.sh | ||
verify-pkg-names.sh | ||
verify-prerelease-lifecycle-tags.sh | ||
verify-prometheus-imports.sh | ||
verify-publishing-bot.py | ||
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-typecheck-providerless.sh | ||
verify-typecheck.sh | ||
verify-vendor-licenses.sh | ||
verify-vendor.sh | ||
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 tomake verify
.update-all.sh
: This script is a vestigial redirection, Please do not add "real" logic. Thetrue
target of this makerule ishack/make-rules/update.sh
.It is equivalent tomake 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
.