I'm blogging about Emacs, Drupal, php and exciting subjects

· Lars Nielsen

Environment Variables Not Reaching PHP in GitHub Actions: setup-php, variables_order and php -S

When I moved CaRMen's Playwright tests into GitHub Actions, every login test failed. Partway through each test, the login page redirected to the first-run installer, as if the database were empty. It wasn't. The PHP backend wasn't looking at the database the job had set up at all, because it never saw the environment variables that pointed to it.

Read article Environment Variables Not Reaching PHP in GitHub Actions: setup-php, variables_order and php -S
· Lars Nielsen

Four Rounds of Hand-Editing a MySQL Migration Before SQLite Would Run It

The very first Doctrine migration in CaRMen's history — the one that creates the user and messenger_messages tables — was auto-generated against MySQL and never meant to run anywhere else. For a stretch of 2025 it had to run against SQLite too, because the test suite used SQLite while the actual migrations were written for MySQL.

Read article Four Rounds of Hand-Editing a MySQL Migration Before SQLite Would Run It
· Lars Nielsen

A Deliberate, Documented CPU Tradeoff That Turned Out Backwards

A CPU isolation setting sat unchanged for weeks, explicitly documented as deliberately left alone to avoid destabilizing a live system. When it finally got measured instead of just trusted, the setting turned out to be backwards — giving unrestricted access to the exact processes it was supposed to be isolated from, while pinning the processes causing the contention to almost nothing.

Read article A Deliberate, Documented CPU Tradeoff That Turned Out Backwards
Subscribe to Linkhub