@@ -10,7 +10,35 @@ defaults: &defaults
1010
1111version : 2
1212jobs :
13- build :
13+ # Code style test:
14+ # FAIL if code does not conform to PSR-2 conventions
15+ # PASS otherwise
16+ code_style :
17+ << : *defaults
18+ docker :
19+ - image : wodby/php:7.1
20+ steps :
21+ - checkout
22+ - run : cp .docker/zz-php.ini /usr/local/etc/php/conf.d/
23+ - run : composer install
24+ - run : composer cs
25+
26+ # Mergable test:
27+ # FAIL if merging test branch with master produces conflicts
28+ # PASS if the test branch is out of date, but mergable without conflicts
29+ check_mergable :
30+ << : *defaults
31+ docker :
32+ - image : wodby/php:7.1
33+ steps :
34+ - checkout
35+ -
run :
git config --global user.email "[email protected] " 36+ - run : git config --global user.name "Drush Merge Test Bot"
37+ - run : git merge -q -m 'Merge check' origin/master
38+
39+ # PHP 7.1 test:
40+ # Checks the most common configuration.
41+ test_71 :
1442 << : *defaults
1543 docker :
1644 - image : wodby/php:7.1
2351 - run : cp .docker/zz-php.ini /usr/local/etc/php/conf.d/
2452 - run : composer install
2553 - run : $HOME/drush/.circleci/patch.sh
54+ - run : composer lint
2655 - run : composer functional
2756
28- build_highest :
57+ # PHP 7.2 test with HIGHEST dependencies:
58+ # Determines whether a newer version of a dependency has broken Drush.
59+ test_72_highest :
2960 << : *defaults
3061 docker :
3162 - image : wodby/php:7.2
@@ -39,10 +70,16 @@ jobs:
3970 - run : composer remove --dev webflo/drupal-core-strict --no-update
4071 - run : composer require --dev drupal/core:8.7.x-dev --no-update
4172 - run : composer config platform.php 7.2
42- - run : composer install
73+ - run : composer update
74+ - run : composer lint
4375 - run : composer functional
4476
45- build_56 :
77+ # PHP 5.6 test with LOWEST dependencies:
78+ # Determines whether any code introduced in this branch uses language
79+ # features not available in PHP 5.6, or whether there are any API calls
80+ # to dependency features not available in the lowest version listed
81+ # for a dependency in our composer.json file.
82+ test_56_lowest :
4683 << : *defaults
4784 docker :
4885 - image : wodby/php:5.6
@@ -53,14 +90,41 @@ jobs:
5390 steps :
5491 - checkout
5592 - run : cp .docker/zz-php.ini /usr/local/etc/php/conf.d/
56- - run : .scenarios.lock/install php5
93+ - run : .scenarios.lock/install php5 lowest
5794 - run : $HOME/drush/.circleci/patch.sh
95+ - run : composer lint
5896 - run : composer functional
5997
6098workflows :
6199 version : 2
62- build_test :
100+ # Drush test jobs:
101+ # - If the mergable test fails, then skip all of the other tests
102+ # (except code style)
103+ # - If code style check fails, then run only the LOWEST test and skip
104+ # all of the others.
105+ # - If both the code style and mergable checks pass, then run the
106+ # standard and LOWEST tests.
107+ drush :
63108 jobs :
64- - build
65- - build_highest
66- - build_56
109+ - code_style
110+ - check_mergable
111+ - test_71 :
112+ requires :
113+ - check_mergable
114+ - code_style
115+ - test_56_lowest :
116+ requires :
117+ - check_mergable
118+ # Drush scheduled jobs:
119+ # - Run the HIGHEST tests daily at the stroke of midnight UTC
120+ scheduled :
121+ triggers :
122+ - schedule :
123+ cron : " 0 0 * * *"
124+ filters :
125+ branches :
126+ only :
127+ - master
128+ jobs :
129+ - test_72_highest
130+
0 commit comments