Featured CI & testing
Magento 2 & Mage-OS Compatibility Matrix: magento.works
Magento 2 and Mage-OS compatibility matrix from 4,057 real Docker installs: which PHP, MySQL, MariaDB, OpenSearch and Redis versions each release runs on.
CI runners, preview environments, self-hosting and observability. The platform work behind keeping agency ecommerce stores shipping.
The official ways to scale self-hosted CI runners assume Kubernetes, so I built GitHub and Bitbucket runner images that scale on a plain Docker host. The error and CSP reporting our client stores send would cost over $2,700 a month on sentry.io, so we self-host Sentry on a £30 server instead, and I wrote up what broke along the way.
Shared staging was the bottleneck in code review, so every pull request now gets its own preview environment: a full Magento stack seeded with anonymised production data, live in about five minutes and torn down on merge. QA and clients test the real change, not screenshots of it.
Magento is where most of it runs, so the Magento-specific side lives on the Magento DevOps hub. This page covers the parts that apply to any stack.
Platform and delivery work from agency projects.
A centralised backup system spanning all managed Magento stores — automated snapshots, tiered cold storage, integrity verification on every backup, and a sanitised developer data pipeline that provides realistic local data without handling real customer PII.
A shared Playwright test framework with per-store override layers — core checkout, account, and catalogue suites inherited by every client store on day one, with store-specific extensions layered on top.
CI pipelines gating on APM performance regression, Core Web Vitals delta, security scanning, static analysis, E2E tests, and peer review — nothing reaches production without passing every gate.
On-demand per-PR Magento environments provisioned automatically on pull request open, seeded with anonymised production data, and torn down on merge — giving every code review a live working environment to test against.
Designed a flexible Magento hosting platform with support for high availability, autoscaling, and enterprise-grade performance at a fraction of the cost of enterprise hosting providers
Multiple full-stack migrations from legacy single-server and cPanel hosting to modern containerised multi-service architectures — zero-downtime DNS cutover, incremental data sync, and post-migration monitoring with warm standby rollback capability.
Replaced SaaS subscriptions for error tracking, log aggregation, VPN, and CI runner capacity with self-hosted equivalents — maintaining full observability and security posture at a fraction of the equivalent SaaS cost.
Replaced manual SSH-based Magento deployments with a fully automated pipeline — pre-deploy validation, symlink-based atomic cutover, and automatic rollback on health check failure — achieving zero deployment-window downtime.
Open-source infrastructure and CI tooling.
Featured CI & testing
Magento 2 and Mage-OS compatibility matrix from 4,057 real Docker installs: which PHP, MySQL, MariaDB, OpenSearch and Redis versions each release runs on.
CI & testing
Reusable GitHub Actions workflows for Magento 2 and Mage-OS modules: Composer validation, PHP lint, PHPCS, PHPStan and PHPUnit across a shared list of supported releases.
Featured CI & testing
Signed Docker images with Magento 2.4.2 to 2.4.9 and Mage-OS pre-installed across PHP 7.4 to 8.5, for fast Magento module and project CI pipelines.
Infrastructure
Docker images that register a self-hosted GitHub Actions or Bitbucket Pipelines runner on start and remove it on shutdown, scaled with Docker Compose or Swarm.
Infrastructure
Self-hosted Sentry: 9 to 11 million events a month on a £30 dedicated server, against about $2,700 a month on sentry.io.
Write-ups on CI, deploys, infrastructure and monitoring.
An open source Playwright end to end testing suite for Magento 2.4.7 to 2.4.9 and Mage-OS, with Luma and Hyvä supported out of the box, adapted to a store through five JSON config files instead of a per-client fork.
m2-meta-security-patches now applies patches through samjuk/magento-patch-installer instead of vaimo/composer-patches. Two config lines, one composer update, and it coexists with vaimo or cweagans.
Adobe shipped two Magento 2 security patches a day apart — the StyleSmuggler emergency fix (VULN-39341 / APSB26-146) and September's routine isolated patch (2026-09-001 / APSB26-138). Both are now wired into m2-meta-security-patches.
APSB26-92 is Adobe Commerce's August 2026 isolated security patch, stacking on top of July's. Here's what's in it, WAF rules for the account takeover, the July packaging problems now fixed properly, and a vaimo/composer-patches bug that silently reverts your patches.
APSB26-73 is Adobe Commerce's July 2026 isolated security patch, covering 2.4.6-p15, 2.4.7-p10, 2.4.8-p5 and 2.4.9. Here's what's in it, the non-cumulative gotcha that trips people up, and the fastest way to apply it.
AI is a force multiplier for Magento development — but it multiplies whatever processes you already have. Here's the operational stack your team needs before leaning heavily into AI-generated output.
The sequel to CopyFail: DirtyFrag extends the CVE-2026-31431 exploit chain to container escape. Covers the new attack surface, detection, and mitigations beyond the algif_aead workaround.
CVE-2026-31431 is a Linux kernel local privilege escalation via algif_aead. Covers exploit mechanics, detection, the algif_aead mitigation, and patch status across Ubuntu, Fedora, Debian, RHEL, and more.
How GitHub accidentally leaked webhook secrets via an erroneous HTTP header, what data was exposed, and the exact steps to rotate your secrets now.
Reference guides for pipelines, automation and self-hosted services.
Pipeline structure and automation
Artifact and environment cleanup, SSH config, Dependabot
Pipeline configuration and Renovate
Provisioning and patching playbooks
Cloudflare and infrastructure as code
New Relic usage and alerting
Running Sentry on your own hardware
Reclaiming disk from a self-hosted Sentry install
Docker and OrbStack notes
I build and run the platform side of agency ecommerce from Cardiff: CI, deploys, hosting, backups and monitoring. Always happy to compare notes with other engineers doing the same.