services.yml 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. .variables_es: &variables_es
  2. variables:
  3. ES_INDEX_RAND: 'true'
  4. ES_URL: 'http://elasticsearch:9200'
  5. ELASTICSEARCH_TAG: '7.16'
  6. .variables_redis_memcached: &variables_redis_memcached
  7. variables:
  8. REDIS_URL: 'redis://redis:6379'
  9. MEMCACHE_SERVERS: 'memcached'
  10. .variables_selenium_firefox: &variables_selenium_firefox
  11. variables:
  12. REMOTE_URL: 'http://selenium-firefox:4444/wd/hub'
  13. BROWSER: 'firefox'
  14. BROWSER_HEADLESS: 'true'
  15. START_XVFB: 'false' # not needed for headless mode
  16. SE_NODE_MAX_SESSIONS: '5'
  17. SE_NODE_OVERRIDE_MAX_SESSIONS: 'true'
  18. SE_OPTS: '--log /builds/selenium.log'
  19. .variables_selenium_chrome: &variables_selenium_chrome
  20. variables:
  21. REMOTE_URL: 'http://selenium-chrome:4444/wd/hub'
  22. BROWSER: chrome
  23. BROWSER_HEADLESS: 'true'
  24. START_XVFB: 'false' # not needed for headless mode
  25. SE_NODE_MAX_SESSIONS: '5'
  26. SE_NODE_OVERRIDE_MAX_SESSIONS: 'true'
  27. SE_OPTS: '--log /builds/selenium.log'
  28. CHROME_LOG_FILE: '/builds/chrome.log'
  29. # DB Docker
  30. .docker_mysql: &docker_mysql
  31. name: $CI_REGISTRY/docker/zammad-mysql:stable
  32. alias: mysql
  33. .docker_postgresql: &docker_postgresql
  34. name: $CI_REGISTRY/docker/zammad-postgresql:stable
  35. alias: postgresql
  36. .docker_elasticsearch: &docker_elasticsearch
  37. name: $CI_REGISTRY/docker/zammad-elasticsearch:$ELASTICSEARCH_TAG
  38. alias: elasticsearch
  39. .docker_selenium_chrome: &docker_selenium_chrome
  40. name: $CI_REGISTRY/docker/zammad-selenium-chrome:stable
  41. alias: selenium-chrome
  42. .docker_selenium_firefox: &docker_selenium_firefox
  43. name: $CI_REGISTRY/docker/zammad-selenium-firefox:stable
  44. alias: selenium-firefox
  45. .docker_imap: &docker_imap
  46. name: $CI_REGISTRY/docker/zammad-imap:stable
  47. alias: mail
  48. .docker_redis: &docker_redis
  49. name: $CI_REGISTRY/docker/zammad-redis:stable
  50. alias: redis
  51. .docker_memcached: &docker_memcached
  52. name: $CI_REGISTRY/docker/zammad-memcached:stable
  53. alias: memcached
  54. command: ['memcached', '-m', '256M']
  55. # service templates
  56. .services_mysql:
  57. services:
  58. - <<: *docker_mysql
  59. .services_mysql_redis_memcached:
  60. extends:
  61. - .variables_redis_memcached
  62. services:
  63. - <<: *docker_mysql
  64. - <<: *docker_redis
  65. - <<: *docker_memcached
  66. .services_postgresql:
  67. services:
  68. - <<: *docker_postgresql
  69. .services_postgresql_redis_memcached:
  70. extends:
  71. - .variables_redis_memcached
  72. services:
  73. - <<: *docker_postgresql
  74. - <<: *docker_redis
  75. - <<: *docker_memcached
  76. .services_mysql_postgresql_redis_memcached:
  77. extends:
  78. - .variables_redis_memcached
  79. services:
  80. - <<: *docker_mysql
  81. - <<: *docker_postgresql
  82. - <<: *docker_redis
  83. - <<: *docker_memcached
  84. .services_postgresql_selenium_chrome:
  85. extends:
  86. - .variables_selenium_chrome
  87. services:
  88. - <<: *docker_postgresql
  89. - <<: *docker_selenium_chrome
  90. .services_postgresql_selenium_firefox:
  91. extends:
  92. - .variables_selenium_firefox
  93. services:
  94. - <<: *docker_postgresql
  95. - <<: *docker_selenium_firefox
  96. .services_mysql_postgresql_imap_redis_memcached:
  97. extends:
  98. - .variables_redis_memcached
  99. services:
  100. - <<: *docker_mysql
  101. - <<: *docker_postgresql
  102. - <<: *docker_imap
  103. - <<: *docker_redis
  104. - <<: *docker_memcached
  105. .services_mysql_postgresql_elasticsearch:
  106. services:
  107. - <<: *docker_mysql
  108. - <<: *docker_postgresql
  109. - <<: *docker_elasticsearch
  110. .services_mysql_postgresql_redis_memcached_elasticsearch:
  111. extends:
  112. - .variables_redis_memcached
  113. services:
  114. - <<: *docker_mysql
  115. - <<: *docker_postgresql
  116. - <<: *docker_redis
  117. - <<: *docker_memcached
  118. - <<: *docker_elasticsearch
  119. .services_mysql_postgresql_elasticsearch_selenium_chrome_imap:
  120. extends:
  121. - .variables_selenium_chrome
  122. services:
  123. - <<: *docker_mysql
  124. - <<: *docker_postgresql
  125. - <<: *docker_elasticsearch
  126. - <<: *docker_selenium_chrome
  127. - <<: *docker_imap
  128. .services_mysql_postgresql_elasticsearch_selenium_firefox_imap:
  129. extends:
  130. - .variables_selenium_firefox
  131. services:
  132. - <<: *docker_mysql
  133. - <<: *docker_postgresql
  134. - <<: *docker_elasticsearch
  135. - <<: *docker_selenium_firefox
  136. - <<: *docker_imap
  137. .services_mysql_postgresql_elasticsearch_selenium_chrome_imap_redis_memcached:
  138. extends:
  139. - .variables_selenium_chrome
  140. - .variables_redis_memcached
  141. services:
  142. - <<: *docker_mysql
  143. - <<: *docker_postgresql
  144. - <<: *docker_elasticsearch
  145. - <<: *docker_selenium_chrome
  146. - <<: *docker_imap
  147. - <<: *docker_redis
  148. - <<: *docker_memcached
  149. .services_mysql_postgresql_elasticsearch_selenium_firefox_imap_redis_memcached:
  150. extends:
  151. - .variables_selenium_firefox
  152. - .variables_redis_memcached
  153. services:
  154. - <<: *docker_mysql
  155. - <<: *docker_postgresql
  156. - <<: *docker_elasticsearch
  157. - <<: *docker_selenium_firefox
  158. - <<: *docker_imap
  159. - <<: *docker_redis
  160. - <<: *docker_memcached