#!/usr/bin/env bash # SPDX-License-Identifier: LGPL-2.1-or-later # Download and extract coverity tool set -e set -o pipefail # Environment check if [ -z "$COVERITY_SCAN_TOKEN" ]; then echo >&2 'ERROR: COVERITY_SCAN_TOKEN must be set' exit 1 fi # Use default values if not set PLATFORM="$(uname)" TOOL_BASE="${TOOL_BASE:-/tmp/coverity-scan-analysis}" TOOL_ARCHIVE="${TOOL_ARCHIVE:-/tmp/cov-analysis-${PLATFORM}.tgz}" TOOL_URL="https://scan.coverity.com/download/${PLATFORM}" # Make sure wget is installed sudo apt-get update && sudo apt-get -y install wget # Get coverity tool if [ ! -d "$TOOL_BASE" ]; then # Download Coverity Scan Analysis Tool if [ ! -e "$TOOL_ARCHIVE" ]; then echo -e "\033[33;1mDownloading Coverity Scan Analysis Tool...\033[0m" wget -nv -O "$TOOL_ARCHIVE" "$TOOL_URL" --post-data "project=$COVERITY_SCAN_PROJECT_NAME&token=$COVERITY_SCAN_TOKEN" fi # Extract Coverity Scan Analysis Tool echo -e "\033[33;1mExtracting Coverity Scan Analysis Tool...\033[0m" mkdir -p "$TOOL_BASE" pushd "$TOOL_BASE" tar xzf "$TOOL_ARCHIVE" popd fi echo -e "\033[33;1mCoverity Scan Analysis Tool can be found at $TOOL_BASE ...\033[0m"