ci: Allow build dir on CI host

This commit is contained in:
MarcoFalke 2024-12-05 15:36:04 +01:00
parent 4036ee3f2b
commit 8888ee4403
No known key found for this signature in database
2 changed files with 11 additions and 7 deletions

View file

@ -266,16 +266,16 @@ jobs:
timeout-minutes: 120 timeout-minutes: 120
env: env:
FILE_ENV: "./ci/test/00_setup_env_native_asan.sh" FILE_ENV: "./ci/test/00_setup_env_native_asan.sh"
DANGER_CI_ON_HOST_CACHE_FOLDERS: 1 DANGER_CI_ON_HOST_FOLDERS: 1
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v4 uses: actions/checkout@v4
- name: Set Ccache directory - name: Set CI directories
run: echo "CCACHE_DIR=${RUNNER_TEMP}/ccache_dir" >> "$GITHUB_ENV" run: |
echo "CCACHE_DIR=${{ runner.temp }}/ccache_dir" >> "$GITHUB_ENV"
- name: Set base root directory echo "BASE_ROOT_DIR=${{ runner.temp }}" >> "$GITHUB_ENV"
run: echo "BASE_ROOT_DIR=${RUNNER_TEMP}" >> "$GITHUB_ENV" echo "BASE_BUILD_DIR=${{ runner.temp }}/build-asan" >> "$GITHUB_ENV"
- name: Restore Ccache cache - name: Restore Ccache cache
id: ccache-cache id: ccache-cache

View file

@ -44,18 +44,21 @@ if [ -z "$DANGER_RUN_CI_ON_HOST" ]; then
CI_DEPENDS_MOUNT="type=volume,src=${CONTAINER_NAME}_depends,dst=$DEPENDS_DIR/built" CI_DEPENDS_MOUNT="type=volume,src=${CONTAINER_NAME}_depends,dst=$DEPENDS_DIR/built"
CI_DEPENDS_SOURCES_MOUNT="type=volume,src=${CONTAINER_NAME}_depends_sources,dst=$DEPENDS_DIR/sources" CI_DEPENDS_SOURCES_MOUNT="type=volume,src=${CONTAINER_NAME}_depends_sources,dst=$DEPENDS_DIR/sources"
CI_PREVIOUS_RELEASES_MOUNT="type=volume,src=${CONTAINER_NAME}_previous_releases,dst=$PREVIOUS_RELEASES_DIR" CI_PREVIOUS_RELEASES_MOUNT="type=volume,src=${CONTAINER_NAME}_previous_releases,dst=$PREVIOUS_RELEASES_DIR"
CI_BUILD_MOUNT=""
if [ "$DANGER_CI_ON_HOST_CACHE_FOLDERS" ]; then if [ "$DANGER_CI_ON_HOST_FOLDERS" ]; then
# ensure the directories exist # ensure the directories exist
mkdir -p "${CCACHE_DIR}" mkdir -p "${CCACHE_DIR}"
mkdir -p "${DEPENDS_DIR}/built" mkdir -p "${DEPENDS_DIR}/built"
mkdir -p "${DEPENDS_DIR}/sources" mkdir -p "${DEPENDS_DIR}/sources"
mkdir -p "${PREVIOUS_RELEASES_DIR}" mkdir -p "${PREVIOUS_RELEASES_DIR}"
mkdir -p "${BASE_BUILD_DIR}" # Unset by default, must be defined externally
CI_CCACHE_MOUNT="type=bind,src=${CCACHE_DIR},dst=$CCACHE_DIR" CI_CCACHE_MOUNT="type=bind,src=${CCACHE_DIR},dst=$CCACHE_DIR"
CI_DEPENDS_MOUNT="type=bind,src=${DEPENDS_DIR}/built,dst=$DEPENDS_DIR/built" CI_DEPENDS_MOUNT="type=bind,src=${DEPENDS_DIR}/built,dst=$DEPENDS_DIR/built"
CI_DEPENDS_SOURCES_MOUNT="type=bind,src=${DEPENDS_DIR}/sources,dst=$DEPENDS_DIR/sources" CI_DEPENDS_SOURCES_MOUNT="type=bind,src=${DEPENDS_DIR}/sources,dst=$DEPENDS_DIR/sources"
CI_PREVIOUS_RELEASES_MOUNT="type=bind,src=${PREVIOUS_RELEASES_DIR},dst=$PREVIOUS_RELEASES_DIR" CI_PREVIOUS_RELEASES_MOUNT="type=bind,src=${PREVIOUS_RELEASES_DIR},dst=$PREVIOUS_RELEASES_DIR"
CI_BUILD_MOUNT="--mount type=bind,src=${BASE_BUILD_DIR},dst=${BASE_BUILD_DIR}"
fi fi
if [ "$DANGER_CI_ON_HOST_CCACHE_FOLDER" ]; then if [ "$DANGER_CI_ON_HOST_CCACHE_FOLDER" ]; then
@ -97,6 +100,7 @@ if [ -z "$DANGER_RUN_CI_ON_HOST" ]; then
--mount "${CI_DEPENDS_MOUNT}" \ --mount "${CI_DEPENDS_MOUNT}" \
--mount "${CI_DEPENDS_SOURCES_MOUNT}" \ --mount "${CI_DEPENDS_SOURCES_MOUNT}" \
--mount "${CI_PREVIOUS_RELEASES_MOUNT}" \ --mount "${CI_PREVIOUS_RELEASES_MOUNT}" \
${CI_BUILD_MOUNT} \
--env-file /tmp/env-$USER-$CONTAINER_NAME \ --env-file /tmp/env-$USER-$CONTAINER_NAME \
--name "$CONTAINER_NAME" \ --name "$CONTAINER_NAME" \
--network ci-ip6net \ --network ci-ip6net \