Shift with red gradient lettering

CI Generator

The CI Generator intelligently configures CI workflows for your Laravel or PHP projects on GitHub, Bitbucket, or GitLab.

Shift reviews your Composer dependencies and project files to create jobs for linting PHP, checking code syntax, and running tests. Shift builds a common PHP environment with extensions and services making it easy to adjust.

After running the CI Generator these workflows will automatically run any time a PR is opened - giving you even more confidence when merging changes in future Shifts.

Using the CI Generator to automatically configure your CI workflow has an estimated time savings of 2 hours.

Screenshot of a pull request with atomic commits for each change of the CI Generator

Watch a demo

Requirements

  • A Laravel or PHP application
  • Running PHP 7.3 or higher

Workflows

The CI Generator generates workflows with the following configuration:

  • Creates a common build environment.
  • Configures PHP versions and extensions matching your requirements.
  • Installs an instance of MySQL 8.0.
  • Caches Composer dependencies for faster builds.
  • Uses optional COMPOSER_AUTH variable to install private packages.
  • Creates a job for checking PHP files for syntax errors.
  • Adds a step for checking code style when PHP CS Fixer or PHP CodeSniffer configuration is present.
  • Creates a job for running PHPUnit or Pest tests.
  • Creates a job for running Laravel Dusk tests when laravel/dusk dependency is present.

Manual Steps

Shift configures the CI environment based on your project dependencies and files. You may need to adjust or add configuration based on any additional requirements of your project.

Sign in with any of the following services to connect Shift with your Laravel project.


Don't use one of these services?

Temporarily push your project to a free, private repository on one of these cloud-based services or upgrade your project locally with Shift for Docker.