@@ -30,6 +30,24 @@ if [ -z "$DANGER_RUN_CI_ON_HOST" ]; then
30
30
docker volume create " ${CONTAINER_NAME} _depends_sources" || true
31
31
docker volume create " ${CONTAINER_NAME} _previous_releases" || true
32
32
33
+ CI_CCACHE_MOUNT=" type=volume,src=${CONTAINER_NAME} _ccache,dst=$CCACHE_DIR "
34
+ CI_DEPENDS_MOUNT=" type=volume,src=${CONTAINER_NAME} _depends,dst=$DEPENDS_DIR /built"
35
+ CI_DEPENDS_SOURCES_MOUNT=" type=volume,src=${CONTAINER_NAME} _depends_sources,dst=$DEPENDS_DIR /sources"
36
+ CI_PREVIOUS_RELEASES_MOUNT=" type=volume,src=${CONTAINER_NAME} _previous_releases,dst=$PREVIOUS_RELEASES_DIR "
37
+
38
+ if [ " $DANGER_CI_ON_HOST_CACHE_FOLDERS " ]; then
39
+ # ensure the directories exist
40
+ mkdir -p " ${CCACHE_DIR} "
41
+ mkdir -p " ${DEPENDS_DIR} /built"
42
+ mkdir -p " ${DEPENDS_DIR} /sources"
43
+ mkdir -p " ${PREVIOUS_RELEASES_DIR} "
44
+
45
+ CI_CCACHE_MOUNT=" type=bind,src=${CCACHE_DIR} ,dst=$CCACHE_DIR "
46
+ CI_DEPENDS_MOUNT=" type=bind,src=${DEPENDS_DIR} /built,dst=$DEPENDS_DIR /built"
47
+ CI_DEPENDS_SOURCES_MOUNT=" type=bind,src=${DEPENDS_DIR} /sources,dst=$DEPENDS_DIR /sources"
48
+ CI_PREVIOUS_RELEASES_MOUNT=" type=bind,src=${PREVIOUS_RELEASES_DIR} ,dst=$PREVIOUS_RELEASES_DIR "
49
+ fi
50
+
33
51
docker network create --ipv6 --subnet 1111:1111::/112 ci-ip6net || true
34
52
35
53
if [ -n " ${RESTART_CI_DOCKER_BEFORE_RUN} " ] ; then
@@ -52,10 +70,10 @@ if [ -z "$DANGER_RUN_CI_ON_HOST" ]; then
52
70
# shellcheck disable=SC2086
53
71
CI_CONTAINER_ID=$( docker run --cap-add LINUX_IMMUTABLE $CI_CONTAINER_CAP --rm --interactive --detach --tty \
54
72
--mount " type=bind,src=$BASE_READ_ONLY_DIR ,dst=$BASE_READ_ONLY_DIR ,readonly" \
55
- --mount " type=volume,src= ${CONTAINER_NAME} _ccache,dst= $CCACHE_DIR " \
56
- --mount " type=volume,src= ${CONTAINER_NAME} _depends,dst= $DEPENDS_DIR /built " \
57
- --mount " type=volume,src= ${CONTAINER_NAME} _depends_sources,dst= $DEPENDS_DIR /sources " \
58
- --mount " type=volume,src= ${CONTAINER_NAME} _previous_releases,dst= $PREVIOUS_RELEASES_DIR " \
73
+ --mount " ${CI_CCACHE_MOUNT} " \
74
+ --mount " ${CI_DEPENDS_MOUNT} " \
75
+ --mount " ${CI_DEPENDS_SOURCES_MOUNT} " \
76
+ --mount " ${CI_PREVIOUS_RELEASES_MOUNT} " \
59
77
--env-file /tmp/env-$USER -$CONTAINER_NAME \
60
78
--name " $CONTAINER_NAME " \
61
79
--network ci-ip6net \
0 commit comments