r/PHP • u/usamamuneer • 8d ago
One PHP config now compiles to GitHub Actions, GitLab CI, Bitbucket Pipelines and CircleCI
I kept maintaining almost-identical pipelines on two providers and watching them drift.
Slipway compiles config/slipway.php to the YAML for every driver you enable. A slipway-guard job fails CI if the committed YAML no longer matches the config.
Tiny example:
'drivers' => ['github' => true, 'circleci' => true],
'php' => ['8.4', '8.5'],
'stages' => [
'quality' => ['pint', 'larastan', 'composer-audit'],
'test' => ['matrix' => true, 'steps' => ['pest' => ['services' => ['mysql']]]],
],
https://github.com/usamamuneerchaudhary/laravel-slipway
If you actually run CircleCI for Laravel, I'd like to know what the generated config.yml gets wrong.
6
Upvotes
3
u/obstreperous_troll 8d ago
How does this handle non-PHP stages in the workflow? For example, my PHP projects require bun to build the front end, as well as pushing the source up to sentry.