Implements automatic creation of required plugin pages (Community Login, Trainer Registration, Trainer Dashboard) upon plugin activation. This addresses E2E test failures caused by missing pages in the test environment. - Adds activation hook in `hvac-community-events.php` to call `hvac_ce_create_required_pages`. - The callback function checks for existing pages by slug and creates them using `wp_insert_post` if missing. Includes debug logging. Also fixes issues identified during E2E test debugging: - Corrects fatal error in `includes/community/class-login-handler.php` by replacing undefined constant `HVAC_COMMUNITY_EVENTS_PATH` with `HVAC_CE_PLUGIN_DIR`. - Updates `tests/e2e/tests/login.spec.ts` to use the correct selector `#wp-submit` for the login form submit button instead of `button[type="submit"]`. Documentation updates: - Adds `docs/automatic-page-creation-plan.md`. - Updates `README.md` regarding automatic page creation. - Updates Memory Bank files (`decisionLog.md`, `progress.md`, `activeContext.md`). Note: Activation hook logging did not appear during WP-CLI activation, requiring further investigation if page creation issues persist. E2E test confirmation pending.
65 lines
No EOL
1.8 KiB
YAML
65 lines
No EOL
1.8 KiB
YAML
services:
|
|
db:
|
|
image: mariadb:10.5
|
|
platform: linux/arm64/v8
|
|
volumes:
|
|
- db_data:/var/lib/mysql
|
|
restart: always
|
|
environment:
|
|
- MYSQL_ROOT_PASSWORD=${DEV_DB_ROOT_PASSWORD}
|
|
- MYSQL_DATABASE=${DEV_DB_NAME}
|
|
- MYSQL_USER=${DEV_DB_USER}
|
|
- MYSQL_PASSWORD=${DEV_DB_PASSWORD}
|
|
ports:
|
|
- "3306:3306"
|
|
|
|
wordpress:
|
|
depends_on:
|
|
- db
|
|
image: wordpress:6.7.2-php8.1-fpm
|
|
platform: linux/arm64/v8
|
|
volumes:
|
|
- ./wordpress:/var/www/html
|
|
- ./vendor:/var/www/html/vendor # Removed :cached
|
|
- ./tests:/var/www/html/tests:cached
|
|
- ./phpunit.xml.dist:/var/www/html/phpunit.xml.dist:cached
|
|
- ./wp-tests-config.php:/var/www/html/wp-tests-config.php:cached # Mount the correct test config
|
|
- ./bin/wp-cli.phar:/usr/local/bin/wp # Mount WP-CLI phar directly
|
|
- ./php.ini/custom.ini:/usr/local/etc/php/conf.d/custom.ini # Corrected mount: file to file
|
|
- ./php-fpm.conf:/usr/local/etc/php-fpm.d/www.conf
|
|
restart: always
|
|
environment:
|
|
- WORDPRESS_DB_HOST=db
|
|
- WORDPRESS_DB_USER=${DEV_DB_USER}
|
|
- WORDPRESS_DB_PASSWORD=${DEV_DB_PASSWORD}
|
|
- WORDPRESS_DB_NAME=${DEV_DB_NAME}
|
|
- WORDPRESS_DEBUG=1
|
|
|
|
nginx:
|
|
depends_on:
|
|
- wordpress
|
|
image: nginx:alpine
|
|
platform: linux/arm64/v8
|
|
ports:
|
|
- "${WORDPRESS_PORT}:80"
|
|
- "${WORDPRESS_SSL_PORT}:443"
|
|
volumes:
|
|
- ./wordpress:/var/www/html
|
|
- ./nginx-conf:/etc/nginx/conf.d
|
|
- ./ssl:/etc/nginx/ssl
|
|
restart: always
|
|
|
|
phpmyadmin:
|
|
depends_on:
|
|
- db
|
|
image: arm64v8/phpmyadmin:latest
|
|
restart: always
|
|
ports:
|
|
- "${PHPMYADMIN_PORT}:80"
|
|
environment:
|
|
- PMA_HOST=db
|
|
- MYSQL_ROOT_PASSWORD=${DEV_DB_ROOT_PASSWORD}
|
|
|
|
volumes:
|
|
db_data:
|
|
wordpress_data: |