mirror of
https://github.com/overleaf/overleaf.git
synced 2024-11-07 20:31:06 -05:00
8eb8b233c0
[server-ce] e2e tests: add capability for reconfiguring the instance GitOrigin-RevId: 44ec800b5b37497b3122310a94f637c24ff2667a
99 lines
2.7 KiB
YAML
99 lines
2.7 KiB
YAML
version: '2.2'
|
|
services:
|
|
sharelatex:
|
|
image: ${IMAGE_TAG_CE:-sharelatex/sharelatex:latest}
|
|
# TODO(das7pad): increase timeout after speeding up the graceful shutdown procedure
|
|
# stop_grace_period: 60s
|
|
stop_grace_period: 0s
|
|
depends_on:
|
|
mongo:
|
|
condition: service_healthy
|
|
redis:
|
|
condition: service_started
|
|
host-admin:
|
|
# The host-admin service initiates the mongo replica set
|
|
condition: service_healthy
|
|
environment:
|
|
OVERLEAF_APP_NAME: Overleaf Community Edition
|
|
OVERLEAF_MONGO_URL: mongodb://mongo/sharelatex?directConnection=true
|
|
OVERLEAF_REDIS_HOST: redis
|
|
REDIS_HOST: redis
|
|
ENABLED_LINKED_FILE_TYPES: 'project_file,project_output_file'
|
|
ENABLE_CONVERSIONS: 'true'
|
|
EMAIL_CONFIRMATION_DISABLED: 'true'
|
|
healthcheck:
|
|
test: curl --fail http://localhost:3000/status || exit 1
|
|
interval: 3s
|
|
timeout: 10s
|
|
retries: 10
|
|
|
|
mongo:
|
|
image: mongo:5.0.17
|
|
command: '--replSet overleaf'
|
|
healthcheck:
|
|
test: echo 'db.stats().ok' | mongo localhost:27017/test --quiet
|
|
interval: 10s
|
|
timeout: 10s
|
|
retries: 5
|
|
|
|
redis:
|
|
image: redis:7.2.1
|
|
|
|
e2e:
|
|
image: cypress/included:13.6.6
|
|
stop_grace_period: 0s
|
|
entrypoint: npm
|
|
command: run cypress:run
|
|
working_dir: /e2e
|
|
volumes:
|
|
- ./:/e2e
|
|
environment:
|
|
CYPRESS_BASE_URL: http://sharelatex
|
|
SPEC_PATTERN: '**/*.spec.{js,jsx,ts,tsx}'
|
|
depends_on:
|
|
sharelatex:
|
|
condition: service_healthy
|
|
host-admin:
|
|
condition: service_healthy
|
|
|
|
e2e-open:
|
|
image: cypress/included:13.6.6
|
|
stop_grace_period: 0s
|
|
entrypoint: npm
|
|
command: run cypress:open
|
|
working_dir: /e2e
|
|
volumes:
|
|
- ./:/e2e
|
|
- /tmp/.X11-unix:/tmp/.X11-unix
|
|
user: "${DOCKER_USER:-1000:1000}"
|
|
environment:
|
|
CYPRESS_BASE_URL: http://sharelatex
|
|
SPEC_PATTERN: '**/*.spec.{js,jsx,ts,tsx}'
|
|
DISPLAY: ${DISPLAY:-:0}
|
|
depends_on:
|
|
sharelatex:
|
|
condition: service_healthy
|
|
host-admin:
|
|
condition: service_healthy
|
|
|
|
host-admin:
|
|
build: .
|
|
entrypoint: ["node", "--watch", "host-admin.js"]
|
|
# See comment in Makefile regarding matching file paths
|
|
working_dir: $PWD
|
|
volumes:
|
|
- $PWD:$PWD
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
stop_grace_period: 0s
|
|
environment:
|
|
PWD:
|
|
IMAGE_TAG_CE: ${IMAGE_TAG_CE:-sharelatex/sharelatex:latest}
|
|
IMAGE_TAG_PRO: ${IMAGE_TAG_PRO:-quay.io/sharelatex/sharelatex-pro:latest}
|
|
depends_on:
|
|
mongo:
|
|
condition: service_healthy
|
|
healthcheck:
|
|
test: curl --fail http://localhost/status || exit 1
|
|
interval: 3s
|
|
timeout: 10s
|
|
retries: 10
|