symplify/easy-ci

Toolkit of commands that should not be missed in you CI

Maintainers

Details

github.com/symplify/easy-ci

Source

Installs: 854 879

Dependents: 55

Suggesters: 0

Security: 0

Stars: 16

Watchers: 2

Forks: 2

11.2.0.72 2023-01-15 13:26 UTC

This package is auto-updated.

Last update: 2023-03-15 13:49:50 UTC


README

Downloads total

Tools that make easy to setup CI.

  • Check git conflicts in CI
  • Check TWIG templates for missing classes, non-existing static calls and constant fetches
  • Check YAML configs for the same

Install

composer require symplify/easy-ci --dev

Usage

1. Check your Code for Git Merge Conflicts

Do you use Git? Then merge conflicts is not what you want in your code ever to see:

<<<<<<< HEAD
this is some content to mess with
content to append
=======
totally different content to merge later

How to avoid it? Add check to your CI:

vendor/bin/easy-ci check-conflicts .

The /vendor directory is excluded by default.


2. Check Configs for Non-Existing Classes

vendor/bin/easy-ci check-config src

Supported types are YAML.


3. Check Twig Controller Paths

vendor/bin/easy-ci check-twig-render src/Controller
final class SomeController
{
    public function index()
    {
        return $this->render('does_path_exist.twig');
    }
}

4. Detect Static Calls in Your Code

vendor/bin/easy-ci detect-static src

5. Detect Commented Code

Have you ever forgot commented code in your code?

//      foreach ($matches as $match) {
//           $content = str_replace($match[0], $match[2], $content);
//      }

Clutter no more! Add check-commented-code command to your CI and don't worry about it:

vendor/bin/easy-ci check-commented-code <directory>
vendor/bin/easy-ci check-commented-code packages --line-limit 5

6. Short File === Class Name

Does short file name matches the class name?

vendor/bin/easy-ci check-file-class-name src

7. Avoid 2 classes in 1 File

What files have 2 and more classes?

vendor/bin/easy-ci find-multi-classes tests

Report Issues

In case you are experiencing a bug or want to request a new feature head over to the Symplify monorepo issue tracker

Contribute

The sources of this package are contained in the Symplify monorepo. We welcome contributions for this package on symplify/symplify.