1
0
Fork 0
mirror of https://github.com/kubernetes-sigs/node-feature-discovery.git synced 2024-12-14 11:57:51 +00:00
node-feature-discovery/scripts/test-infra/verify.sh
2024-08-30 16:32:09 +03:00

68 lines
1.7 KiB
Bash
Executable file

#!/bin/bash -e
this_dir=`dirname $0`
# Install deps
gobinpath="$(go env GOPATH)/bin"
curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s -- -b "$gobinpath" v1.60.3
export PATH=$PATH:$(go env GOPATH)/bin
curl -sfL https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash -s -- --version v3.15.3
kubectl="$gobinpath/kubectl"
curl -L https://dl.k8s.io/release/v1.22.1/bin/linux/amd64/kubectl -o "$kubectl"
chmod 755 "$kubectl"
curl https://keybase.io/codecovsecurity/pgp_keys.asc | gpg --no-default-keyring --keyring trustedkeys.gpg --import
curl -Os https://uploader.codecov.io/latest/linux/codecov
chmod +x codecov
go install sigs.k8s.io/logtools/logcheck@v0.8.1
# Run verify steps
echo "Checking gofmt"
make gofmt-verify
echo "Running golangci-lint"
make ci-lint
echo "Running Helm lint"
make helm-lint
echo "Running logcheck"
logcheck -config "${this_dir}/logcheck.conf" ./cmd/... ./pkg/... ./source/...
echo "Running unit tests"
make test
# Upload coverage report
./codecov -t "${CODECOV_TOKEN}" \
-C "${PULL_PULL_SHA}" \
-r "${REPO_OWNER}/${REPO_NAME}" \
-P "${PULL_NUMBER}" \
-b "${BUILD_ID}" \
-B "${PULL_BASE_REF}" \
-N "${PULL_BASE_SHA}"
# Check that repo is clean
if ! git diff --quiet; then
echo "Repository is dirty!"
exit 1
fi
# Check that templates are up-to-date
make templates
if ! git diff --quiet; then
echo "Deployment templates are not up-to-date. Run 'make templates' to update"
exit 1
fi
# Check that the kustomize overlays are buildable
for d in `ls deployment/overlays/* -d`; do
if [ "`basename $d`" = "samples" ]; then
continue
fi
echo "Verifying $d"
kubectl kustomize $d > /dev/null
done