@@ -27,6 +27,16 @@ export DOCKER_BUILDKIT=1
2727export BUILDKIT_PROGRESS=plain
2828export PROGRESS_NO_TRUNC=1
2929
30+ # Check if docker compose command is available
31+ if [ -x " ` command -v docker-compose & > /dev/null` " ]; then
32+ DOCKER_COMPOSE=docker-compose
33+ elif [ -x " ` command -v docker compose & > /dev/null` " ]; then
34+ DOCKER_COMPOSE=" docker compose"
35+ else
36+ echo " Docker Compose not installed, install it and re-run the script"
37+ exit 1
38+ fi
39+
3040# Pull MetaCall Docker Compose
3141sub_pull () {
3242 if [ -z " $IMAGE_NAME " ]; then
@@ -46,31 +56,31 @@ sub_pull() {
4656# Build MetaCall Docker Compose (link manually dockerignore files)
4757sub_build () {
4858 ln -sf tools/deps/.dockerignore .dockerignore
49- docker-compose -f docker-compose.yml build --force-rm deps
59+ $DOCKER_COMPOSE -f docker-compose.yml build --force-rm deps
5060
5161 ln -sf tools/dev/.dockerignore .dockerignore
52- docker-compose -f docker-compose.yml build --force-rm dev
62+ $DOCKER_COMPOSE -f docker-compose.yml build --force-rm dev
5363
5464 ln -sf tools/runtime/.dockerignore .dockerignore
55- docker-compose -f docker-compose.yml build --force-rm runtime
65+ $DOCKER_COMPOSE -f docker-compose.yml build --force-rm runtime
5666
5767 ln -sf tools/cli/.dockerignore .dockerignore
58- docker-compose -f docker-compose.yml build --force-rm cli
68+ $DOCKER_COMPOSE -f docker-compose.yml build --force-rm cli
5969}
6070
6171# Build MetaCall Docker Compose without cache (link manually dockerignore files)
6272sub_rebuild () {
6373 ln -sf tools/deps/.dockerignore .dockerignore
64- docker-compose -f docker-compose.yml build --force-rm --no-cache deps
74+ $DOCKER_COMPOSE -f docker-compose.yml build --force-rm --no-cache deps
6575
6676 ln -sf tools/dev/.dockerignore .dockerignore
67- docker-compose -f docker-compose.yml build --force-rm --no-cache dev
77+ $DOCKER_COMPOSE -f docker-compose.yml build --force-rm --no-cache dev
6878
6979 ln -sf tools/runtime/.dockerignore .dockerignore
70- docker-compose -f docker-compose.yml build --force-rm --no-cache runtime
80+ $DOCKER_COMPOSE -f docker-compose.yml build --force-rm --no-cache runtime
7181
7282 ln -sf tools/cli/.dockerignore .dockerignore
73- docker-compose -f docker-compose.yml build --force-rm --no-cache cli
83+ $DOCKER_COMPOSE -f docker-compose.yml build --force-rm --no-cache cli
7484}
7585
7686# Build MetaCall Docker Compose for testing (link manually dockerignore files)
@@ -88,10 +98,10 @@ sub_test() {
8898 export METACALL_BUILD_TYPE=${METACALL_BUILD_TYPE:- debug}
8999
90100 ln -sf tools/deps/.dockerignore .dockerignore
91- docker-compose -f docker-compose.yml -f docker-compose.test.yml build --force-rm deps
101+ $DOCKER_COMPOSE -f docker-compose.yml -f docker-compose.test.yml build --force-rm deps
92102
93103 ln -sf tools/dev/.dockerignore .dockerignore
94- docker-compose -f docker-compose.yml -f docker-compose.test.yml build --force-rm dev
104+ $DOCKER_COMPOSE -f docker-compose.yml -f docker-compose.test.yml build --force-rm dev
95105}
96106
97107# Build MetaCall Docker Compose with Sanitizer for testing (link manually dockerignore files)
@@ -109,14 +119,14 @@ sub_test_sanitizer() {
109119 export METACALL_BUILD_TYPE=${METACALL_BUILD_TYPE:- debug}
110120
111121 ln -sf tools/deps/.dockerignore .dockerignore
112- docker-compose -f docker-compose.yml -f docker-compose.test.yml build --force-rm deps
122+ $DOCKER_COMPOSE -f docker-compose.yml -f docker-compose.test.yml build --force-rm deps
113123
114124 ln -sf tools/dev/.dockerignore .dockerignore
115125
116126 if [ ! -z " ${SANITIZER_SKIP_SUMMARY:- } " ]; then
117- docker-compose -f docker-compose.yml -f docker-compose.test.yml build --force-rm dev
127+ $DOCKER_COMPOSE -f docker-compose.yml -f docker-compose.test.yml build --force-rm dev
118128 else
119- docker-compose -f docker-compose.yml -f docker-compose.test.yml build --force-rm dev | tee /tmp/metacall-test-output
129+ $DOCKER_COMPOSE -f docker-compose.yml -f docker-compose.test.yml build --force-rm dev | tee /tmp/metacall-test-output
120130
121131 # Retrieve all the summaries
122132 SUMMARY=$( grep " SUMMARY:" /tmp/metacall-test-output)
@@ -163,10 +173,10 @@ sub_coverage() {
163173 export METACALL_BUILD_TYPE=debug
164174
165175 ln -sf tools/deps/.dockerignore .dockerignore
166- docker-compose -f docker-compose.yml -f docker-compose.test.yml build --force-rm deps
176+ $DOCKER_COMPOSE -f docker-compose.yml -f docker-compose.test.yml build --force-rm deps
167177
168178 ln -sf tools/dev/.dockerignore .dockerignore
169- docker-compose -f docker-compose.yml -f docker-compose.test.yml build --force-rm dev
179+ $DOCKER_COMPOSE -f docker-compose.yml -f docker-compose.test.yml build --force-rm dev
170180}
171181
172182# Build MetaCall Docker Compose with caching (link manually dockerignore files)
@@ -177,16 +187,16 @@ sub_cache() {
177187 fi
178188
179189 ln -sf tools/deps/.dockerignore .dockerignore
180- docker-compose -f docker-compose.yml -f docker-compose.cache.yml build deps
190+ $DOCKER_COMPOSE -f docker-compose.yml -f docker-compose.cache.yml build deps
181191
182192 ln -sf tools/dev/.dockerignore .dockerignore
183- docker-compose -f docker-compose.yml -f docker-compose.cache.yml build dev
193+ $DOCKER_COMPOSE -f docker-compose.yml -f docker-compose.cache.yml build dev
184194
185195 ln -sf tools/runtime/.dockerignore .dockerignore
186- docker-compose -f docker-compose.yml -f docker-compose.cache.yml build runtime
196+ $DOCKER_COMPOSE -f docker-compose.yml -f docker-compose.cache.yml build runtime
187197
188198 ln -sf tools/cli/.dockerignore .dockerignore
189- docker-compose -f docker-compose.yml -f docker-compose.cache.yml build cli
199+ $DOCKER_COMPOSE -f docker-compose.yml -f docker-compose.cache.yml build cli
190200}
191201
192202# Push MetaCall Docker Compose
0 commit comments