Plugin Testing

  • drop_in_workflow:
    • copy plugin into bind mount: sudo cp -r /path/to/my-plugin wp/wp-content/plugins/
    • activate: sudo docker compose run --rm wpcli wp plugin activate my-plugin
  • install_from_registry:
    • sudo docker compose run --rm wpcli wp plugin install <slug> --activate
  • common_wpcli:
    • list: sudo docker compose run --rm wpcli wp plugin list
    • deactivate: sudo docker compose run --rm wpcli wp plugin deactivate my-plugin
    • delete: sudo docker compose run --rm wpcli wp plugin delete my-plugin
    • status: sudo docker compose run --rm wpcli wp plugin status my-plugin
  • debugging:
    • WP_DEBUG + WP_DEBUG_LOG enabled (display off)
    • log: sudo tail -f wp/wp-content/debug.log
    • file editing allowed in admin (DISALLOW_FILE_EDIT false)
  • isolation_guarantees:
    • throwaway db + core; full reset via down -v + rm -rf wp db_data
    • db not exposed to host; app reachable only through nginx + loopback