Repository navigation
Conversation
Adds a docker compose setup for working on the plugin locally: WordPress (with Xdebug) with the repo mounted as the plugin, MariaDB, a cron runner so syncs happen outside web requests, a WP-CLI service, optional phpMyAdmin, and a PHPUnit runner that can reproduce any of the CI PHP/WordPress version combinations. A Makefile wraps common tasks and the dev site is pre-configured to sync from rays-house.cablecast.net. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Use MariaDB 11.8: WP-CLI's MariaDB client requires TLS, which 11.4+ servers enable automatically (wp db commands failed on 10.11). - Point apt at archive.debian.org for bullseye-based PHP 7.4/8.0 test images, since bullseye is EOL. - Drop --hard from the permalink setup; the wordpress image already ships a rewrite-ready .htaccess and WP-CLI warned it couldn't write one. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
WordPress now derives its URL from the request host (honoring X-Forwarded-Proto), so it works at localhost and behind a proxy without redirecting. Adds make tailscale / tailscale-off to share the site on the tailnet over HTTPS. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a Docker Compose setup for working on the plugin locally. No PHP, Composer, or WordPress install is needed on the host.
make up): WordPress (PHP 8.2 + Xdebug) with the repo mounted as the plugin, MariaDB 11.8, pre-installed withadmin/admin, pretty permalinks, and the plugin activated and pointed athttps://rays-house.cablecast.net.DISABLE_WP_CRONis on and acroncontainer runs due events every minute, as the README recommends for production, so syncs don't happen during page loads.make test,make test PHP=7.4 WP=6.2,make test-matrix): a PHPUnit container that reusesbin/install-wp-tests.shand can run any of the CI PHP × WordPress combinations. WordPress test suites are cached per version in a volume.make sync,make wp ARGS=…,make debug-log, phpMyAdmin (make tools),.vscode/launch.jsonfor Xdebug, andmake tailscaleto share the site on a tailnet over HTTPS via Tailscale Serve. WordPress uses the request host as its URL, so it also works behind proxies..env.examplecovers ports, PHP version, Cablecast server and Xdebug mode..envis gitignored.Notes
archive.debian.org.Testing
make upon macOS (Docker Desktop, Apple silicon): the site loads, wp-admin login works, andmake syncimported 304 shows, 5 channels, and 412 schedule items from rays-house.make test-matrix: all 12 combinations (PHP 7.4/8.0/8.1/8.2 × WP 6.2/6.4/latest) pass, 123 tests each.Not addressed here
includes/cron.php: thecablecast-5-minutesschedule is actually 60 seconds.trim(): Passing nullinwp-includes/taxonomy.php), probably from the plugin passing an empty term name.🤖 Generated with Claude Code