setup-php 2.15.0 → 2.17.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +157 -143
- package/lib/config.d.ts +3 -3
- package/lib/config.js +71 -71
- package/lib/config.js.map +1 -1
- package/lib/coverage.d.ts +5 -4
- package/lib/coverage.js +97 -87
- package/lib/coverage.js.map +1 -1
- package/lib/extensions.d.ts +4 -4
- package/lib/extensions.js +214 -210
- package/lib/extensions.js.map +1 -1
- package/lib/fetch.d.ts +1 -0
- package/lib/fetch.js +63 -0
- package/lib/fetch.js.map +1 -0
- package/lib/install.d.ts +2 -2
- package/lib/install.js +75 -80
- package/lib/install.js.map +1 -1
- package/lib/tools.d.ts +23 -24
- package/lib/tools.js +373 -386
- package/lib/tools.js.map +1 -1
- package/lib/utils.d.ts +21 -23
- package/lib/utils.js +261 -293
- package/lib/utils.js.map +1 -1
- package/package.json +21 -20
- package/src/config.ts +8 -8
- package/src/configs/brew_extensions +2 -0
- package/src/configs/composer.env +2 -0
- package/src/configs/ini/jit.ini +3 -0
- package/src/configs/ini/php.ini +2 -0
- package/src/configs/ini/xdebug.ini +1 -0
- package/src/configs/os_releases.csv +2 -0
- package/src/configs/php-versions.json +2 -2
- package/src/configs/php_packages +12 -0
- package/src/configs/{php.json → pm/php.json} +0 -0
- package/src/configs/{phpunit.json → pm/phpunit.json} +24 -24
- package/src/configs/tools.json +48 -26
- package/src/configs/tools_schema.json +11 -0
- package/src/coverage.ts +47 -55
- package/src/extensions.ts +23 -19
- package/src/fetch.ts +54 -0
- package/src/install.ts +27 -40
- package/src/scripts/darwin.sh +72 -39
- package/src/scripts/extensions/add_extensions.ps1 +194 -0
- package/src/scripts/extensions/add_extensions.sh +184 -0
- package/src/scripts/{ext → extensions}/blackfire.ps1 +0 -0
- package/src/scripts/{ext → extensions}/blackfire.sh +0 -0
- package/src/scripts/{ext → extensions}/couchbase.sh +0 -0
- package/src/scripts/{ext → extensions}/cubrid.sh +3 -3
- package/src/scripts/{ext → extensions}/extension_map.php +36 -13
- package/src/scripts/{ext → extensions}/firebird.ps1 +0 -0
- package/src/scripts/{ext → extensions}/firebird.sh +0 -0
- package/src/scripts/{ext → extensions}/gearman.sh +0 -0
- package/src/scripts/{ext → extensions}/geos.sh +0 -0
- package/src/scripts/{ext → extensions}/http.ps1 +0 -0
- package/src/scripts/{ext → extensions}/http.sh +4 -15
- package/src/scripts/{ext → extensions}/intl.sh +0 -0
- package/src/scripts/{ext → extensions}/ioncube.ps1 +2 -2
- package/src/scripts/{ext → extensions}/ioncube.sh +2 -2
- package/src/scripts/{ext → extensions}/oci.ps1 +39 -14
- package/src/scripts/{ext → extensions}/oci.sh +3 -3
- package/src/scripts/{ext → extensions}/patches/firebird.sh +0 -0
- package/src/scripts/{ext → extensions}/patches/geos.sh +0 -0
- package/src/scripts/{ext → extensions}/patches/http.sh +0 -0
- package/src/scripts/{ext → extensions}/patches/pdo_oci.sh +0 -0
- package/src/scripts/{ext → extensions}/patches/phpize.sh +0 -0
- package/src/scripts/{ext → extensions}/patches/protobuf.sh +0 -0
- package/src/scripts/{ext → extensions}/phalcon.ps1 +0 -0
- package/src/scripts/{ext → extensions}/phalcon.sh +4 -5
- package/src/scripts/{ext → extensions}/source.sh +23 -22
- package/src/scripts/extensions/sqlsrv.sh +15 -0
- package/src/scripts/linux.sh +71 -40
- package/src/scripts/tools/add_tools.ps1 +220 -10
- package/src/scripts/tools/add_tools.sh +166 -15
- package/src/scripts/tools/blackfire.sh +2 -1
- package/src/scripts/tools/grpc_php_plugin.ps1 +4 -4
- package/src/scripts/tools/grpc_php_plugin.sh +3 -3
- package/src/scripts/tools/ppa.sh +12 -9
- package/src/scripts/tools/protoc.ps1 +2 -2
- package/src/scripts/tools/protoc.sh +2 -2
- package/src/scripts/tools/symfony.ps1 +18 -0
- package/src/scripts/tools/symfony.sh +18 -0
- package/src/scripts/unix.sh +186 -0
- package/src/scripts/win32.ps1 +145 -356
- package/src/tools.ts +62 -82
- package/src/utils.ts +57 -145
- package/lib/sapi.js +0 -64
- package/src/scripts/common.sh +0 -366
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "setup-php",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.17.1",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Setup PHP for use with GitHub Actions",
|
|
6
6
|
"main": "lib/install.js",
|
|
@@ -16,9 +16,9 @@
|
|
|
16
16
|
],
|
|
17
17
|
"scripts": {
|
|
18
18
|
"build": "tsc",
|
|
19
|
-
"lint": "eslint **/src/*.ts --cache --fix",
|
|
20
|
-
"format": "prettier --write **/src/*.ts && git add -f src/",
|
|
21
|
-
"format-check": "prettier --check **/src/*.ts",
|
|
19
|
+
"lint": "eslint **/src/*.ts **/__tests__/*.ts --cache --fix",
|
|
20
|
+
"format": "prettier --write **/src/*.ts **/__tests__/*.ts && git add -f src/",
|
|
21
|
+
"format-check": "prettier --check **/src/*.ts **/__tests__/*.ts",
|
|
22
22
|
"release": "ncc build -o dist && git add -f dist/",
|
|
23
23
|
"test": "jest"
|
|
24
24
|
},
|
|
@@ -34,28 +34,29 @@
|
|
|
34
34
|
"author": "shivammathur",
|
|
35
35
|
"license": "MIT",
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@actions/core": "^1.
|
|
37
|
+
"@actions/core": "^1.6.0",
|
|
38
38
|
"@actions/exec": "^1.1.0",
|
|
39
39
|
"@actions/io": "^1.1.1",
|
|
40
40
|
"fs": "0.0.1-security"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
|
-
"@types/jest": "^27.
|
|
44
|
-
"@types/node": "^
|
|
45
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
46
|
-
"@typescript-eslint/parser": "^
|
|
47
|
-
"@vercel/ncc": "^0.
|
|
48
|
-
"eslint": "^
|
|
49
|
-
"eslint-config-prettier": "^8.
|
|
50
|
-
"eslint-plugin-import": "^2.
|
|
51
|
-
"eslint-plugin-jest": "^
|
|
43
|
+
"@types/jest": "^27.4.1",
|
|
44
|
+
"@types/node": "^17.0.21",
|
|
45
|
+
"@typescript-eslint/eslint-plugin": "^5.12.1",
|
|
46
|
+
"@typescript-eslint/parser": "^5.12.1",
|
|
47
|
+
"@vercel/ncc": "^0.33.3",
|
|
48
|
+
"eslint": "^8.10.0",
|
|
49
|
+
"eslint-config-prettier": "^8.4.0",
|
|
50
|
+
"eslint-plugin-import": "^2.25.4",
|
|
51
|
+
"eslint-plugin-jest": "^26.1.1",
|
|
52
52
|
"eslint-plugin-prettier": "^4.0.0",
|
|
53
|
-
"jest": "^27.
|
|
54
|
-
"jest-circus": "^27.
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"
|
|
53
|
+
"jest": "^27.5.1",
|
|
54
|
+
"jest-circus": "^27.5.1",
|
|
55
|
+
"nock": "^13.2.4",
|
|
56
|
+
"prettier": "^2.5.1",
|
|
57
|
+
"simple-git-hooks": "^2.7.0",
|
|
58
|
+
"ts-jest": "^27.1.3",
|
|
59
|
+
"typescript": "^4.5.5"
|
|
59
60
|
},
|
|
60
61
|
"bugs": {
|
|
61
62
|
"url": "https://github.com/shivammathur/setup-php/issues"
|
package/src/config.ts
CHANGED
|
@@ -45,28 +45,28 @@ export async function addINIValuesWindows(
|
|
|
45
45
|
* Function to add custom ini values
|
|
46
46
|
*
|
|
47
47
|
* @param ini_values_csv
|
|
48
|
-
* @param
|
|
48
|
+
* @param os
|
|
49
49
|
* @param no_step
|
|
50
50
|
*/
|
|
51
51
|
export async function addINIValues(
|
|
52
52
|
ini_values_csv: string,
|
|
53
|
-
|
|
53
|
+
os: string,
|
|
54
54
|
no_step = false
|
|
55
55
|
): Promise<string> {
|
|
56
56
|
let script = '\n';
|
|
57
57
|
switch (no_step) {
|
|
58
58
|
case true:
|
|
59
59
|
script +=
|
|
60
|
-
(await utils.stepLog('Add php.ini values',
|
|
61
|
-
(await utils.suppressOutput(
|
|
60
|
+
(await utils.stepLog('Add php.ini values', os)) +
|
|
61
|
+
(await utils.suppressOutput(os)) +
|
|
62
62
|
'\n';
|
|
63
63
|
break;
|
|
64
64
|
case false:
|
|
65
65
|
default:
|
|
66
|
-
script += (await utils.stepLog('Add php.ini values',
|
|
66
|
+
script += (await utils.stepLog('Add php.ini values', os)) + '\n';
|
|
67
67
|
break;
|
|
68
68
|
}
|
|
69
|
-
switch (
|
|
69
|
+
switch (os) {
|
|
70
70
|
case 'win32':
|
|
71
71
|
return script + (await addINIValuesWindows(ini_values_csv));
|
|
72
72
|
case 'darwin':
|
|
@@ -74,8 +74,8 @@ export async function addINIValues(
|
|
|
74
74
|
return script + (await addINIValuesUnix(ini_values_csv));
|
|
75
75
|
default:
|
|
76
76
|
return await utils.log(
|
|
77
|
-
'Platform ' +
|
|
78
|
-
|
|
77
|
+
'Platform ' + os + ' is not supported',
|
|
78
|
+
os,
|
|
79
79
|
'error'
|
|
80
80
|
);
|
|
81
81
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
xdebug.mode=coverage
|
|
File without changes
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
{
|
|
2
|
-
"problemMatcher": [
|
|
3
|
-
{
|
|
4
|
-
"owner": "phpunit",
|
|
5
|
-
"pattern": [
|
|
6
|
-
{
|
|
7
|
-
"regexp": "^\\d+\\)\\s.*$"
|
|
8
|
-
},
|
|
9
|
-
{
|
|
10
|
-
"regexp": "^(.*Failed\\sasserting\\sthat.*)$",
|
|
11
|
-
"message": 1
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"regexp": "^\\s*$"
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
"regexp": "^(.*):(\\d+)$",
|
|
18
|
-
"file": 1,
|
|
19
|
-
"line": 2
|
|
20
|
-
}
|
|
21
|
-
]
|
|
22
|
-
}
|
|
23
|
-
]
|
|
24
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"problemMatcher": [
|
|
3
|
+
{
|
|
4
|
+
"owner": "phpunit",
|
|
5
|
+
"pattern": [
|
|
6
|
+
{
|
|
7
|
+
"regexp": "^\\d+\\)\\s.*$"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"regexp": "^(.*Failed\\sasserting\\sthat.*)$",
|
|
11
|
+
"message": 1
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"regexp": "^\\s*$"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"regexp": "^(.*):(\\d+)$",
|
|
18
|
+
"file": 1,
|
|
19
|
+
"line": 2
|
|
20
|
+
}
|
|
21
|
+
]
|
|
22
|
+
}
|
|
23
|
+
]
|
|
24
|
+
}
|
package/src/configs/tools.json
CHANGED
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
{
|
|
2
|
+
"churn": {
|
|
3
|
+
"type": "phar",
|
|
4
|
+
"repository": "bmitch/churn-php",
|
|
5
|
+
"extension": ".phar",
|
|
6
|
+
"domain": "https://github.com",
|
|
7
|
+
"version_prefix": "",
|
|
8
|
+
"version_parameter": "-V"
|
|
9
|
+
},
|
|
2
10
|
"composer-normalize": {
|
|
3
11
|
"type": "phar",
|
|
4
12
|
"repository": "ergebnis/composer-normalize",
|
|
@@ -81,6 +89,14 @@
|
|
|
81
89
|
"version_prefix": "",
|
|
82
90
|
"version_parameter": "--version"
|
|
83
91
|
},
|
|
92
|
+
"phpspec": {
|
|
93
|
+
"type": "phar",
|
|
94
|
+
"repository": "phpspec/phpspec",
|
|
95
|
+
"extension": ".phar",
|
|
96
|
+
"domain": "https://github.com",
|
|
97
|
+
"version_prefix": "",
|
|
98
|
+
"version_parameter": "-V"
|
|
99
|
+
},
|
|
84
100
|
"phpstan": {
|
|
85
101
|
"type": "phar",
|
|
86
102
|
"repository": "phpstan/phpstan",
|
|
@@ -99,58 +115,66 @@
|
|
|
99
115
|
},
|
|
100
116
|
"behat": {
|
|
101
117
|
"type": "composer",
|
|
102
|
-
"repository": "behat/behat"
|
|
118
|
+
"repository": "behat/behat",
|
|
119
|
+
"scope": "scoped"
|
|
103
120
|
},
|
|
104
121
|
"codeception": {
|
|
105
122
|
"type": "composer",
|
|
106
|
-
"repository": "codeception/codeception"
|
|
123
|
+
"repository": "codeception/codeception",
|
|
124
|
+
"scope": "scoped"
|
|
107
125
|
},
|
|
108
126
|
"automatic-composer-prefetcher": {
|
|
109
127
|
"type": "composer",
|
|
110
128
|
"alias": "composer-prefetcher",
|
|
111
|
-
"repository": "narrowspark/automatic-composer-prefetcher"
|
|
129
|
+
"repository": "narrowspark/automatic-composer-prefetcher",
|
|
130
|
+
"scope": "global"
|
|
112
131
|
},
|
|
113
132
|
"composer-require-checker": {
|
|
114
133
|
"type": "composer",
|
|
115
|
-
"repository": "maglnet/composer-require-checker"
|
|
134
|
+
"repository": "maglnet/composer-require-checker",
|
|
135
|
+
"scope": "scoped"
|
|
116
136
|
},
|
|
117
137
|
"composer-unused": {
|
|
118
138
|
"type": "composer",
|
|
119
|
-
"repository": "icanhazstring/composer-unused"
|
|
139
|
+
"repository": "icanhazstring/composer-unused",
|
|
140
|
+
"scope": "scoped"
|
|
120
141
|
},
|
|
121
142
|
"flex": {
|
|
122
143
|
"type": "composer",
|
|
123
|
-
"repository": "symfony/flex"
|
|
144
|
+
"repository": "symfony/flex",
|
|
145
|
+
"scope": "global"
|
|
124
146
|
},
|
|
125
147
|
"phinx": {
|
|
126
148
|
"type": "composer",
|
|
127
|
-
"repository": "robmorgan/phinx"
|
|
149
|
+
"repository": "robmorgan/phinx",
|
|
150
|
+
"scope": "scoped"
|
|
128
151
|
},
|
|
129
152
|
"phplint": {
|
|
130
153
|
"type": "composer",
|
|
131
|
-
"repository": "overtrue/phplint"
|
|
132
|
-
|
|
133
|
-
"phpspec": {
|
|
134
|
-
"type": "composer",
|
|
135
|
-
"repository": "phpspec/phpspec"
|
|
154
|
+
"repository": "overtrue/phplint",
|
|
155
|
+
"scope": "scoped"
|
|
136
156
|
},
|
|
137
157
|
"phpunit-bridge": {
|
|
138
158
|
"alias": "simple-phpunit",
|
|
139
159
|
"type": "composer",
|
|
140
|
-
"repository": "symfony/phpunit-bridge"
|
|
160
|
+
"repository": "symfony/phpunit-bridge",
|
|
161
|
+
"scope": "global"
|
|
141
162
|
},
|
|
142
163
|
"phpunit-polyfills": {
|
|
143
164
|
"type": "composer",
|
|
144
|
-
"repository": "yoast/phpunit-polyfills"
|
|
165
|
+
"repository": "yoast/phpunit-polyfills",
|
|
166
|
+
"scope": "global"
|
|
145
167
|
},
|
|
146
168
|
"prestissimo": {
|
|
147
169
|
"type": "composer",
|
|
148
|
-
"repository": "hirak/prestissimo"
|
|
170
|
+
"repository": "hirak/prestissimo",
|
|
171
|
+
"scope": "global"
|
|
149
172
|
},
|
|
150
173
|
"vapor-cli": {
|
|
151
174
|
"type": "composer",
|
|
152
175
|
"alias": "vapor",
|
|
153
|
-
"repository": "laravel/vapor-cli"
|
|
176
|
+
"repository": "laravel/vapor-cli",
|
|
177
|
+
"scope": "scoped"
|
|
154
178
|
},
|
|
155
179
|
"blackfire": {
|
|
156
180
|
"type": "custom-package",
|
|
@@ -168,6 +192,13 @@
|
|
|
168
192
|
"domain": "https://github.com",
|
|
169
193
|
"version_prefix": "v"
|
|
170
194
|
},
|
|
195
|
+
"symfony-cli": {
|
|
196
|
+
"alias": "symfony",
|
|
197
|
+
"type": "custom-package",
|
|
198
|
+
"repository": "symfony-cli/symfony-cli",
|
|
199
|
+
"domain": "https://github.com",
|
|
200
|
+
"version_prefix": "-V"
|
|
201
|
+
},
|
|
171
202
|
"blackfire-player": {
|
|
172
203
|
"type": "custom-function",
|
|
173
204
|
"domain": "https://get.blackfire.io",
|
|
@@ -205,7 +236,7 @@
|
|
|
205
236
|
"phive": {
|
|
206
237
|
"type": "custom-function",
|
|
207
238
|
"repository": "phar-io/phive",
|
|
208
|
-
"domain": "https://
|
|
239
|
+
"domain": "https://github.com",
|
|
209
240
|
"function": "phive",
|
|
210
241
|
"version_prefix": "",
|
|
211
242
|
"version_parameter": "status"
|
|
@@ -235,15 +266,6 @@
|
|
|
235
266
|
"type": "custom-function",
|
|
236
267
|
"function": "dev_tools"
|
|
237
268
|
},
|
|
238
|
-
"symfony-cli": {
|
|
239
|
-
"type": "custom-function",
|
|
240
|
-
"function": "symfony",
|
|
241
|
-
"alias": "symfony",
|
|
242
|
-
"domain": "https://github.com",
|
|
243
|
-
"repository": "symfony/cli",
|
|
244
|
-
"version_prefix": "v",
|
|
245
|
-
"version_parameter": "version"
|
|
246
|
-
},
|
|
247
269
|
"wp-cli": {
|
|
248
270
|
"type": "custom-function",
|
|
249
271
|
"function": "wp_cli",
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
"fetch_latest": "true",
|
|
14
14
|
"function": "function_name",
|
|
15
15
|
"repository": "user/tool",
|
|
16
|
+
"scope": "global, scoped",
|
|
16
17
|
"type": "phar, composer, custom-package or custom-function",
|
|
17
18
|
"version_parameter": "--version",
|
|
18
19
|
"version_prefix": "v"
|
|
@@ -76,6 +77,16 @@
|
|
|
76
77
|
"user/tool"
|
|
77
78
|
]
|
|
78
79
|
},
|
|
80
|
+
"scope": {
|
|
81
|
+
"$id": "#/items/properties/scope",
|
|
82
|
+
"type": "string",
|
|
83
|
+
"title": "The scope schema",
|
|
84
|
+
"description": "Scope of tool installation: global or scoped",
|
|
85
|
+
"enum": [
|
|
86
|
+
"global",
|
|
87
|
+
"scoped"
|
|
88
|
+
]
|
|
89
|
+
},
|
|
79
90
|
"type": {
|
|
80
91
|
"$id": "#/items/properties/type",
|
|
81
92
|
"type": "string",
|
package/src/coverage.ts
CHANGED
|
@@ -2,33 +2,46 @@ import * as utils from './utils';
|
|
|
2
2
|
import * as extensions from './extensions';
|
|
3
3
|
import * as config from './config';
|
|
4
4
|
|
|
5
|
+
export async function checkXdebugError(
|
|
6
|
+
extension: string,
|
|
7
|
+
version: string
|
|
8
|
+
): Promise<string> {
|
|
9
|
+
if (
|
|
10
|
+
(/^5\.[3-6]$|^7\.[0-1]$/.test(version) && extension == 'xdebug3') ||
|
|
11
|
+
(/^8\.[0-9]$/.test(version) && extension == 'xdebug2')
|
|
12
|
+
) {
|
|
13
|
+
return extension + ' is not supported on PHP ' + version;
|
|
14
|
+
}
|
|
15
|
+
return '';
|
|
16
|
+
}
|
|
17
|
+
|
|
5
18
|
/**
|
|
6
19
|
* Function to setup Xdebug
|
|
7
20
|
*
|
|
8
21
|
* @param extension
|
|
9
22
|
* @param version
|
|
10
|
-
* @param
|
|
23
|
+
* @param os
|
|
11
24
|
* @param pipe
|
|
12
25
|
*/
|
|
13
26
|
export async function addCoverageXdebug(
|
|
14
27
|
extension: string,
|
|
15
28
|
version: string,
|
|
16
|
-
|
|
29
|
+
os: string,
|
|
17
30
|
pipe: string
|
|
18
31
|
): Promise<string> {
|
|
19
32
|
let script = '\n';
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
);
|
|
33
|
+
let message: string = await checkXdebugError(extension, version);
|
|
34
|
+
let status = '$cross';
|
|
35
|
+
if (!message) {
|
|
36
|
+
script +=
|
|
37
|
+
(await extensions.addExtension(':pcov:false', version, os, true)) + pipe;
|
|
38
|
+
extension = extension == 'xdebug3' ? 'xdebug' : extension;
|
|
39
|
+
script +=
|
|
40
|
+
(await extensions.addExtension(extension, version, os, true)) + pipe;
|
|
41
|
+
message = 'Xdebug enabled as coverage driver';
|
|
42
|
+
status = '$tick';
|
|
43
|
+
}
|
|
44
|
+
script += await utils.addLog(status, extension, message, os);
|
|
32
45
|
return script;
|
|
33
46
|
}
|
|
34
47
|
|
|
@@ -36,36 +49,30 @@ export async function addCoverageXdebug(
|
|
|
36
49
|
* Function to setup PCOV
|
|
37
50
|
*
|
|
38
51
|
* @param version
|
|
39
|
-
* @param
|
|
52
|
+
* @param os
|
|
40
53
|
* @param pipe
|
|
41
54
|
*/
|
|
42
55
|
export async function addCoveragePCOV(
|
|
43
56
|
version: string,
|
|
44
|
-
|
|
57
|
+
os: string,
|
|
45
58
|
pipe: string
|
|
46
59
|
): Promise<string> {
|
|
47
60
|
let script = '\n';
|
|
48
61
|
switch (true) {
|
|
49
62
|
default:
|
|
50
63
|
script +=
|
|
51
|
-
(await extensions.addExtension(
|
|
52
|
-
':xdebug:false',
|
|
53
|
-
version,
|
|
54
|
-
os_version,
|
|
55
|
-
true
|
|
56
|
-
)) + pipe;
|
|
57
|
-
script +=
|
|
58
|
-
(await extensions.addExtension('pcov', version, os_version, true)) +
|
|
64
|
+
(await extensions.addExtension(':xdebug:false', version, os, true)) +
|
|
59
65
|
pipe;
|
|
60
66
|
script +=
|
|
61
|
-
(await
|
|
67
|
+
(await extensions.addExtension('pcov', version, os, true)) + pipe;
|
|
68
|
+
script += (await config.addINIValues('pcov.enabled=1', os, true)) + '\n';
|
|
62
69
|
|
|
63
70
|
// success
|
|
64
71
|
script += await utils.addLog(
|
|
65
72
|
'$tick',
|
|
66
73
|
'coverage: pcov',
|
|
67
74
|
'PCOV enabled as coverage driver',
|
|
68
|
-
|
|
75
|
+
os
|
|
69
76
|
);
|
|
70
77
|
// version is not supported
|
|
71
78
|
break;
|
|
@@ -75,7 +82,7 @@ export async function addCoveragePCOV(
|
|
|
75
82
|
'$cross',
|
|
76
83
|
'pcov',
|
|
77
84
|
'PHP 7.1 or newer is required',
|
|
78
|
-
|
|
85
|
+
os
|
|
79
86
|
);
|
|
80
87
|
break;
|
|
81
88
|
}
|
|
@@ -87,31 +94,20 @@ export async function addCoveragePCOV(
|
|
|
87
94
|
* Function to disable Xdebug and PCOV
|
|
88
95
|
*
|
|
89
96
|
* @param version
|
|
90
|
-
* @param
|
|
97
|
+
* @param os
|
|
91
98
|
* @param pipe
|
|
92
99
|
*/
|
|
93
100
|
export async function disableCoverage(
|
|
94
101
|
version: string,
|
|
95
|
-
|
|
102
|
+
os: string,
|
|
96
103
|
pipe: string
|
|
97
104
|
): Promise<string> {
|
|
98
105
|
let script = '\n';
|
|
99
106
|
script +=
|
|
100
|
-
(await extensions.addExtension(':pcov:false', version,
|
|
101
|
-
pipe;
|
|
107
|
+
(await extensions.addExtension(':pcov:false', version, os, true)) + pipe;
|
|
102
108
|
script +=
|
|
103
|
-
(await extensions.addExtension(
|
|
104
|
-
|
|
105
|
-
version,
|
|
106
|
-
os_version,
|
|
107
|
-
true
|
|
108
|
-
)) + pipe;
|
|
109
|
-
script += await utils.addLog(
|
|
110
|
-
'$tick',
|
|
111
|
-
'none',
|
|
112
|
-
'Disabled Xdebug and PCOV',
|
|
113
|
-
os_version
|
|
114
|
-
);
|
|
109
|
+
(await extensions.addExtension(':xdebug:false', version, os, true)) + pipe;
|
|
110
|
+
script += await utils.addLog('$tick', 'none', 'Disabled Xdebug and PCOV', os);
|
|
115
111
|
|
|
116
112
|
return script;
|
|
117
113
|
}
|
|
@@ -121,31 +117,27 @@ export async function disableCoverage(
|
|
|
121
117
|
*
|
|
122
118
|
* @param coverage_driver
|
|
123
119
|
* @param version
|
|
124
|
-
* @param
|
|
120
|
+
* @param os
|
|
125
121
|
*/
|
|
126
122
|
export async function addCoverage(
|
|
127
123
|
coverage_driver: string,
|
|
128
124
|
version: string,
|
|
129
|
-
|
|
125
|
+
os: string
|
|
130
126
|
): Promise<string> {
|
|
131
127
|
coverage_driver = coverage_driver.toLowerCase();
|
|
132
|
-
const script: string =
|
|
133
|
-
|
|
134
|
-
const pipe: string = (await utils.suppressOutput(os_version)) + '\n';
|
|
128
|
+
const script: string = '\n' + (await utils.stepLog('Setup Coverage', os));
|
|
129
|
+
const pipe: string = (await utils.suppressOutput(os)) + '\n';
|
|
135
130
|
switch (coverage_driver) {
|
|
136
131
|
case 'pcov':
|
|
137
|
-
return script + (await addCoveragePCOV(version,
|
|
132
|
+
return script + (await addCoveragePCOV(version, os, pipe));
|
|
138
133
|
case 'xdebug':
|
|
139
|
-
case 'xdebug3':
|
|
140
|
-
return (
|
|
141
|
-
script + (await addCoverageXdebug('xdebug', version, os_version, pipe))
|
|
142
|
-
);
|
|
143
134
|
case 'xdebug2':
|
|
135
|
+
case 'xdebug3':
|
|
144
136
|
return (
|
|
145
|
-
script + (await addCoverageXdebug(
|
|
137
|
+
script + (await addCoverageXdebug(coverage_driver, version, os, pipe))
|
|
146
138
|
);
|
|
147
139
|
case 'none':
|
|
148
|
-
return script + (await disableCoverage(version,
|
|
140
|
+
return script + (await disableCoverage(version, os, pipe));
|
|
149
141
|
default:
|
|
150
142
|
return '';
|
|
151
143
|
}
|