1- # yaml-language-server: $schema=https://json.schemastore.org/github-workflow
2-
31name : " Integrate"
42
53on :
@@ -31,18 +29,34 @@ jobs:
3129 - name : " Set up PHP"
3230 uses : " shivammathur/setup-php@v2"
3331 with :
34- php-version : " 8.1"
32+ php-version : " 8.3"
33+ extensions : " json, mbstring, openssl, sqlite3, curl, uuid"
34+ tools : castor
3535
3636 - name : " Checkout code"
3737 uses : " actions/checkout@v4"
3838
39+ - name : " Fetch Git base reference"
40+ run : " git fetch --depth=1 origin ${GITHUB_BASE_REF}"
41+
42+ - name : " Validate Composer configuration"
43+ run : " castor validate"
44+
3945 - name : " Install dependencies"
4046 uses : " ramsey/composer-install@v3"
4147 with :
42- dependency-versions : " highest"
48+ dependency-versions : " ${{ matrix.dependencies }}"
49+ composer-options : " --optimize-autoloader"
50+
51+ - name : " Cache dependencies"
52+ uses : " actions/cache@v4"
53+ id : " cache"
54+ with :
55+ path : " composer-cache"
56+ key : " ${{ runner.os }}-${{ hashFiles('**/composer.json') }}"
4357
4458 - name : " Check source code for syntax errors"
45- run : " composer exec -- parallel- lint src/ tests/ "
59+ run : " castor lint"
4660
4761 unit_tests :
4862 name : " 2️⃣ Unit and functional tests"
5468 operating-system :
5569 - " ubuntu-latest"
5670 php-version :
57- - " 8.1"
58- - " 8.2"
5971 - " 8.3"
6072 dependencies :
6173 - " lowest"
6779 with :
6880 php-version : " ${{ matrix.php-version }}"
6981 extensions : " json, mbstring, openssl, sqlite3, curl, uuid"
82+ tools : castor
7083 coverage : " xdebug"
7184
7285 - name : " Checkout code"
7992 composer-options : " --optimize-autoloader"
8093
8194 - name : " Execute unit tests"
82- run : " make ci-cc"
83-
84- # - name: Send coverage to Coveralls
85- # if: "matrix.php-version == '8.1' && matrix.dependencies == 'highest'"
86- # env:
87- # COVERALLS_REPO_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
88- # run: |
89- # wget "https://github.com/php-coveralls/php-coveralls/releases/download/v2.5.2/php-coveralls.phar"
90- # php ./php-coveralls.phar -v
95+ run : " castor test --coverage-text"
9196
9297 static_analysis :
9398 name : " 3️⃣ Static Analysis"
@@ -99,23 +104,21 @@ jobs:
99104 - name : " Set up PHP"
100105 uses : " shivammathur/setup-php@v2"
101106 with :
102- php-version : " 8.1 "
107+ php-version : " 8.3 "
103108 extensions : " json, mbstring, openssl, sqlite3, curl, uuid"
109+ tools : castor
104110
105111 - name : " Checkout code"
106112 uses : " actions/checkout@v4"
107113
108- - name : " Validate Composer configuration"
109- run : " composer validate --strict"
110-
111114 - name : " Install dependencies"
112115 uses : " ramsey/composer-install@v3"
113116 with :
114117 dependency-versions : " highest"
115118 composer-options : " --optimize-autoloader"
116119
117120 - name : " Execute static analysis"
118- run : " make st "
121+ run : " castor stan "
119122
120123 coding_standards :
121124 name : " 4️⃣ Coding Standards"
@@ -127,23 +130,50 @@ jobs:
127130 - name : " Set up PHP"
128131 uses : " shivammathur/setup-php@v2"
129132 with :
130- php-version : " 8.1 "
133+ php-version : " 8.3 "
131134 extensions : " json, mbstring, openssl, sqlite3, curl, uuid"
135+ tools : castor
132136
133137 - name : " Checkout code"
134138 uses : " actions/checkout@v4"
135139
140+ - name : " Install dependencies"
141+ uses : " ramsey/composer-install@v3"
142+ with :
143+ dependency-versions : " highest"
144+ composer-options : " --optimize-autoloader"
145+
136146 - name : " Check adherence to EditorConfig"
137147 uses : " greut/eclint-action@v0"
138148
149+ - name : " Check coding style"
150+ run : " castor cs"
151+
152+ check_licenses :
153+ name : " 5️⃣ Check licenses"
154+ needs :
155+ - " byte_level"
156+ - " syntax_errors"
157+ runs-on : " ubuntu-latest"
158+ steps :
159+ - name : " Set up PHP"
160+ uses : " shivammathur/setup-php@v2"
161+ with :
162+ php-version : " 8.3"
163+ extensions : " json, mbstring, openssl, sqlite3, curl, uuid"
164+ tools : castor
165+
166+ - name : " Checkout code"
167+ uses : " actions/checkout@v4"
168+
139169 - name : " Install dependencies"
140170 uses : " ramsey/composer-install@v3"
141171 with :
142172 dependency-versions : " highest"
143173 composer-options : " --optimize-autoloader"
144174
145175 - name : " Check coding style"
146- run : " make ci-cs "
176+ run : " castor check-licenses "
147177
148178 rector_checkstyle :
149179 name : " 6️⃣ Rector Checkstyle"
@@ -155,24 +185,22 @@ jobs:
155185 - name : " Set up PHP"
156186 uses : " shivammathur/setup-php@v2"
157187 with :
158- php-version : " 8.1 "
188+ php-version : " 8.3 "
159189 extensions : " json, mbstring, openssl, sqlite3, curl, uuid"
190+ tools : castor
160191 coverage : " xdebug"
161192
162193 - name : " Checkout code"
163194 uses : " actions/checkout@v4"
164195
165- - name : " Fetch Git base reference"
166- run : " git fetch --depth=1 origin ${GITHUB_BASE_REF}"
167-
168196 - name : " Install dependencies"
169197 uses : " ramsey/composer-install@v3"
170198 with :
171199 dependency-versions : " highest"
172200 composer-options : " --optimize-autoloader"
173201
174202 - name : " Execute Rector"
175- run : " make rector"
203+ run : " castor rector"
176204
177205 exported_files :
178206 name : " 7️⃣ Exported files"
0 commit comments