Skip to content

Maghic is a Swiss army knife for GitHub Actions Workflow

License

Notifications You must be signed in to change notification settings

Hi-Folks/maghic

Repository files navigation

Maghic

Maghic

Maghic is a Swiss army knife tool for GitHub Actions Workflow.

This project is a W.I.P. for "2021 GitHub Actions Hackathon on DEV". It is not yet completed and it is under development as side project.

It provides:

  • a command line tool for managing, creating and autogenerate Yaml file Workflow for GitHub Actions;
  • a set of classes and methods for managing Yaml file (specific for GitHub Actions Workflows).

This is created for the GitHub Actions Hackathon: 2021 GitHub Actions Hackathon on DEV

Auto generate workflows

If you want to create automatically a GitHub Actions workflow file you can execute "maghic yaml:guess" command. If you want to save the file, you need to use --save option. Amandatory argument is the directory of the project that needs a workflow file. If you want to enable a MySql service, you need to use --mysql option.

./maghic yaml:guess --mysql --save .

If you want to show the workflow file, you can use --show option:

./maghic yaml:guess --show .

The yaml:guess command will inspect your project detecting some characteristics to guess the workflow:

  • a dependencies file like composer.json (for PHP), packages.json (for Node/JS) etc.;
  • the dependencies: if there are some relevant dependencies like testing tool, static code analysis or code sniffer;
  • .nvmrc to identify the right version of Node in the pipeline
  • ...

Maghic screenshot

References

Packages

Code quality packages

  • PestPHP: a testing framework for PHP;
  • PHPStan: a static code analysis tool for PHP;
  • PHP_CodeSniffer: detects violations of a defined set of coding standards (for example PSR2 and PSR12).

About

Maghic is a Swiss army knife for GitHub Actions Workflow

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published