diff --git a/hack/make-rules/verify.sh b/hack/make-rules/verify.sh index 30a9a5bf7db..a4cca064e14 100755 --- a/hack/make-rules/verify.sh +++ b/hack/make-rules/verify.sh @@ -33,7 +33,8 @@ source "${KUBE_ROOT}/third_party/forked/shell2junit/sh2ju.sh" EXCLUDED_PATTERNS=( "verify-all.sh" # this script calls the make rule and would cause a loop "verify-*-dockerized.sh" # Don't run any scripts that intended to be run dockerized - "verify-golangci-lint-pr.sh" # Don't run this as part of the block pull-kubernetes-verify yet. TODO(pohly): try this in a non-blocking job and then reconsider this. + "verify-golangci-lint-pr.sh" # Runs in a separate job for PRs. + "verify-golangci-lint-hints.sh" # Runs in a separate job for PRs. "verify-licenses.sh" # runs in a separate job to monitor availability of the dependencies periodically "verify-openapi-docs-urls.sh" # Spams docs URLs, don't run in CI. ) diff --git a/hack/verify-golangci-lint-pr-hints.sh b/hack/verify-golangci-lint-pr-hints.sh new file mode 100755 index 00000000000..7c51f3052a0 --- /dev/null +++ b/hack/verify-golangci-lint-pr-hints.sh @@ -0,0 +1,31 @@ +#!/usr/bin/env bash + +# Copyright 2022 The Kubernetes Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This script checks a PR for the coding style for the Go language files using +# golangci-lint. It does nothing when invoked as part of a normal "make +# verify". + +set -o nounset +set -o pipefail + +if [ ! "${PULL_NUMBER:-}" ]; then + echo 'Not testing anything because this is not a pull request.' + exit 0 +fi + +KUBE_ROOT=$(dirname "${BASH_SOURCE[0]}")/.. + +"${KUBE_ROOT}/hack/verify-golangci-lint.sh" -r "${PULL_BASE_SHA}" -n diff --git a/hack/verify-golangci-lint-pr.sh b/hack/verify-golangci-lint-pr.sh index 101cae1dedb..689028add30 100755 --- a/hack/verify-golangci-lint-pr.sh +++ b/hack/verify-golangci-lint-pr.sh @@ -28,12 +28,4 @@ fi KUBE_ROOT=$(dirname "${BASH_SOURCE[0]}")/.. -# include shell2junit library -source "${KUBE_ROOT}/third_party/forked/shell2junit/sh2ju.sh" - -# TODO (https://github.com/kubernetes/test-infra/issues/17056): -# take this additional artifact and convert it to GitHub annotations -# to make it easier to see these problems during a PR review. -# -# -g "${ARTIFACTS}/golangci-lint-githubactions.log" -juLog -output="${ARTIFACTS:-/tmp/results}" -class="golangci" -name="golangci-strict-pr" -fail="^ERROR: " "${KUBE_ROOT}/hack/verify-golangci-lint.sh" -r "${PULL_BASE_SHA}" -s +"${KUBE_ROOT}/hack/verify-golangci-lint.sh" -r "${PULL_BASE_SHA}" -s