Some checks failed
CI / test-backend (push) Successful in 4s
Tests / test (push) Failing after 22m9s
CI / lint (push) Failing after 5m10s
Build Test / Build and Test (pull_request) Successful in 5m12s
CI / build-frontend (push) Successful in 9m43s
CI / test-lang (push) Successful in 9m40s
CI / lint (pull_request) Failing after 5m0s
CI / test-backend (pull_request) Successful in 4s
Build and Publish Docker Image / build (pull_request) Has been skipped
OSV-Scanner PR Scan / scan-pr (pull_request) Successful in 7s
Benchmarks / benchmark (push) Successful in 14m33s
Benchmarks / benchmark (pull_request) Successful in 14m36s
CI / build-frontend (pull_request) Successful in 9m40s
Tests / test (pull_request) Failing after 7m18s
Build Test / Build and Test (push) Successful in 17m57s
CI / test-lang (pull_request) Successful in 9m34s
Build and Publish Docker Image / build-dev (pull_request) Successful in 13m6s
39 lines
951 B
Bash
39 lines
951 B
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
OSV_VERSION="${OSV_VERSION:-v2.3.1}"
|
|
|
|
echo "Installing OSV-Scanner ${OSV_VERSION}..."
|
|
curl -sSL "https://github.com/google/osv-scanner/releases/download/${OSV_VERSION}/osv-scanner_linux_amd64" -o /tmp/osv-scanner
|
|
chmod +x /tmp/osv-scanner
|
|
sudo mv /tmp/osv-scanner /usr/local/bin/osv-scanner
|
|
|
|
echo "Running OSV-Scanner recursively..."
|
|
OSV_JSON="$(mktemp)"
|
|
trap 'rm -f "$OSV_JSON"' EXIT
|
|
|
|
osv-scanner --recursive ./ --format json > "$OSV_JSON" || true
|
|
|
|
if ! command -v jq >/dev/null 2>&1; then
|
|
echo "Error: jq is not installed. Please install jq to parse OSV results."
|
|
exit 1
|
|
fi
|
|
|
|
VULNS=$(jq -r '
|
|
.results[]? |
|
|
.source as $src |
|
|
.vulns[]? |
|
|
"\(.id) (source: \($src))"
|
|
' "$OSV_JSON")
|
|
|
|
if [ -n "$VULNS" ]; then
|
|
echo "OSV scan found vulnerabilities:"
|
|
echo "$VULNS" | while IFS= read -r line; do
|
|
echo " - $line"
|
|
done
|
|
exit 1
|
|
else
|
|
echo "OSV scan: no vulnerabilities found."
|
|
fi
|
|
|