docker-compose.ci.yml 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. # This file was auto-generated, do not edit it directly.
  2. # Instead run bin/update_build_scripts from
  3. # https://github.com/overleaf/internal/
  4. version: "2.3"
  5. services:
  6. test_unit:
  7. image: ci/$PROJECT_NAME:$BRANCH_NAME-$BUILD_NUMBER
  8. user: node
  9. command: npm run test:unit:_run
  10. environment:
  11. NODE_ENV: test
  12. NODE_OPTIONS: "--unhandled-rejections=strict"
  13. test_acceptance:
  14. build: .
  15. image: ci/$PROJECT_NAME:$BRANCH_NAME-$BUILD_NUMBER
  16. environment:
  17. ELASTIC_SEARCH_DSN: es:9200
  18. REDIS_HOST: redis
  19. QUEUES_REDIS_HOST: redis
  20. HISTORY_REDIS_HOST: redis
  21. ANALYTICS_QUEUES_REDIS_HOST: redis
  22. MONGO_HOST: mongo
  23. POSTGRES_HOST: postgres
  24. MOCHA_GREP: ${MOCHA_GREP}
  25. NODE_ENV: test
  26. NODE_OPTIONS: "--unhandled-rejections=strict"
  27. volumes:
  28. - ../../bin/shared/wait_for_it:/overleaf/bin/shared/wait_for_it
  29. depends_on:
  30. mongo:
  31. condition: service_started
  32. redis:
  33. condition: service_healthy
  34. user: node
  35. entrypoint: /overleaf/bin/shared/wait_for_it mongo:27017 --timeout=0 --
  36. command: npm run test:acceptance
  37. tar:
  38. build: .
  39. image: ci/$PROJECT_NAME:$BRANCH_NAME-$BUILD_NUMBER
  40. volumes:
  41. - ./:/tmp/build/
  42. command: tar -czf /tmp/build/build.tar.gz --exclude=build.tar.gz --exclude-vcs .
  43. user: root
  44. redis:
  45. image: redis:7.4.3
  46. healthcheck:
  47. test: ping="$$(redis-cli ping)" && [ "$$ping" = 'PONG' ]
  48. interval: 1s
  49. retries: 20
  50. mongo:
  51. image: mongo:7.0.20
  52. command: --replSet overleaf
  53. volumes:
  54. - ../../bin/shared/mongodb-init-replica-set.js:/docker-entrypoint-initdb.d/mongodb-init-replica-set.js
  55. environment:
  56. MONGO_INITDB_DATABASE: sharelatex
  57. extra_hosts:
  58. # Required when using the automatic database setup for initializing the
  59. # replica set. This override is not needed when running the setup after
  60. # starting up mongo.
  61. - mongo:127.0.0.1