@@ -31,6 +31,11 @@ x-environment: &environment
3131 DOCSRS_BUILD_CPU_LIMIT : 2
3232 DOCSRS_INCLUDE_DEFAULT_TARGETS : false
3333
34+ x-gui-tests-environment : &gui-tests-environment
35+ << : *environment
36+ DOCSRS_DATABASE_URL : postgresql://cratesfyi:password@db/gui-tests
37+ DOCSRS_S3_BUCKET : gui-tests
38+
3439x-builder : &builder
3540 build :
3641 context : .
@@ -47,7 +52,7 @@ x-builder: &builder
4752 test : curl --silent --fail localhost:3000/about/metrics
4853
4954services :
50- web :
55+ web : &web
5156 build :
5257 context : .
5358 dockerfile : ./dockerfiles/Dockerfile
@@ -98,7 +103,7 @@ services:
98103 - " .rustwide-docker/builder-b:/opt/docsrs/rustwide"
99104 - " /var/run/docker.sock:/var/run/docker.sock"
100105
101- cli :
106+ cli : &cli
102107 build :
103108 context : .
104109 dockerfile : ./dockerfiles/Dockerfile
@@ -134,8 +139,16 @@ services:
134139 image : minio/minio
135140 entrypoint : >
136141 /bin/sh -c "
137- mkdir -p /data/rust-docs-rs;
138- minio server /data --console-address ":9001";
142+ set -meu
143+ mc alias rm s3 || true
144+ mc alias rm gcs || true
145+ mc alias rm local || true
146+ mc alias rm play || true
147+ minio server /data --console-address ":9001" &
148+ sleep 1
149+ mc alias set local http://s3:9000 cratesfyi secret_key
150+ mc mb --ignore-existing s3/rust-docs-rs
151+ fg
139152 "
140153 ports :
141154 - " 127.0.0.1:9000:9000"
@@ -159,15 +172,36 @@ services:
159172 << : *healthcheck-interval
160173 test : promtool check healthy
161174
162- gui_tests :
163- build :
164- context : .
165- dockerfile : ./dockerfiles/Dockerfile-gui-tests
166- network_mode : " host"
167- extra_hosts :
168- - " host.docker.internal:host-gateway"
175+ gui-tests-cli :
176+ << : *cli
177+ environment : *gui-tests-environment
178+ profiles :
179+ - all
180+
181+ gui-tests-builder :
182+ << : *builder
183+ environment : *gui-tests-environment
169184 volumes :
170- - " ${PWD}:/build/out"
185+ - " .rustwide-docker/builder-gui-tests:/opt/docsrs/rustwide"
186+ - " /var/run/docker.sock:/var/run/docker.sock"
187+ profiles :
188+ - all
189+
190+ gui-tests-web :
191+ << : *web
192+ ports :
193+ - " 3001:80"
194+ environment : *gui-tests-environment
195+ profiles :
196+ - all
197+
198+ gui-tests :
199+ build :
200+ context : gui-tests
201+ depends_on :
202+ - gui-tests-web
203+ environment :
204+ SERVER_URL : http://gui-tests-web
171205 profiles :
172206 - all
173207
0 commit comments