Update buildscripts to use fake-gcs instead of S3 credentials

This commit is contained in:
Simon Detheridge 2020-07-23 19:30:13 +01:00
parent 99a3266105
commit 287d705671
5 changed files with 36 additions and 8 deletions

View file

@ -1,6 +1,6 @@
docstore
--acceptance-creds=None
--dependencies=mongo
--dependencies=mongo,gcs
--docker-repos=gcr.io/overleaf-ops
--env-add=
--env-pass-through=

View file

@ -16,19 +16,22 @@ services:
test_acceptance:
build: .
image: ci/$PROJECT_NAME:$BRANCH_NAME-$BUILD_NUMBER
extends:
file: docker-compose-config.yml
service: ci
environment:
ELASTIC_SEARCH_DSN: es:9200
REDIS_HOST: redis
MONGO_HOST: mongo
POSTGRES_HOST: postgres
GCS_API_ENDPOINT: gcs:9090
GCS_API_SCHEME: http
GCS_PROJECT_ID: fake
STORAGE_EMULATOR_HOST: http://gcs:9090/storage/v1
MOCHA_GREP: ${MOCHA_GREP}
NODE_ENV: test
depends_on:
mongo:
condition: service_healthy
gcs:
condition: service_healthy
user: node
command: npm run test:acceptance:_run
@ -42,3 +45,7 @@ services:
user: root
mongo:
image: mongo:3.6
gcs:
build:
context: test/acceptance/deps
dockerfile: Dockerfile.fake-gcs

View file

@ -17,18 +17,19 @@ services:
user: node
test_acceptance:
image: node:10.21.0
image: node:10
volumes:
- .:/app
working_dir: /app
extends:
file: docker-compose-config.yml
service: dev
environment:
ELASTIC_SEARCH_DSN: es:9200
REDIS_HOST: redis
MONGO_HOST: mongo
POSTGRES_HOST: postgres
GCS_API_ENDPOINT: gcs:9090
GCS_API_SCHEME: http
GCS_PROJECT_ID: fake
STORAGE_EMULATOR_HOST: http://gcs:9090/storage/v1
MOCHA_GREP: ${MOCHA_GREP}
LOG_LEVEL: ERROR
NODE_ENV: test
@ -36,8 +37,14 @@ services:
depends_on:
mongo:
condition: service_healthy
gcs:
condition: service_healthy
command: npm run test:acceptance
mongo:
image: mongo:3.6
gcs:
build:
context: test/acceptance/deps
dockerfile: Dockerfile.fake-gcs

View file

@ -0,0 +1,5 @@
FROM fsouza/fake-gcs-server:latest
RUN apk add --update --no-cache curl
COPY healthcheck.sh /healthcheck.sh
HEALTHCHECK --interval=1s --timeout=1s --retries=30 CMD /healthcheck.sh http://localhost:9090
CMD ["--port=9090", "--scheme=http"]

View file

@ -0,0 +1,9 @@
#!/bin/sh
# health check to allow 404 status code as valid
STATUSCODE=$(curl --silent --output /dev/null --write-out "%{http_code}" $1)
# will be 000 on non-http error (e.g. connection failure)
if test $STATUSCODE -ge 500 || test $STATUSCODE -lt 200; then
exit 1
fi
exit 0