-
Notifications
You must be signed in to change notification settings - Fork 498
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CI: switch to GitHub Actions for PHP 5.5 - current #467
Commits on Apr 16, 2021
-
CI: switch to GitHub Actions - step 1: sniff/CS workflow
This commit: * Adds a GH Actions workflow for the CI checks which were previously run on Travis in the `sniff` stage. * Removes that part of the `.travis.yml` configuration. * Adds a "Build Status" badge in the Readme to use the results from this particular GH Actions runs. Co-authored-by: Alain Schlesser <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 00ef3a7 - Browse repository at this point
Copy the full SHA 00ef3a7View commit details -
CI: switch to GitHub Actions - step 2: lint workflow
This commit: * Add a new dependency on the PHP Parallel Lint package which will be used for linting on PHP >= 5.5. The PHP Parallel Lint package, in combination with the PHP Console Highlighter provides the following advantages in comparison with "plain" PHP linting: - Higher speed due to the parallel processes. - Improved usability by providing color coded syntax highlighting of found errors on the command-line. - Integration with the `cs2pr` tool, allowing for the results of the lint command to be shown in-line in PRs. * Adds a Composer `lint` script for easy access to the tool for devs, while making sure the correct command line parameters will be used. * Adds a GH Actions workflow for linting the code on the high/low minors of each PHP major version. Note: this workflow will only run on PHP >= 5.5. Linting against PHP 5.2 - 5.4 will remain in Travis for now. * Removes the part of the `.travis.yml` configuration which has now been replaced. * Adds a "Build Status" badge in the Readme to use the results from this particular GH Actions runs. Co-authored-by: Alain Schlesser <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fde75a9 - Browse repository at this point
Copy the full SHA fde75a9View commit details -
Configuration menu - View commit details
-
Copy full SHA for e399bd8 - Browse repository at this point
Copy the full SHA e399bd8View commit details -
Configuration menu - View commit details
-
Copy full SHA for a78ba51 - Browse repository at this point
Copy the full SHA a78ba51View commit details -
CI: switch to GitHub Actions - step 3: test and coverage stage
This commit: * Adds a GH Actions workflow for running the unit tests against PHP 5.5 - current. Note: - This workflow will run for all pull requests and for merges to master, but not for other push events. - Code coverage will be checked for the highest and lowest PHP version so the results can be combined to cover any polyfills and work-arounds. Includes adjusting the codecov configuration to expect 2 reports for each build. - The PHP 8.1 (nightly) job is "allowed to fail" (`experimental` = true). If it does fail, the build status will unfortunately show as "failed", even though all non-experimental jobs have succeeded. This is a known issue in GHA: https://github.com/actions/toolkit/issues/399 - For PHP 5.2-5.4, the tests will still be run via Travis as the test server setup is incompatible with PHP < 5.5 and using multiple PHP versions in a workflow run does work on Travis, but doesn't work the same on GH Actions. * Strips down the `.travis.yml` configuration to the bare minimum to run the tests against PHP 5.2 - 5.4. * Adds a "Build Status" badge in the Readme to use the results from this particular GH Actions runs. Note: for the time being, the tests will not be run against PHP 8.1/nightly as PHPUnit 7 is incompatible, meaning that that build would _always_ fail. Once the version constraints for PHHUnit have been widened (see PR 446), the build against PHP nightly should be enabled. Co-authored-by: Alain Schlesser <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b9c0431 - Browse repository at this point
Copy the full SHA b9c0431View commit details -
CI: switch to GitHub Actions - step 4: introduce a quick test workflow
Previous, the Travis all-in-one workflow would run on every push and every PR, making for a lot of redundancy in the builds. GH Actions allows to run workflows far more selectively. The "Test" workflow has been configured to run against all supported PHP versions for pushes (merges) to `master`, as well as for pull requests. This commit introduces a "Quick test" workflow, which is basically the same as the full "Test" workflow (without code coverage checking). This workflow will only run the tests against a few select PHP versions on `push` events, when the push is not to the `master` branch. This allows for people working on feature branches to still get a quick impression of whether their branch is ready to be pulled, while conserving resources by not running the full build until the branch has been pulled. Co-authored-by: Alain Schlesser <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 44895bf - Browse repository at this point
Copy the full SHA 44895bfView commit details