services: codeception_acceptance: image: mailpoet/wordpress:${CODECEPTION_IMAGE_VERSION:-8.0-cli_20220605.0} depends_on: - smtp - wordpress - chrome volumes: - wp-core:/wp-core - mailhog-data:/mailhog-data - ../../mailpoet:/project - ../../mailpoet:/wp-core/wp-content/plugins/mailpoet - ../../mailpoet-premium:/project/mailpoet-premium - ../../mailpoet-premium:/wp-core/wp-content/plugins/mailpoet-premium - ../../packages:/wp-core/wp-content/plugins/packages - ./codeception/docker-entrypoint.sh:/docker-entrypoint.sh - ../../dev/php.ini:/usr/local/etc/php/conf.d/php_user.ini - ../../dev/xdebug.ini:/usr/local/etc/php/conf.d/xdebug.ini entrypoint: /docker-entrypoint.sh environment: WP_ROOT: /wp-core WP_ROOT_MULTISITE: /wp-core WP_TEST_MULTISITE_SLUG: php7_multisite HTTP_HOST: test.local WORDPRESS_DB_PASSWORD: wordpress WORDPRESS_DB_USER: wordpress WORDPRESS_DB_NAME: wordpress WORDPRESS_TABLE_PREFIX: mp_ TEST_TYPE: acceptance PHP_IDE_CONFIG: 'serverName=MailPoetTest' codeception_integration: image: mailpoet/wordpress:${CODECEPTION_IMAGE_VERSION:-8.0-cli_20220605.0} depends_on: - smtp - wordpress volumes: - wp-core:/wp-core - mailhog-data:/mailhog-data - ../../mailpoet:/project - ../../mailpoet:/wp-core/wp-content/plugins/mailpoet - ../../mailpoet-premium:/project/mailpoet-premium - ../../mailpoet-premium:/wp-core/wp-content/plugins/mailpoet-premium - ../../packages:/wp-core/wp-content/plugins/packages - ./codeception/docker-entrypoint.sh:/docker-entrypoint.sh - ../../dev/php.ini:/usr/local/etc/php/conf.d/php_user.ini - ../../dev/xdebug.ini:/usr/local/etc/php/conf.d/xdebug.ini entrypoint: /docker-entrypoint.sh environment: WP_ROOT: /wp-core WP_ROOT_MULTISITE: /wp-core WP_TEST_MULTISITE_SLUG: php7_multisite HTTP_HOST: test.local WORDPRESS_DB_PASSWORD: wordpress WORDPRESS_DB_USER: wordpress WORDPRESS_DB_NAME: wordpress WORDPRESS_TABLE_PREFIX: mp_ TEST_TYPE: integration PHP_IDE_CONFIG: 'serverName=MailPoetTest' smtp: image: mailhog/mailhog:v1.0.0 container_name: mailhog_${CIRCLE_NODE_INDEX:-default} hostname: mailhog ports: - 1025:1025 - 8025:8025 user: ${UID:-1000}:${GID:-1000} environment: MH_STORAGE: maildir MH_MAILDIR_PATH: /mailhog-data volumes: - mailhog-data:/mailhog-data wordpress: image: wordpress:${WORDPRESS_IMAGE_VERSION:-6.6.2-php8.3} container_name: wordpress_${CIRCLE_NODE_INDEX:-default} depends_on: smtp: condition: service_started mysql: condition: service_healthy volumes: - wp-core:/var/www/html - ../../mailpoet:/project - ../../mailpoet:/var/www/html/wp-content/plugins/mailpoet - ../../packages:/var/www/html/wp-content/plugins/packages - ../../mailpoet-premium:/project/mailpoet-premium - ../../mailpoet-premium:/var/www/html/wp-content/plugins/mailpoet-premium tmpfs: - /var/www/html/wp-content/uploads/mailpoet/ ports: - 8080:80 environment: WORDPRESS_DB_PASSWORD: wordpress WORDPRESS_DB_USER: wordpress WORDPRESS_DB_NAME: wordpress WORDPRESS_TABLE_PREFIX: mp_ MAILPOET_TRACY_PRODUCTION_MODE: 1 MAILPOET_TRACY_LOG_DIR: /var/www/html/wp-content/plugins/mailpoet/tests/_output/exceptions command: ['docker-entrypoint.sh', 'apache2-foreground'] networks: default: aliases: - test.local mysql: image: ${MYSQL_IMAGE:-cimg/mysql:5.7.38} container_name: mysql_${CIRCLE_NODE_INDEX:-default} # Command used for MySQL 8+ because it needs default-authentication-plugin # parameter and there needs to be some fallback for other MySQL versions. # --verbose can be changed to any other useless parameter command: ${MYSQL_COMMAND:---verbose --sql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,ANSI,ONLY_FULL_GROUP_BY} environment: MYSQL_ROOT_PASSWORD: wordpress MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress tmpfs: - /dev/shm - /var/lib/mysql:rw ports: - 4401:3306 healthcheck: test: ['CMD-SHELL', 'mysqladmin ping -hmysql --silent'] interval: 2s timeout: 30s retries: 10 chrome: container_name: chrome_${CIRCLE_NODE_INDEX:-default} environment: - DBUS_SESSION_BUS_ADDRESS=/dev/null tmpfs: - /dev/shm image: selenium/standalone-chrome:107.0-20221104 ports: - 4444 - 5900:5900 volumes: wp-core: mailhog-data: networks: default: