#! /bin/bash if [ -z ${PX4_DOCKER_REPO+x} ]; then echo "guessing PX4_DOCKER_REPO based on input"; if [[ $@ =~ .*clang.* ]] || [[ $@ =~ .*scan-build.* ]]; then # clang tools PX4_DOCKER_REPO="px4io/px4-dev-clang:2021-02-04" elif [[ $@ =~ .*tests* ]]; then # run all tests with simulation PX4_DOCKER_REPO="px4io/px4-dev-simulation-bionic:2021-12-11" fi else echo "PX4_DOCKER_REPO is set to '$PX4_DOCKER_REPO'"; fi # otherwise default to nuttx if [ -z ${PX4_DOCKER_REPO+x} ]; then PX4_DOCKER_REPO="px4io/px4-dev:v1.16.0-rc1-258-g0369abd556" fi echo "PX4_DOCKER_REPO: $PX4_DOCKER_REPO"; PWD=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) SRC_DIR=$PWD/../ CCACHE_DIR=${HOME}/.ccache mkdir -p "${CCACHE_DIR}" docker run -it --rm -w "${SRC_DIR}" \ --user="$(id -u):$(id -g)" \ --env=AWS_ACCESS_KEY_ID \ --env=AWS_SECRET_ACCESS_KEY \ --env=BRANCH_NAME \ --env=CCACHE_DIR="${CCACHE_DIR}" \ --env=CI \ --env=CODECOV_TOKEN \ --env=COVERALLS_REPO_TOKEN \ --env=PX4_ASAN \ --env=PX4_MSAN \ --env=PX4_TSAN \ --env=PX4_UBSAN \ --env=TRAVIS_BRANCH \ --env=TRAVIS_BUILD_ID \ --publish 14556:14556/udp \ --volume=${CCACHE_DIR}:${CCACHE_DIR}:rw \ --volume=${SRC_DIR}:${SRC_DIR}:rw \ ${PX4_DOCKER_REPO} /bin/bash -c "$1 $2 $3"