mirror of
https://github.com/kubernetes-sigs/node-feature-discovery.git
synced 2025-03-31 04:04:51 +00:00
Provide the commit SHA repo slug, PR number, prow build id and base branch to the codecov tool so that it is able to do its job.
60 lines
1.5 KiB
Bash
Executable file
60 lines
1.5 KiB
Bash
Executable file
#!/bin/bash -e
|
|
|
|
# Install deps
|
|
gobinpath="$(go env GOPATH)/bin"
|
|
curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s -- -b "$gobinpath" v1.51.2
|
|
export PATH=$PATH:$(go env GOPATH)/bin
|
|
|
|
curl -sfL https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash -s -- --version v3.7.1
|
|
|
|
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
|
|
|
|
# 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 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}
|
|
|
|
# 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
|