#!/usr/bin/env bash set -eo pipefail case $(uname) in Linux) if [[ -e /etc/os-release ]]; then source /etc/os-release else source /usr/lib/os-release fi export ID VERSION_ID export ID_LIKE="${ID} ${ID_LIKE} linux" export PATH="${HOME}/.local/bin${PATH:+:}${PATH}" ;; Darwin) # Emulate a subset of os-release(5) export ID=macos export VERSION_ID=$(sw_vers -productVersion) export PATH="/usr/local/bin${PATH:+:}${PATH}" if [[ -x /opt/homebrew/bin/brew ]]; then eval "$(/opt/homebrew/bin/brew shellenv)" elif [[ -x /usr/local/bin/brew ]]; then eval "$(/usr/local/bin/brew shellenv)" fi ;; esac export CACHE_DIR=${CACHE_DIR:-/tmp} if [[ $JOB_NAME == *"code-coverage" ]]; then export DISABLE_ASAN=yes export DISABLE_HEADERS_CHECK=yes fi # https://reproducible-builds.org/docs/source-date-epoch/ export SOURCE_DATE_EPOCH=$(git log -1 --format=%ct) for file in .jenkins.d/*; do [[ -f $file && -x $file ]] || continue if [[ -n $GITHUB_ACTIONS ]]; then label=$(basename "$file" | sed -E 's/[[:digit:]]+-(.*)\..*/\1/') echo "::group::${label}" fi echo "\$ $file" "$file" if [[ -n $GITHUB_ACTIONS ]]; then echo "::endgroup::" fi done