1111# @link https://github.com/JBZoo/Utils
1212#
1313
14- name : Continuous Integration
14+ name : CI
1515
1616on :
1717 pull_request :
2121 branches :
2222 - ' master'
2323 schedule :
24- - cron : ' 15 */8 * * *'
24+ - cron : ' 50 */8 * * *'
2525
2626env :
2727 COLUMNS : 120
@@ -35,12 +35,11 @@ jobs:
3535 JBZOO_COMPOSER_UPDATE_FLAGS : ${{ matrix.composer_flags }}
3636 strategy :
3737 matrix :
38- php-version : [ 7.2, 7.3, 7.4 ]
38+ php-version : [ 7.2, 7.3, 7.4, 8.0 ]
3939 experimental : [ false ]
40+ coverage : [ xdebug, none ]
4041 composer_flags : [ "--prefer-lowest", "" ]
4142 include :
42- - php-version : " 8.0"
43- experimental : true
4443 - php-version : " 8.1"
4544 experimental : true
4645 steps :
@@ -49,11 +48,11 @@ jobs:
4948 with :
5049 fetch-depth : 0
5150
52- - name : Setup PHP and composer
51+ - name : Setup PHP
5352 uses : shivammathur/setup-php@v2
5453 with :
5554 php-version : ${{ matrix.php-version }}
56- coverage : xdebug
55+ coverage : ${{ matrix.coverage }}
5756 tools : composer
5857
5958 - name : Build the Project
@@ -64,10 +63,82 @@ jobs:
6463 continue-on-error : ${{ matrix.experimental }}
6564 run : make test --no-print-directory
6665
66+ - name : Upload Artifacts
67+ uses : actions/upload-artifact@v2
68+ with :
69+ name : PHPUnit - ${{ matrix.php-version }} - ${{ matrix.coverage }}
70+ path : build/
71+
72+
73+ linters :
74+ name : Linters
75+ runs-on : ubuntu-latest
76+ strategy :
77+ matrix :
78+ php-version : [ 7.2, 7.3, 7.4, 8.0 ]
79+ experimental : [ false ]
80+ include :
81+ - php-version : " 8.1"
82+ experimental : true
83+ steps :
84+ - name : Checkout code
85+ uses : actions/checkout@v2
86+ with :
87+ fetch-depth : 0
88+
89+ - name : Setup PHP
90+ uses : shivammathur/setup-php@v2
91+ with :
92+ php-version : ${{ matrix.php-version }}
93+ tools : composer
94+
95+ - name : Build the Project
96+ continue-on-error : ${{ matrix.experimental }}
97+ run : make update --no-print-directory
98+
6799 - name : 👍 Code Quality
68100 continue-on-error : ${{ matrix.experimental }}
69101 run : make codestyle --no-print-directory
70102
71- - name : 📝 Build All Reports at Once
103+ - name : Upload Artifacts
104+ uses : actions/upload-artifact@v2
105+ with :
106+ name : Linters - ${{ matrix.php-version }}
107+ path : build/
108+
109+
110+ report :
111+ name : Reports
112+ runs-on : ubuntu-latest
113+ strategy :
114+ matrix :
115+ php-version : [ 7.2, 7.3, 7.4, 8.0 ]
116+ experimental : [ false ]
117+ include :
118+ - php-version : " 8.1"
119+ experimental : true
120+ steps :
121+ - name : Checkout code
122+ uses : actions/checkout@v2
123+ with :
124+ fetch-depth : 0
125+
126+ - name : Setup PHP
127+ uses : shivammathur/setup-php@v2
128+ with :
129+ php-version : ${{ matrix.php-version }}
130+ tools : composer
131+
132+ - name : Build the Project
133+ continue-on-error : ${{ matrix.experimental }}
134+ run : make update --no-print-directory
135+
136+ - name : 📝 Build Reports
72137 continue-on-error : ${{ matrix.experimental }}
73138 run : make report-all --no-print-directory
139+
140+ - name : Upload Artifacts
141+ uses : actions/upload-artifact@v2
142+ with :
143+ name : Reports - ${{ matrix.php-version }}
144+ path : build/
0 commit comments