setup-php 2.37.0 → 2.37.2
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 +9 -6
- package/lib/config.js +5 -2
- package/lib/config.js.map +1 -1
- package/lib/install.js +2 -2
- package/lib/install.js.map +1 -1
- package/lib/tools.d.ts +2 -0
- package/lib/tools.js +45 -4
- package/lib/tools.js.map +1 -1
- package/lib/utils.d.ts +3 -0
- package/lib/utils.js +69 -28
- package/lib/utils.js.map +1 -1
- package/package.json +15 -15
- package/src/config.ts +5 -2
- package/src/configs/composer-gh-auth-no-op +3 -0
- package/src/configs/composer-gh-auth-warn +1 -0
- package/src/configs/os_releases.csv +4 -1
- package/src/install.ts +5 -2
- package/src/scripts/extensions/gearman.sh +1 -1
- package/src/scripts/extensions/phalcon.ps1 +3 -21
- package/src/scripts/extensions/phalcon.sh +2 -0
- package/src/scripts/tools/add_tools.ps1 +24 -2
- package/src/scripts/tools/add_tools.sh +29 -7
- package/src/scripts/tools/brew.sh +1 -0
- package/src/scripts/win32.ps1 +13 -9
- package/src/tools.ts +47 -9
- package/src/utils.ts +87 -36
package/README.md
CHANGED
|
@@ -268,7 +268,7 @@ These tools can be set up globally using the `tools` input. It accepts a string
|
|
|
268
268
|
uses: shivammathur/setup-php@v2
|
|
269
269
|
with:
|
|
270
270
|
php-version: '8.5'
|
|
271
|
-
tools: composer:
|
|
271
|
+
tools: composer:v2
|
|
272
272
|
```
|
|
273
273
|
|
|
274
274
|
- If you do not use composer in your workflow, you can specify `tools: none` to skip it.
|
|
@@ -950,11 +950,12 @@ Examples of using `setup-php` with various PHP frameworks and packages.
|
|
|
950
950
|
| Framework/Package | Runs on | Workflow |
|
|
951
951
|
|----------------------------------------|---------------------------------|---------------------------------------------------------------------------------------------------------------|
|
|
952
952
|
| Blackfire | `macOS`, `ubuntu` and `windows` | [blackfire.yml](./examples/blackfire.yml "GitHub Action using Blackfire") |
|
|
953
|
-
| Blackfire Player | `macOS
|
|
953
|
+
| Blackfire Player | `macOS` and `ubuntu` | [blackfire-player.yml](./examples/blackfire-player.yml "GitHub Action using Blackfire Player") |
|
|
954
954
|
| CakePHP with `MySQL` and `Redis` | `ubuntu` | [cakephp-mysql.yml](./examples/cakephp-mysql.yml "GitHub Action for CakePHP with MySQL and Redis") |
|
|
955
955
|
| CakePHP with `PostgreSQL` and `Redis` | `ubuntu` | [cakephp-postgres.yml](./examples/cakephp-postgres.yml "GitHub Action for CakePHP with Postgres and Redis") |
|
|
956
956
|
| CakePHP without services | `macOS`, `ubuntu` and `windows` | [cakephp.yml](./examples/cakephp.yml "GitHub Action for CakePHP without services") |
|
|
957
957
|
| CodeIgniter | `macOS`, `ubuntu` and `windows` | [codeigniter.yml](./examples/codeigniter.yml "GitHub Action for CodeIgniter") |
|
|
958
|
+
| Drupal 11 (Composer-managed) | `ubuntu` | [drupal.yml](./examples/drupal.yml "GitHub Action for Drupal 11 composer-managed projects") |
|
|
958
959
|
| Laminas MVC | `macOS`, `ubuntu` and `windows` | [laminas-mvc.yml](./examples/laminas-mvc.yml "GitHub Action for Laminas Framework MVC Projects") |
|
|
959
960
|
| Laravel with `MySQL` and `Redis` | `ubuntu` | [laravel-mysql.yml](./examples/laravel-mysql.yml "GitHub Action for Laravel with MySQL and Redis") |
|
|
960
961
|
| Laravel with `PostgreSQL` and `Redis` | `ubuntu` | [laravel-postgres.yml](./examples/laravel-postgres.yml "GitHub Action for Laravel with PostgreSQL and Redis") |
|
|
@@ -964,14 +965,16 @@ Examples of using `setup-php` with various PHP frameworks and packages.
|
|
|
964
965
|
| Lumen without services | `macOS`, `ubuntu` and `windows` | [lumen.yml](./examples/lumen.yml "GitHub Action for Lumen without services") |
|
|
965
966
|
| Phalcon with `MySQL` | `ubuntu` | [phalcon-mysql.yml](./examples/phalcon-mysql.yml "GitHub Action for Phalcon with MySQL") |
|
|
966
967
|
| Phalcon with `PostgreSQL` | `ubuntu` | [phalcon-postgres.yml](./examples/phalcon-postgres.yml "GitHub Action for Phalcon with PostgreSQL") |
|
|
967
|
-
| Roots/bedrock | `ubuntu` | [bedrock.yml](./examples/bedrock.yml "GitHub Action for Wordpress Development using @roots/bedrock") |
|
|
968
|
-
| Roots/sage | `ubuntu` | [sage.yml](./examples/sage.yml "GitHub Action for Wordpress Development using @roots/sage") |
|
|
969
968
|
| Slim Framework | `macOS`, `ubuntu` and `windows` | [slim-framework.yml](./examples/slim-framework.yml "GitHub Action for Slim Framework") |
|
|
970
969
|
| Symfony with `MySQL` | `ubuntu` | [symfony-mysql.yml](./examples/symfony-mysql.yml "GitHub Action for Symfony with MySQL") |
|
|
971
970
|
| Symfony with `PostgreSQL` | `ubuntu` | [symfony-postgres.yml](./examples/symfony-postgres.yml "GitHub Action for Symfony with PostgreSQL") |
|
|
972
971
|
| Symfony without services | `macOS`, `ubuntu` and `windows` | [symfony.yml](./examples/symfony.yml "GitHub Action for Symfony without services") |
|
|
973
|
-
|
|
|
974
|
-
|
|
|
972
|
+
| WordPress plugin | `ubuntu` | [wordpress.yml](./examples/wordpress.yml "GitHub Action for WordPress plugins") |
|
|
973
|
+
| WordPress with Roots/Bedrock | `ubuntu` | [bedrock.yml](./examples/bedrock.yml "GitHub Action for WordPress development using @roots/bedrock") |
|
|
974
|
+
| WordPress with Roots/Sage | `ubuntu` | [sage.yml](./examples/sage.yml "GitHub Action for WordPress development using @roots/sage") |
|
|
975
|
+
| Yii3 web application with `MySQL` | `ubuntu` | [yii3-mysql.yml](./examples/yii3-mysql.yml "GitHub Action for Yii3 web application with MySQL") |
|
|
976
|
+
| Yii3 web application with `PostgreSQL` | `ubuntu` | [yii3-postgres.yml](./examples/yii3-postgres.yml "GitHub Action for Yii3 web application with PostgreSQL") |
|
|
977
|
+
| Yii3 web application | `ubuntu` and `windows` | [yii3.yml](./examples/yii3.yml "GitHub Action for Yii3 web application") |
|
|
975
978
|
|
|
976
979
|
## :bookmark: Versioning
|
|
977
980
|
|
package/lib/config.js
CHANGED
|
@@ -45,7 +45,7 @@ async function addINIValuesUnix(ini_values_csv) {
|
|
|
45
45
|
'\n' + (await utils.addLog('$tick', line, 'Added to php.ini', 'linux'));
|
|
46
46
|
});
|
|
47
47
|
return ('echo "' +
|
|
48
|
-
ini_values.join('\n') +
|
|
48
|
+
ini_values.map(v => utils.escapeForShell(v, 'linux')).join('\n') +
|
|
49
49
|
'" | sudo tee -a "${pecl_file:-${ini_file[@]}}" >/dev/null 2>&1' +
|
|
50
50
|
script);
|
|
51
51
|
}
|
|
@@ -56,7 +56,10 @@ async function addINIValuesWindows(ini_values_csv) {
|
|
|
56
56
|
script +=
|
|
57
57
|
(await utils.addLog('$tick', line, 'Added to php.ini', 'win32')) + '\n';
|
|
58
58
|
});
|
|
59
|
-
return ('Add-Content "$php_dir\\php.ini" "' +
|
|
59
|
+
return ('Add-Content "$php_dir\\php.ini" "' +
|
|
60
|
+
ini_values.map(v => utils.escapeForShell(v, 'win32')).join('\n') +
|
|
61
|
+
'"' +
|
|
62
|
+
script);
|
|
60
63
|
}
|
|
61
64
|
async function addINIValues(ini_values_csv, os, no_step = false) {
|
|
62
65
|
let script = '\n';
|
package/lib/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,4CAeC;AAOD,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,4CAeC;AAOD,kDAeC;AASD,oCA+BC;AApFD,+CAAiC;AAO1B,KAAK,UAAU,gBAAgB,CACpC,cAAsB;IAEtB,MAAM,UAAU,GAAkB,MAAM,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvE,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,MAAM,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,WAAW,IAAY;QAC/D,MAAM;YACJ,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IACH,OAAO,CACL,QAAQ;QACR,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAChE,gEAAgE;QAChE,MAAM,CACP,CAAC;AACJ,CAAC;AAOM,KAAK,UAAU,mBAAmB,CACvC,cAAsB;IAEtB,MAAM,UAAU,GAAkB,MAAM,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvE,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,MAAM,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,WAAW,IAAY;QAC/D,MAAM;YACJ,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAC5E,CAAC,CAAC,CAAC;IACH,OAAO,CACL,mCAAmC;QACnC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAChE,GAAG;QACH,MAAM,CACP,CAAC;AACJ,CAAC;AASM,KAAK,UAAU,YAAY,CAChC,cAAsB,EACtB,EAAU,EACV,OAAO,GAAG,KAAK;IAEf,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,IAAI;YACP,MAAM;gBACJ,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;oBAC/C,CAAC,MAAM,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;oBAChC,IAAI,CAAC;YACP,MAAM;QACR,KAAK,KAAK,CAAC;QACX;YACE,MAAM,IAAI,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;YACjE,MAAM;IACV,CAAC;IACD,QAAQ,EAAE,EAAE,CAAC;QACX,KAAK,OAAO;YACV,OAAO,MAAM,GAAG,CAAC,MAAM,mBAAmB,CAAC,cAAc,CAAC,CAAC,CAAC;QAC9D,KAAK,QAAQ,CAAC;QACd,KAAK,OAAO;YACV,OAAO,MAAM,GAAG,CAAC,MAAM,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC;QAC3D;YACE,OAAO,MAAM,KAAK,CAAC,GAAG,CACpB,WAAW,GAAG,EAAE,GAAG,mBAAmB,EACtC,EAAE,EACF,OAAO,CACR,CAAC;IACN,CAAC;AACH,CAAC"}
|
package/lib/install.js
CHANGED
|
@@ -53,13 +53,13 @@ async function getScript(os) {
|
|
|
53
53
|
const filename = os + (await utils.scriptExtension(os));
|
|
54
54
|
const script_path = path_1.default.join(__dirname, '../src/scripts', filename);
|
|
55
55
|
const run_path = script_path.replace(os, 'run');
|
|
56
|
-
const extension_csv = await utils.getInput('extensions', false);
|
|
56
|
+
const extension_csv = utils.sanitizeShellInput(await utils.getInput('extensions', false), true);
|
|
57
57
|
const ini_values_csv = await utils.getInput('ini-values', false);
|
|
58
58
|
const coverage_driver = await utils.getInput('coverage', false);
|
|
59
59
|
const tools_csv = await utils.getInput('tools', false);
|
|
60
60
|
const version = await utils.parseVersion(await utils.readPHPVersion());
|
|
61
61
|
const ini_file = await utils.parseIniFile(await utils.getInput('ini-file', false));
|
|
62
|
-
let script = await utils.joins('.', script_path, version
|
|
62
|
+
let script = await utils.joins('.', script_path, `'${version}'`, ini_file);
|
|
63
63
|
if (extension_csv) {
|
|
64
64
|
script += await extensions.addExtension(extension_csv, version, os);
|
|
65
65
|
}
|
package/lib/install.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA,
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"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"}
|
package/lib/tools.d.ts
CHANGED
|
@@ -26,6 +26,8 @@ export interface ToolData {
|
|
|
26
26
|
export type ToolInput = Omit<ToolData, 'version' | 'url'> & {
|
|
27
27
|
version?: string;
|
|
28
28
|
};
|
|
29
|
+
export declare function skipGitHubAuthForComposerVersion(version: string): boolean;
|
|
30
|
+
export declare function cleanComposerAuthJson(): void;
|
|
29
31
|
export declare function getSemverVersion(data: ToolData): Promise<string>;
|
|
30
32
|
export declare function getLatestVersion(data: ToolInput): Promise<string>;
|
|
31
33
|
export declare function getVersion(version: string, data: ToolData): Promise<string>;
|
package/lib/tools.js
CHANGED
|
@@ -37,6 +37,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.functionRecord = void 0;
|
|
40
|
+
exports.skipGitHubAuthForComposerVersion = skipGitHubAuthForComposerVersion;
|
|
41
|
+
exports.cleanComposerAuthJson = cleanComposerAuthJson;
|
|
40
42
|
exports.getSemverVersion = getSemverVersion;
|
|
41
43
|
exports.getLatestVersion = getLatestVersion;
|
|
42
44
|
exports.getVersion = getVersion;
|
|
@@ -64,6 +66,38 @@ const cv = __importStar(require("compare-versions"));
|
|
|
64
66
|
const fetch = __importStar(require("./fetch"));
|
|
65
67
|
const packagist = __importStar(require("./packagist"));
|
|
66
68
|
const utils = __importStar(require("./utils"));
|
|
69
|
+
function skipGitHubAuthForComposerVersion(version) {
|
|
70
|
+
if (!/^\d+\.\d+\.\d+(?:-[\w-]+)?$/.test(version)) {
|
|
71
|
+
return false;
|
|
72
|
+
}
|
|
73
|
+
return fs_1.default
|
|
74
|
+
.readFileSync(path_1.default.join(__dirname, '../src/configs/composer-gh-auth-no-op'), 'utf8')
|
|
75
|
+
.trim()
|
|
76
|
+
.split(/\r?\n/)
|
|
77
|
+
.some(range => {
|
|
78
|
+
const [min, max] = range.trim().split(/\s+/);
|
|
79
|
+
return (cv.compareVersions(version, min) >= 0 &&
|
|
80
|
+
cv.compareVersions(version, max) < 0);
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
function cleanComposerAuthJson() {
|
|
84
|
+
try {
|
|
85
|
+
const auth_json = process.env['COMPOSER_AUTH_JSON'] || '';
|
|
86
|
+
if (!auth_json.includes('github-oauth'))
|
|
87
|
+
return;
|
|
88
|
+
const auth = JSON.parse(auth_json);
|
|
89
|
+
delete auth['github-oauth'];
|
|
90
|
+
if (!Object.keys(auth).length) {
|
|
91
|
+
delete process.env['COMPOSER_AUTH_JSON'];
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
process.env['COMPOSER_AUTH_JSON'] = JSON.stringify(auth);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
catch {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
67
101
|
async function getSemverVersion(data) {
|
|
68
102
|
const fixSemver = (t) => {
|
|
69
103
|
if (/^\d+\.\d+\.\d+(-|$)/.test(t))
|
|
@@ -136,7 +170,7 @@ async function getVersion(version, data) {
|
|
|
136
170
|
case !!data.repository && major_minor_regex.test(data.version):
|
|
137
171
|
return await getSemverVersion(data);
|
|
138
172
|
default:
|
|
139
|
-
return data.version.replace(/[
|
|
173
|
+
return data.version.replace(/[^a-zA-Z0-9_.:@+,/-]/g, '');
|
|
140
174
|
}
|
|
141
175
|
}
|
|
142
176
|
async function getRelease(release, data) {
|
|
@@ -209,7 +243,9 @@ async function addArchive(data) {
|
|
|
209
243
|
async function addPackage(data) {
|
|
210
244
|
const command = await utils.getCommand(data.os, 'composer_tool');
|
|
211
245
|
const parts = data.repository.split('/');
|
|
212
|
-
const args =
|
|
246
|
+
const args = [parts[1], data.release, parts[0] + '/', data.scope]
|
|
247
|
+
.map(a => utils.safeArg(a, data.os))
|
|
248
|
+
.join(' ');
|
|
213
249
|
return command + args;
|
|
214
250
|
}
|
|
215
251
|
async function addBlackfirePlayer(data) {
|
|
@@ -254,6 +290,7 @@ async function addComposer(data) {
|
|
|
254
290
|
const version_source_url = `${getcomposer}/download/${channel}/composer.phar`;
|
|
255
291
|
let cache_url = `${releases_url},${spc_url},${cds_url}`;
|
|
256
292
|
let source_url = `${getcomposer}/composer.phar`;
|
|
293
|
+
let skip_composer_github_auth = '';
|
|
257
294
|
switch (true) {
|
|
258
295
|
case /^snapshot$/.test(channel):
|
|
259
296
|
source_url = is_lts ? lts_url : source_url;
|
|
@@ -264,7 +301,11 @@ async function addComposer(data) {
|
|
|
264
301
|
case /^1$/.test(channel):
|
|
265
302
|
source_url = channel_source_url;
|
|
266
303
|
break;
|
|
267
|
-
case /^\d+\.\d+\.\d+[\w-]
|
|
304
|
+
case /^\d+\.\d+\.\d+(?:-[\w-]+)?$/.test(data.version):
|
|
305
|
+
if (skipGitHubAuthForComposerVersion(data.version)) {
|
|
306
|
+
cleanComposerAuthJson();
|
|
307
|
+
skip_composer_github_auth = ' true';
|
|
308
|
+
}
|
|
268
309
|
cache_url = `${github}/${data.repository}/releases/download/${data.version}/composer.phar`;
|
|
269
310
|
source_url = version_source_url;
|
|
270
311
|
break;
|
|
@@ -273,7 +314,7 @@ async function addComposer(data) {
|
|
|
273
314
|
}
|
|
274
315
|
const use_cache = (await utils.readEnv('NO_TOOLS_CACHE')) !== 'true';
|
|
275
316
|
data.url = use_cache ? `${cache_url},${source_url}` : source_url;
|
|
276
|
-
data.version_parameter = data.version;
|
|
317
|
+
data.version_parameter = data.version + skip_composer_github_auth;
|
|
277
318
|
return await addArchive(data);
|
|
278
319
|
}
|
|
279
320
|
async function addDeployer(data) {
|
package/lib/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
package/lib/utils.d.ts
CHANGED
|
@@ -8,6 +8,9 @@ export declare function color(type: string): Promise<string>;
|
|
|
8
8
|
export declare function log(message: string, os: string, log_type: string): Promise<string>;
|
|
9
9
|
export declare function stepLog(message: string, os: string): Promise<string>;
|
|
10
10
|
export declare function addLog(mark: string, subject: string, message: string, os: string): Promise<string>;
|
|
11
|
+
export declare function escapeForShell(value: string, os: string): string;
|
|
12
|
+
export declare function safeArg(value: string, os: string): string;
|
|
13
|
+
export declare function sanitizeShellInput(value: string, strict?: boolean): string;
|
|
11
14
|
export declare function extensionArray(extension_csv: string): Promise<Array<string>>;
|
|
12
15
|
export declare function CSVArray(values_csv: string): Promise<Array<string>>;
|
|
13
16
|
export declare function getExtensionPrefix(extension: string): Promise<string>;
|
package/lib/utils.js
CHANGED
|
@@ -46,6 +46,9 @@ exports.color = color;
|
|
|
46
46
|
exports.log = log;
|
|
47
47
|
exports.stepLog = stepLog;
|
|
48
48
|
exports.addLog = addLog;
|
|
49
|
+
exports.escapeForShell = escapeForShell;
|
|
50
|
+
exports.safeArg = safeArg;
|
|
51
|
+
exports.sanitizeShellInput = sanitizeShellInput;
|
|
49
52
|
exports.extensionArray = extensionArray;
|
|
50
53
|
exports.CSVArray = CSVArray;
|
|
51
54
|
exports.getExtensionPrefix = getExtensionPrefix;
|
|
@@ -64,14 +67,19 @@ const path = __importStar(require("path"));
|
|
|
64
67
|
const core = __importStar(require("./core"));
|
|
65
68
|
const fetch = __importStar(require("./fetch"));
|
|
66
69
|
async function readEnv(property) {
|
|
70
|
+
if (!/^[A-Za-z0-9_-]+$/.test(property)) {
|
|
71
|
+
return '';
|
|
72
|
+
}
|
|
67
73
|
const property_lc = property.toLowerCase();
|
|
68
74
|
const property_uc = property.toUpperCase();
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
'')
|
|
75
|
+
const candidates = [
|
|
76
|
+
property,
|
|
77
|
+
property_lc,
|
|
78
|
+
property_uc,
|
|
79
|
+
property_lc.replace('_', '-'),
|
|
80
|
+
property_uc.replace('_', '-')
|
|
81
|
+
].filter((value, index, array) => array.indexOf(value) === index);
|
|
82
|
+
return candidates.map(name => process.env[name] || '').find(Boolean) || '';
|
|
75
83
|
}
|
|
76
84
|
async function getInput(name, mandatory) {
|
|
77
85
|
const input = core.getInput(name);
|
|
@@ -95,15 +103,27 @@ async function getManifestURLS() {
|
|
|
95
103
|
}
|
|
96
104
|
async function parseVersion(version) {
|
|
97
105
|
switch (true) {
|
|
106
|
+
case /^pre(-installed)?$/.test(version):
|
|
107
|
+
return 'pre';
|
|
98
108
|
case /^(latest|lowest|highest|nightly|master|\d+\.x)$/.test(version):
|
|
99
109
|
for (const manifestURL of await getManifestURLS()) {
|
|
100
110
|
const fetchResult = await fetch.fetch(manifestURL);
|
|
101
111
|
if (fetchResult['data'] ?? false) {
|
|
102
|
-
|
|
112
|
+
const resolved = JSON.parse(fetchResult['data'])[version];
|
|
113
|
+
if (resolved === undefined) {
|
|
114
|
+
throw new Error(`Invalid PHP version: ${version.slice(0, 20)}`);
|
|
115
|
+
}
|
|
116
|
+
if (!/^\d+\.\d+$/.test(resolved)) {
|
|
117
|
+
throw new Error(`Invalid PHP version in manifest: ${resolved.slice(0, 10)}`);
|
|
118
|
+
}
|
|
119
|
+
return resolved;
|
|
103
120
|
}
|
|
104
121
|
}
|
|
105
122
|
throw new Error(`Could not fetch the PHP version manifest.`);
|
|
106
123
|
default:
|
|
124
|
+
if (!/^\d+(\.\d+){0,2}$/.test(version)) {
|
|
125
|
+
throw new Error(`Invalid PHP version: ${version.slice(0, 20)}`);
|
|
126
|
+
}
|
|
107
127
|
switch (true) {
|
|
108
128
|
case version.length > 1:
|
|
109
129
|
return version.slice(0, 3);
|
|
@@ -113,14 +133,11 @@ async function parseVersion(version) {
|
|
|
113
133
|
}
|
|
114
134
|
}
|
|
115
135
|
async function parseIniFile(ini_file) {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
return ini_file;
|
|
119
|
-
case /php\.ini-(production|development)$/.test(ini_file):
|
|
120
|
-
return ini_file.split('-')[1];
|
|
121
|
-
default:
|
|
122
|
-
return 'production';
|
|
136
|
+
if (/^(production|development|none)$/.test(ini_file)) {
|
|
137
|
+
return ini_file;
|
|
123
138
|
}
|
|
139
|
+
const match = ini_file.match(/php\.ini-(production|development)$/);
|
|
140
|
+
return match ? match[1] : 'production';
|
|
124
141
|
}
|
|
125
142
|
async function asyncForEach(array, callback) {
|
|
126
143
|
for (const [index, element] of array.entries()) {
|
|
@@ -155,25 +172,45 @@ async function log(message, os, log_type) {
|
|
|
155
172
|
async function stepLog(message, os) {
|
|
156
173
|
switch (os) {
|
|
157
174
|
case 'win32':
|
|
158
|
-
return 'Step-Log "' + message + '"';
|
|
175
|
+
return 'Step-Log "' + escapeForShell(message, os) + '"';
|
|
159
176
|
case 'linux':
|
|
160
177
|
case 'darwin':
|
|
161
|
-
return 'step_log "' + message + '"';
|
|
178
|
+
return 'step_log "' + escapeForShell(message, os) + '"';
|
|
162
179
|
default:
|
|
163
180
|
return await log('Platform ' + os + ' is not supported', os, 'error');
|
|
164
181
|
}
|
|
165
182
|
}
|
|
166
183
|
async function addLog(mark, subject, message, os) {
|
|
184
|
+
const sub = escapeForShell(subject, os);
|
|
185
|
+
const msg = escapeForShell(message, os);
|
|
167
186
|
switch (os) {
|
|
168
187
|
case 'win32':
|
|
169
|
-
return
|
|
188
|
+
return `Add-Log "${mark}" "${sub}" "${msg}"`;
|
|
170
189
|
case 'linux':
|
|
171
190
|
case 'darwin':
|
|
172
|
-
return
|
|
191
|
+
return `add_log "${mark}" "${sub}" "${msg}"`;
|
|
173
192
|
default:
|
|
174
193
|
return await log('Platform ' + os + ' is not supported', os, 'error');
|
|
175
194
|
}
|
|
176
195
|
}
|
|
196
|
+
function escapeForShell(value, os) {
|
|
197
|
+
if (os === 'win32') {
|
|
198
|
+
return value.replace(/[`$"]/g, '`$&');
|
|
199
|
+
}
|
|
200
|
+
return value.replace(/[\\`$"]/g, '\\$&');
|
|
201
|
+
}
|
|
202
|
+
function safeArg(value, os) {
|
|
203
|
+
if (!/^[a-zA-Z0-9_./:@+,~^-]*$/.test(value)) {
|
|
204
|
+
return '"' + escapeForShell(value, os) + '"';
|
|
205
|
+
}
|
|
206
|
+
return value;
|
|
207
|
+
}
|
|
208
|
+
function sanitizeShellInput(value, strict = false) {
|
|
209
|
+
const pattern = strict
|
|
210
|
+
? /[$`"';|&(){}[\]\\<>*?\n\r\t]/g
|
|
211
|
+
: /[$`"';|&(){}[\]\\\n\r\t]/g;
|
|
212
|
+
return value.replace(pattern, '');
|
|
213
|
+
}
|
|
177
214
|
async function extensionArray(extension_csv) {
|
|
178
215
|
switch (extension_csv) {
|
|
179
216
|
case '':
|
|
@@ -185,11 +222,11 @@ async function extensionArray(extension_csv) {
|
|
|
185
222
|
...extension_csv
|
|
186
223
|
.split(',')
|
|
187
224
|
.map(function (extension) {
|
|
225
|
+
extension = extension.trim().replace(/^\\\s*/, '');
|
|
188
226
|
if (/.+-.+\/.+@.+/.test(extension)) {
|
|
189
227
|
return extension;
|
|
190
228
|
}
|
|
191
229
|
return extension
|
|
192
|
-
.trim()
|
|
193
230
|
.toLowerCase()
|
|
194
231
|
.replace(/^(:)?(php[-_]|none|zend )|(-[^-]*)-/, '$1$3');
|
|
195
232
|
})
|
|
@@ -293,16 +330,23 @@ async function parseExtensionSource(extension, prefix) {
|
|
|
293
330
|
matches[2] = matches[2] ? matches[2].slice(0, -1) : 'https://github.com';
|
|
294
331
|
return await joins('\nadd_extension_from_source', ...matches.splice(1, matches.length), prefix);
|
|
295
332
|
}
|
|
333
|
+
const VERSION_INPUT_REGEX = /^(latest|lowest|highest|nightly|master|pre|pre-installed|\d+\.x|\d+(\.\d+){0,2})$/;
|
|
334
|
+
function validatePHPVersionInput(version, source) {
|
|
335
|
+
if (!VERSION_INPUT_REGEX.test(version)) {
|
|
336
|
+
throw new Error(`Invalid PHP version in ${source}: ${version.slice(0, 20)}`);
|
|
337
|
+
}
|
|
338
|
+
return version;
|
|
339
|
+
}
|
|
296
340
|
async function readPHPVersion() {
|
|
297
341
|
const version = await getInput('php-version', false);
|
|
298
342
|
if (version) {
|
|
299
|
-
return version;
|
|
343
|
+
return validatePHPVersionInput(version, 'php-version input');
|
|
300
344
|
}
|
|
301
345
|
const versionFile = (await getInput('php-version-file', false)) || '.php-version';
|
|
302
346
|
if (fs_1.default.existsSync(versionFile)) {
|
|
303
347
|
const contents = fs_1.default.readFileSync(versionFile, 'utf8');
|
|
304
348
|
const match = contents.match(/^(?:php\s)?(\d+\.\d+\.\d+)$/m);
|
|
305
|
-
return match ? match[1] : contents.trim();
|
|
349
|
+
return validatePHPVersionInput(match ? match[1] : contents.trim(), versionFile);
|
|
306
350
|
}
|
|
307
351
|
else if (versionFile !== '.php-version') {
|
|
308
352
|
throw new Error(`Could not find '${versionFile}' file.`);
|
|
@@ -311,18 +355,15 @@ async function readPHPVersion() {
|
|
|
311
355
|
const composerLock = path.join(composerProjectDir, 'composer.lock');
|
|
312
356
|
if (fs_1.default.existsSync(composerLock)) {
|
|
313
357
|
const lockFileContents = JSON.parse(fs_1.default.readFileSync(composerLock, 'utf8'));
|
|
314
|
-
if (lockFileContents['platform-overrides']
|
|
315
|
-
lockFileContents['platform-overrides']['php'])
|
|
316
|
-
return lockFileContents['platform-overrides']['php'];
|
|
358
|
+
if (lockFileContents['platform-overrides']?.['php']) {
|
|
359
|
+
return validatePHPVersionInput(lockFileContents['platform-overrides']['php'], 'composer.lock platform-overrides.php');
|
|
317
360
|
}
|
|
318
361
|
}
|
|
319
362
|
const composerJson = path.join(composerProjectDir, 'composer.json');
|
|
320
363
|
if (fs_1.default.existsSync(composerJson)) {
|
|
321
364
|
const composerFileContents = JSON.parse(fs_1.default.readFileSync(composerJson, 'utf8'));
|
|
322
|
-
if (composerFileContents['config']
|
|
323
|
-
composerFileContents['config']['platform']
|
|
324
|
-
composerFileContents['config']['platform']['php']) {
|
|
325
|
-
return composerFileContents['config']['platform']['php'];
|
|
365
|
+
if (composerFileContents['config']?.['platform']?.['php']) {
|
|
366
|
+
return validatePHPVersionInput(composerFileContents['config']['platform']['php'], 'composer.json config.platform.php');
|
|
326
367
|
}
|
|
327
368
|
}
|
|
328
369
|
return 'latest';
|
package/lib/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "setup-php",
|
|
3
|
-
"version": "2.37.
|
|
3
|
+
"version": "2.37.2",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Setup PHP for use with GitHub Actions",
|
|
6
6
|
"main": "lib/install.js",
|
|
@@ -38,26 +38,26 @@
|
|
|
38
38
|
"compare-versions": "^6.1.1"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@eslint/compat": "^2.0
|
|
41
|
+
"@eslint/compat": "^2.1.0",
|
|
42
42
|
"@eslint/js": "^10.0.1",
|
|
43
43
|
"@types/jest": "^30.0.0",
|
|
44
|
-
"@types/node": "^25.
|
|
45
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
46
|
-
"@typescript-eslint/parser": "^8.
|
|
44
|
+
"@types/node": "^25.9.2",
|
|
45
|
+
"@typescript-eslint/eslint-plugin": "^8.60.1",
|
|
46
|
+
"@typescript-eslint/parser": "^8.60.1",
|
|
47
47
|
"@vercel/ncc": "^0.38.4",
|
|
48
|
-
"eslint": "^10.
|
|
48
|
+
"eslint": "^10.4.1",
|
|
49
49
|
"eslint-config-prettier": "^10.1.8",
|
|
50
|
-
"eslint-import-resolver-typescript": "^4.4.
|
|
50
|
+
"eslint-import-resolver-typescript": "^4.4.5",
|
|
51
51
|
"eslint-plugin-import-x": "^4.16.2",
|
|
52
|
-
"eslint-plugin-jest": "^29.15.
|
|
53
|
-
"eslint-plugin-prettier": "^5.5.
|
|
54
|
-
"globals": "^17.
|
|
55
|
-
"jest": "^30.
|
|
56
|
-
"jest-circus": "^30.
|
|
57
|
-
"nock": "^14.0.
|
|
58
|
-
"prettier": "^3.8.
|
|
52
|
+
"eslint-plugin-jest": "^29.15.2",
|
|
53
|
+
"eslint-plugin-prettier": "^5.5.6",
|
|
54
|
+
"globals": "^17.6.0",
|
|
55
|
+
"jest": "^30.4.2",
|
|
56
|
+
"jest-circus": "^30.4.2",
|
|
57
|
+
"nock": "^14.0.15",
|
|
58
|
+
"prettier": "^3.8.3",
|
|
59
59
|
"simple-git-hooks": "^2.13.1",
|
|
60
|
-
"ts-jest": "^29.4.
|
|
60
|
+
"ts-jest": "^29.4.11",
|
|
61
61
|
"typescript": "^5.9.3"
|
|
62
62
|
},
|
|
63
63
|
"overrides": {
|
package/src/config.ts
CHANGED
|
@@ -16,7 +16,7 @@ export async function addINIValuesUnix(
|
|
|
16
16
|
});
|
|
17
17
|
return (
|
|
18
18
|
'echo "' +
|
|
19
|
-
ini_values.join('\n') +
|
|
19
|
+
ini_values.map(v => utils.escapeForShell(v, 'linux')).join('\n') +
|
|
20
20
|
'" | sudo tee -a "${pecl_file:-${ini_file[@]}}" >/dev/null 2>&1' +
|
|
21
21
|
script
|
|
22
22
|
);
|
|
@@ -37,7 +37,10 @@ export async function addINIValuesWindows(
|
|
|
37
37
|
(await utils.addLog('$tick', line, 'Added to php.ini', 'win32')) + '\n';
|
|
38
38
|
});
|
|
39
39
|
return (
|
|
40
|
-
'Add-Content "$php_dir\\php.ini" "' +
|
|
40
|
+
'Add-Content "$php_dir\\php.ini" "' +
|
|
41
|
+
ini_values.map(v => utils.escapeForShell(v, 'win32')).join('\n') +
|
|
42
|
+
'"' +
|
|
43
|
+
script
|
|
41
44
|
);
|
|
42
45
|
}
|
|
43
46
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Composer %s has a known GitHub token parsing bug that exposes GitHub tokens in the error output. So, GitHub authentication has not been configured for this Composer version. Please update to the latest version of Composer. See: https://github.com/composer/composer/security/advisories/GHSA-f9f8-rm49-7jv2
|
package/src/install.ts
CHANGED
|
@@ -18,7 +18,10 @@ export async function getScript(os: string): Promise<string> {
|
|
|
18
18
|
const filename = os + (await utils.scriptExtension(os));
|
|
19
19
|
const script_path = path.join(__dirname, '../src/scripts', filename);
|
|
20
20
|
const run_path = script_path.replace(os, 'run');
|
|
21
|
-
const extension_csv: string =
|
|
21
|
+
const extension_csv: string = utils.sanitizeShellInput(
|
|
22
|
+
await utils.getInput('extensions', false),
|
|
23
|
+
true
|
|
24
|
+
);
|
|
22
25
|
const ini_values_csv: string = await utils.getInput('ini-values', false);
|
|
23
26
|
const coverage_driver: string = await utils.getInput('coverage', false);
|
|
24
27
|
const tools_csv: string = await utils.getInput('tools', false);
|
|
@@ -28,7 +31,7 @@ export async function getScript(os: string): Promise<string> {
|
|
|
28
31
|
const ini_file: string = await utils.parseIniFile(
|
|
29
32
|
await utils.getInput('ini-file', false)
|
|
30
33
|
);
|
|
31
|
-
let script = await utils.joins('.', script_path, version
|
|
34
|
+
let script = await utils.joins('.', script_path, `'${version}'`, ini_file);
|
|
32
35
|
if (extension_csv) {
|
|
33
36
|
script += await extensions.addExtension(extension_csv, version, os);
|
|
34
37
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# Helper function to add gearman extension.
|
|
2
2
|
add_gearman_helper() {
|
|
3
|
-
install_packages libgearman-dev
|
|
4
3
|
enable_extension gearman extension
|
|
5
4
|
if ! check_extension gearman; then
|
|
6
5
|
status="Installed and enabled"
|
|
6
|
+
install_packages libgearman-dev
|
|
7
7
|
if [[ "${version:?}" =~ 5.[3-6] ]]; then
|
|
8
8
|
pecl_install gearman-1.1.2
|
|
9
9
|
elif [[ "${version:?}" =~ 7.0 ]]; then
|
|
@@ -19,26 +19,6 @@ Function Get-PhalconReleaseAssetUrl() {
|
|
|
19
19
|
$match = (Get-File -Url "$github/$releases/expanded_assets/v$Semver").Links.href | Select-String -Pattern "(phalcon_${arch}_.*_php${version}_${extension_version}.*[0-9]${nts}.zip)"
|
|
20
20
|
} catch { }
|
|
21
21
|
}
|
|
22
|
-
} else {
|
|
23
|
-
$nts = if (!$installed.ThreadSafe) { "-nts" } else { "-ts" }
|
|
24
|
-
try {
|
|
25
|
-
$match = (Invoke-RestMethod -Uri "$domain/$releases/tags/v$Semver").assets | Select-String -Pattern "browser_download_url=.*(php_phalcon-php${version}${nts}-windows.*-x64.zip)"
|
|
26
|
-
} catch { }
|
|
27
|
-
if($null -eq $match) {
|
|
28
|
-
try {
|
|
29
|
-
$match = (Get-File -Url "$github/$releases/expanded_assets/v$Semver").Links.href | Select-String -Pattern "(php_phalcon-php${version}${nts}-windows.*-x64.zip)"
|
|
30
|
-
} catch { }
|
|
31
|
-
}
|
|
32
|
-
if($null -eq $match) {
|
|
33
|
-
try {
|
|
34
|
-
$match = (Invoke-RestMethod -Uri "$domain/$releases/tags/v$Semver").assets | Select-String -Pattern "browser_download_url=.*(phalcon-php${version}${nts}-windows.*-x64.zip)"
|
|
35
|
-
} catch { }
|
|
36
|
-
}
|
|
37
|
-
if($null -eq $match) {
|
|
38
|
-
try {
|
|
39
|
-
$match = (Get-File -Url "$github/$releases/expanded_assets/v$Semver").Links.href | Select-String -Pattern "(phalcon-php${version}${nts}-windows.*-x64.zip)"
|
|
40
|
-
} catch { }
|
|
41
|
-
}
|
|
42
22
|
}
|
|
43
23
|
if($NULL -ne $match) {
|
|
44
24
|
return "$github/$releases/download/v$Semver/$($match.Matches[0].Groups[1].Value)"
|
|
@@ -73,6 +53,8 @@ Function Get-PhalconSemver() {
|
|
|
73
53
|
return '4.1.0'
|
|
74
54
|
} elseif (($extension_version -eq '5') -and ($version -eq '7.4')) {
|
|
75
55
|
return '5.4.0'
|
|
56
|
+
} elseif (($extension_version -eq '5') -and ($version -eq '8.0')) {
|
|
57
|
+
return '5.10.0'
|
|
76
58
|
}
|
|
77
59
|
return Get-PeclPackageVersion phalcon $extension_version stable stable | Select-Object -First 1
|
|
78
60
|
}
|
|
@@ -80,7 +62,7 @@ Function Get-PhalconSemver() {
|
|
|
80
62
|
# Function to install phalcon
|
|
81
63
|
Function Add-PhalconHelper() {
|
|
82
64
|
$semver = Get-PhalconSemver
|
|
83
|
-
if ($extension_version -
|
|
65
|
+
if ($extension_version -match '[3-4]') {
|
|
84
66
|
Add-PhalconFromGitHub $semver
|
|
85
67
|
} else {
|
|
86
68
|
Add-Extension -Extension phalcon -Stability stable -Extension_version $semver
|
|
@@ -3,6 +3,7 @@ $composer_home = "$env:APPDATA\Composer"
|
|
|
3
3
|
$composer_bin = "$composer_home\vendor\bin"
|
|
4
4
|
$composer_json = "$composer_home\composer.json"
|
|
5
5
|
$composer_lock = "$composer_home\composer.lock"
|
|
6
|
+
$skip_composer_github_auth = $false
|
|
6
7
|
|
|
7
8
|
# Function to configure composer.
|
|
8
9
|
Function Edit-ComposerConfig() {
|
|
@@ -23,6 +24,7 @@ Function Edit-ComposerConfig() {
|
|
|
23
24
|
if (-not(Test-Path $composer_json)) {
|
|
24
25
|
Set-Content -Path $composer_json -Value "{}"
|
|
25
26
|
}
|
|
27
|
+
Get-ToolVersion "composer" $null | Out-Null
|
|
26
28
|
Set-ComposerEnv
|
|
27
29
|
Add-Path $composer_bin
|
|
28
30
|
Set-ComposerAuth
|
|
@@ -74,8 +76,18 @@ function Test-GitHubPublicAccess {
|
|
|
74
76
|
}
|
|
75
77
|
}
|
|
76
78
|
|
|
79
|
+
Function Write-ComposerGhAuthNoOpWarning() {
|
|
80
|
+
$message = (Get-Content (Join-Path $src 'configs\composer-gh-auth-warn') -Raw).Trim().Replace('%s', $composer_version)
|
|
81
|
+
if($env:fail_fast -eq 'true') {
|
|
82
|
+
Add-Log "$cross" "composer" $message
|
|
83
|
+
} else {
|
|
84
|
+
Write-Output "::warning::$message"
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
77
88
|
# Function to setup authentication in composer.
|
|
78
89
|
Function Set-ComposerAuth() {
|
|
90
|
+
$token = if ($env:COMPOSER_TOKEN) { $env:COMPOSER_TOKEN } else { $env:GITHUB_TOKEN }
|
|
79
91
|
if(Test-Path env:COMPOSER_AUTH_JSON) {
|
|
80
92
|
if(Test-Json -JSON $env:COMPOSER_AUTH_JSON) {
|
|
81
93
|
Set-Content -Path $composer_home\auth.json -Value $env:COMPOSER_AUTH_JSON
|
|
@@ -83,13 +95,18 @@ Function Set-ComposerAuth() {
|
|
|
83
95
|
Add-Log "$cross" "composer" "Could not parse COMPOSER_AUTH_JSON as valid JSON"
|
|
84
96
|
}
|
|
85
97
|
}
|
|
98
|
+
if($skip_composer_github_auth) {
|
|
99
|
+
Write-ComposerGhAuthNoOpWarning
|
|
100
|
+
}
|
|
86
101
|
$composer_auth = @()
|
|
87
102
|
if(Test-Path env:PACKAGIST_TOKEN) {
|
|
88
103
|
$composer_auth += '"http-basic": {"repo.packagist.com": { "username": "token", "password": "' + $env:PACKAGIST_TOKEN + '"}}'
|
|
89
104
|
}
|
|
90
105
|
$write_token = $true
|
|
91
|
-
$token = if ($env:COMPOSER_TOKEN) { $env:COMPOSER_TOKEN } else { $env:GITHUB_TOKEN }
|
|
92
106
|
if ($token) {
|
|
107
|
+
if ($skip_composer_github_auth) {
|
|
108
|
+
$write_token = $false
|
|
109
|
+
}
|
|
93
110
|
if ($env:GITHUB_SERVER_URL -ne "https://github.com" -and -not(Test-GitHubPublicAccess $token)) {
|
|
94
111
|
$write_token = $false
|
|
95
112
|
}
|
|
@@ -210,8 +227,13 @@ Function Add-Tool() {
|
|
|
210
227
|
[ValidateNotNull()]
|
|
211
228
|
$tool,
|
|
212
229
|
[Parameter(Position = 2, Mandatory = $false)]
|
|
213
|
-
$ver_param
|
|
230
|
+
$ver_param,
|
|
231
|
+
[Parameter(Position = 3, Mandatory = $false)]
|
|
232
|
+
$skip_composer_github_auth
|
|
214
233
|
)
|
|
234
|
+
if($tool -eq "composer") {
|
|
235
|
+
$script:skip_composer_github_auth = $skip_composer_github_auth -eq 'true'
|
|
236
|
+
}
|
|
215
237
|
$urls = $urls -split ','
|
|
216
238
|
$tool_path = "$bin_dir\$tool"
|
|
217
239
|
$is_exe = ((($urls[0] | Split-Path -Extension).ToLowerInvariant()) -eq '.exe')
|
|
@@ -3,6 +3,7 @@ export composer_home="$HOME/.composer"
|
|
|
3
3
|
export composer_bin="$composer_home/vendor/bin"
|
|
4
4
|
export composer_json="$composer_home/composer.json"
|
|
5
5
|
export composer_lock="$composer_home/composer.lock"
|
|
6
|
+
skip_composer_github_auth=false
|
|
6
7
|
|
|
7
8
|
# Function to extract tool version.
|
|
8
9
|
get_tool_version() {
|
|
@@ -41,6 +42,7 @@ configure_composer() {
|
|
|
41
42
|
echo '{}' | tee "$composer_json" >/dev/null
|
|
42
43
|
chmod 644 "$composer_json"
|
|
43
44
|
fi
|
|
45
|
+
get_tool_version composer >/dev/null
|
|
44
46
|
set_composer_env
|
|
45
47
|
add_path "$composer_bin"
|
|
46
48
|
set_composer_auth
|
|
@@ -70,22 +72,39 @@ can_access_public_github() {
|
|
|
70
72
|
curl --fail -s -H "Authorization: token $1" 'https://api.github.com/' >/dev/null 2>&1
|
|
71
73
|
}
|
|
72
74
|
|
|
75
|
+
composer_gh_auth_no_op() {
|
|
76
|
+
local message
|
|
77
|
+
message="$(<"${src:?}"/configs/composer-gh-auth-warn)"
|
|
78
|
+
message="${message//%s/$composer_version}"
|
|
79
|
+
if [ "${fail_fast:-false}" = "true" ]; then
|
|
80
|
+
add_log "${cross:?}" "composer" "$message"
|
|
81
|
+
else
|
|
82
|
+
echo "::warning::$message"
|
|
83
|
+
fi
|
|
84
|
+
}
|
|
85
|
+
|
|
73
86
|
# Function to setup authentication in composer.
|
|
74
87
|
set_composer_auth() {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
88
|
+
token="${COMPOSER_TOKEN:-$GITHUB_TOKEN}"
|
|
89
|
+
if [ -n "${COMPOSER_AUTH_JSON:-}" ]; then
|
|
90
|
+
if printf '%s' "$COMPOSER_AUTH_JSON" | jq -e . >/dev/null; then
|
|
91
|
+
printf '%s' "$COMPOSER_AUTH_JSON" | tee "$composer_home/auth.json" >/dev/null
|
|
78
92
|
else
|
|
79
93
|
add_log "${cross:?}" "composer" "Could not parse COMPOSER_AUTH_JSON as valid JSON"
|
|
80
94
|
fi
|
|
81
95
|
fi
|
|
96
|
+
if [ "$skip_composer_github_auth" = "true" ]; then
|
|
97
|
+
composer_gh_auth_no_op
|
|
98
|
+
fi
|
|
82
99
|
composer_auth=()
|
|
83
100
|
if [ -n "$PACKAGIST_TOKEN" ]; then
|
|
84
101
|
composer_auth+=( '"http-basic": {"repo.packagist.com": { "username": "token", "password": "'"$PACKAGIST_TOKEN"'"}}' )
|
|
85
102
|
fi
|
|
86
|
-
token="${COMPOSER_TOKEN:-$GITHUB_TOKEN}"
|
|
87
103
|
if [ -n "$token" ]; then
|
|
88
104
|
write_token=true
|
|
105
|
+
if [ "$skip_composer_github_auth" = "true" ]; then
|
|
106
|
+
write_token=false
|
|
107
|
+
fi
|
|
89
108
|
if [ "$GITHUB_SERVER_URL" != "https://github.com" ]; then
|
|
90
109
|
can_access_public_github "$token" || write_token=false
|
|
91
110
|
fi
|
|
@@ -182,6 +201,9 @@ add_tool() {
|
|
|
182
201
|
url=$1
|
|
183
202
|
tool=$2
|
|
184
203
|
ver_param=$3
|
|
204
|
+
if [ "$tool" = "composer" ]; then
|
|
205
|
+
skip_composer_github_auth="${4:-false}"
|
|
206
|
+
fi
|
|
185
207
|
tool_path="$tool_path_dir/$tool"
|
|
186
208
|
if ! [ -d "$tool_path_dir" ]; then
|
|
187
209
|
sudo mkdir -p "$tool_path_dir"
|
|
@@ -206,8 +228,8 @@ add_tool() {
|
|
|
206
228
|
url[0]="${url[0]//releases\/latest\/download/releases/download/$(get -s -n "" "$(echo "${url[0]}" | cut -d '/' -f '1-5')/releases" | grep -Eo -m 1 "([0-9]+\.[0-9]+\.[0-9]+)/$(echo "${url[0]}" | sed -e "s/.*\///")" | cut -d '/' -f 1)}"
|
|
207
229
|
status_code=$(get -v -e "$tool_path" "${url[0]}")
|
|
208
230
|
fi
|
|
209
|
-
if [ "$status_code" = "200" ]
|
|
210
|
-
sudo cp -a "$tool_path" "$cache_path"
|
|
231
|
+
if [ "$status_code" = "200" ]; then
|
|
232
|
+
[ "$use_cache" = "true" ] && sudo cp -a "$tool_path" "$cache_path"
|
|
211
233
|
elif [ -f "$tool_path.bak" ]; then
|
|
212
234
|
sudo mv "$tool_path.bak" "$tool_path"
|
|
213
235
|
fi
|
|
@@ -215,8 +237,8 @@ add_tool() {
|
|
|
215
237
|
fi
|
|
216
238
|
if [ "$status_code" = "200" ]; then
|
|
217
239
|
add_tools_helper "$tool"
|
|
218
|
-
[ -L "$tool_cache_path_dir/$tool" ] || sudo ln -s "$tool_path" "$tool_cache_path_dir/$tool" 2>/dev/null || true
|
|
219
240
|
tool_version=$(get_tool_version "$tool" "$ver_param")
|
|
241
|
+
sudo ln -sfn "$tool_path" "$tool_cache_path_dir/$tool" 2>/dev/null || true
|
|
220
242
|
add_log "${tick:?}" "$tool" "Added $tool $tool_version"
|
|
221
243
|
else
|
|
222
244
|
if [ "$tool" = "composer" ]; then
|
package/src/scripts/win32.ps1
CHANGED
|
@@ -203,16 +203,20 @@ Function Install-PSPackage() {
|
|
|
203
203
|
$cmdlet
|
|
204
204
|
)
|
|
205
205
|
$module_path = "$bin_dir\$psm1_path.psm1"
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
206
|
+
$imported = $false
|
|
207
|
+
try {
|
|
208
|
+
if(-not (Test-Path $module_path -PathType Leaf)) {
|
|
209
|
+
$zip_file = "$bin_dir\$package.zip"
|
|
210
|
+
Get-File -Url $url -OutFile $zip_file
|
|
211
|
+
Expand-Archive -Path $zip_file -DestinationPath $bin_dir -Force -ErrorAction Stop
|
|
212
|
+
}
|
|
213
|
+
Import-Module $module_path -ErrorAction Stop
|
|
214
|
+
$imported = $null -ne (Get-Command $cmdlet -ErrorAction SilentlyContinue)
|
|
215
|
+
} catch { }
|
|
216
|
+
if($imported) {
|
|
215
217
|
Add-ToProfile $current_profile "$package-search" "Import-Module $module_path"
|
|
218
|
+
} else {
|
|
219
|
+
Install-Module -Name $package -Force
|
|
216
220
|
}
|
|
217
221
|
}
|
|
218
222
|
|
package/src/tools.ts
CHANGED
|
@@ -95,6 +95,42 @@ interface DeployerManifestEntry {
|
|
|
95
95
|
url: string;
|
|
96
96
|
}
|
|
97
97
|
|
|
98
|
+
export function skipGitHubAuthForComposerVersion(version: string): boolean {
|
|
99
|
+
if (!/^\d+\.\d+\.\d+(?:-[\w-]+)?$/.test(version)) {
|
|
100
|
+
return false;
|
|
101
|
+
}
|
|
102
|
+
return fs
|
|
103
|
+
.readFileSync(
|
|
104
|
+
path.join(__dirname, '../src/configs/composer-gh-auth-no-op'),
|
|
105
|
+
'utf8'
|
|
106
|
+
)
|
|
107
|
+
.trim()
|
|
108
|
+
.split(/\r?\n/)
|
|
109
|
+
.some(range => {
|
|
110
|
+
const [min, max] = range.trim().split(/\s+/);
|
|
111
|
+
return (
|
|
112
|
+
cv.compareVersions(version, min) >= 0 &&
|
|
113
|
+
cv.compareVersions(version, max) < 0
|
|
114
|
+
);
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
export function cleanComposerAuthJson(): void {
|
|
119
|
+
try {
|
|
120
|
+
const auth_json = process.env['COMPOSER_AUTH_JSON'] || '';
|
|
121
|
+
if (!auth_json.includes('github-oauth')) return;
|
|
122
|
+
const auth = JSON.parse(auth_json);
|
|
123
|
+
delete auth['github-oauth'];
|
|
124
|
+
if (!Object.keys(auth).length) {
|
|
125
|
+
delete process.env['COMPOSER_AUTH_JSON'];
|
|
126
|
+
} else {
|
|
127
|
+
process.env['COMPOSER_AUTH_JSON'] = JSON.stringify(auth);
|
|
128
|
+
}
|
|
129
|
+
} catch {
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
|
|
98
134
|
/**
|
|
99
135
|
* Function to get version in semver format.
|
|
100
136
|
*
|
|
@@ -195,7 +231,7 @@ export async function getVersion(
|
|
|
195
231
|
case !!data.repository && major_minor_regex.test(data.version):
|
|
196
232
|
return await getSemverVersion(data);
|
|
197
233
|
default:
|
|
198
|
-
return data.version.replace(/[
|
|
234
|
+
return data.version.replace(/[^a-zA-Z0-9_.:@+,/-]/g, '');
|
|
199
235
|
}
|
|
200
236
|
}
|
|
201
237
|
|
|
@@ -311,12 +347,9 @@ export async function addArchive(data: ToolData): Promise<string> {
|
|
|
311
347
|
export async function addPackage(data: ToolData): Promise<string> {
|
|
312
348
|
const command = await utils.getCommand(data.os, 'composer_tool');
|
|
313
349
|
const parts: string[] = data.repository.split('/');
|
|
314
|
-
const args
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
parts[0] + '/',
|
|
318
|
-
data.scope
|
|
319
|
-
);
|
|
350
|
+
const args = [parts[1], data.release, parts[0] + '/', data.scope]
|
|
351
|
+
.map(a => utils.safeArg(a, data.os))
|
|
352
|
+
.join(' ');
|
|
320
353
|
return command + args;
|
|
321
354
|
}
|
|
322
355
|
|
|
@@ -383,6 +416,7 @@ export async function addComposer(data: ToolData): Promise<string> {
|
|
|
383
416
|
const version_source_url = `${getcomposer}/download/${channel}/composer.phar`;
|
|
384
417
|
let cache_url = `${releases_url},${spc_url},${cds_url}`;
|
|
385
418
|
let source_url = `${getcomposer}/composer.phar`;
|
|
419
|
+
let skip_composer_github_auth = '';
|
|
386
420
|
switch (true) {
|
|
387
421
|
case /^snapshot$/.test(channel):
|
|
388
422
|
source_url = is_lts ? lts_url : source_url;
|
|
@@ -393,7 +427,11 @@ export async function addComposer(data: ToolData): Promise<string> {
|
|
|
393
427
|
case /^1$/.test(channel):
|
|
394
428
|
source_url = channel_source_url;
|
|
395
429
|
break;
|
|
396
|
-
case /^\d+\.\d+\.\d+[\w-]
|
|
430
|
+
case /^\d+\.\d+\.\d+(?:-[\w-]+)?$/.test(data.version):
|
|
431
|
+
if (skipGitHubAuthForComposerVersion(data.version)) {
|
|
432
|
+
cleanComposerAuthJson();
|
|
433
|
+
skip_composer_github_auth = ' true';
|
|
434
|
+
}
|
|
397
435
|
cache_url = `${github}/${data.repository}/releases/download/${data.version}/composer.phar`;
|
|
398
436
|
source_url = version_source_url;
|
|
399
437
|
break;
|
|
@@ -402,7 +440,7 @@ export async function addComposer(data: ToolData): Promise<string> {
|
|
|
402
440
|
}
|
|
403
441
|
const use_cache: boolean = (await utils.readEnv('NO_TOOLS_CACHE')) !== 'true';
|
|
404
442
|
data.url = use_cache ? `${cache_url},${source_url}` : source_url;
|
|
405
|
-
data.version_parameter = data.version;
|
|
443
|
+
data.version_parameter = data.version + skip_composer_github_auth;
|
|
406
444
|
return await addArchive(data);
|
|
407
445
|
}
|
|
408
446
|
|
package/src/utils.ts
CHANGED
|
@@ -9,16 +9,19 @@ import * as fetch from './fetch';
|
|
|
9
9
|
* @param property
|
|
10
10
|
*/
|
|
11
11
|
export async function readEnv(property: string): Promise<string> {
|
|
12
|
+
if (!/^[A-Za-z0-9_-]+$/.test(property)) {
|
|
13
|
+
return '';
|
|
14
|
+
}
|
|
12
15
|
const property_lc: string = property.toLowerCase();
|
|
13
16
|
const property_uc: string = property.toUpperCase();
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
);
|
|
17
|
+
const candidates = [
|
|
18
|
+
property,
|
|
19
|
+
property_lc,
|
|
20
|
+
property_uc,
|
|
21
|
+
property_lc.replace('_', '-'),
|
|
22
|
+
property_uc.replace('_', '-')
|
|
23
|
+
].filter((value, index, array) => array.indexOf(value) === index);
|
|
24
|
+
return candidates.map(name => process.env[name] || '').find(Boolean) || '';
|
|
22
25
|
}
|
|
23
26
|
|
|
24
27
|
/**
|
|
@@ -62,15 +65,31 @@ export async function getManifestURLS(): Promise<string[]> {
|
|
|
62
65
|
*/
|
|
63
66
|
export async function parseVersion(version: string): Promise<string> {
|
|
64
67
|
switch (true) {
|
|
68
|
+
case /^pre(-installed)?$/.test(version):
|
|
69
|
+
return 'pre';
|
|
65
70
|
case /^(latest|lowest|highest|nightly|master|\d+\.x)$/.test(version):
|
|
66
71
|
for (const manifestURL of await getManifestURLS()) {
|
|
67
72
|
const fetchResult = await fetch.fetch(manifestURL);
|
|
68
73
|
if (fetchResult['data'] ?? false) {
|
|
69
|
-
|
|
74
|
+
const resolved: string | undefined = JSON.parse(fetchResult['data'])[
|
|
75
|
+
version
|
|
76
|
+
];
|
|
77
|
+
if (resolved === undefined) {
|
|
78
|
+
throw new Error(`Invalid PHP version: ${version.slice(0, 20)}`);
|
|
79
|
+
}
|
|
80
|
+
if (!/^\d+\.\d+$/.test(resolved)) {
|
|
81
|
+
throw new Error(
|
|
82
|
+
`Invalid PHP version in manifest: ${resolved.slice(0, 10)}`
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
return resolved;
|
|
70
86
|
}
|
|
71
87
|
}
|
|
72
88
|
throw new Error(`Could not fetch the PHP version manifest.`);
|
|
73
89
|
default:
|
|
90
|
+
if (!/^\d+(\.\d+){0,2}$/.test(version)) {
|
|
91
|
+
throw new Error(`Invalid PHP version: ${version.slice(0, 20)}`);
|
|
92
|
+
}
|
|
74
93
|
switch (true) {
|
|
75
94
|
case version.length > 1:
|
|
76
95
|
return version.slice(0, 3);
|
|
@@ -86,14 +105,11 @@ export async function parseVersion(version: string): Promise<string> {
|
|
|
86
105
|
* @param ini_file
|
|
87
106
|
*/
|
|
88
107
|
export async function parseIniFile(ini_file: string): Promise<string> {
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
return ini_file;
|
|
92
|
-
case /php\.ini-(production|development)$/.test(ini_file):
|
|
93
|
-
return ini_file.split('-')[1];
|
|
94
|
-
default:
|
|
95
|
-
return 'production';
|
|
108
|
+
if (/^(production|development|none)$/.test(ini_file)) {
|
|
109
|
+
return ini_file;
|
|
96
110
|
}
|
|
111
|
+
const match = ini_file.match(/php\.ini-(production|development)$/);
|
|
112
|
+
return match ? match[1] : 'production';
|
|
97
113
|
}
|
|
98
114
|
|
|
99
115
|
/**
|
|
@@ -172,10 +188,10 @@ export async function log(
|
|
|
172
188
|
export async function stepLog(message: string, os: string): Promise<string> {
|
|
173
189
|
switch (os) {
|
|
174
190
|
case 'win32':
|
|
175
|
-
return 'Step-Log "' + message + '"';
|
|
191
|
+
return 'Step-Log "' + escapeForShell(message, os) + '"';
|
|
176
192
|
case 'linux':
|
|
177
193
|
case 'darwin':
|
|
178
|
-
return 'step_log "' + message + '"';
|
|
194
|
+
return 'step_log "' + escapeForShell(message, os) + '"';
|
|
179
195
|
default:
|
|
180
196
|
return await log('Platform ' + os + ' is not supported', os, 'error');
|
|
181
197
|
}
|
|
@@ -194,17 +210,40 @@ export async function addLog(
|
|
|
194
210
|
message: string,
|
|
195
211
|
os: string
|
|
196
212
|
): Promise<string> {
|
|
213
|
+
const sub = escapeForShell(subject, os);
|
|
214
|
+
const msg = escapeForShell(message, os);
|
|
197
215
|
switch (os) {
|
|
198
216
|
case 'win32':
|
|
199
|
-
return
|
|
217
|
+
return `Add-Log "${mark}" "${sub}" "${msg}"`;
|
|
200
218
|
case 'linux':
|
|
201
219
|
case 'darwin':
|
|
202
|
-
return
|
|
220
|
+
return `add_log "${mark}" "${sub}" "${msg}"`;
|
|
203
221
|
default:
|
|
204
222
|
return await log('Platform ' + os + ' is not supported', os, 'error');
|
|
205
223
|
}
|
|
206
224
|
}
|
|
207
225
|
|
|
226
|
+
export function escapeForShell(value: string, os: string): string {
|
|
227
|
+
if (os === 'win32') {
|
|
228
|
+
return value.replace(/[`$"]/g, '`$&');
|
|
229
|
+
}
|
|
230
|
+
return value.replace(/[\\`$"]/g, '\\$&');
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
export function safeArg(value: string, os: string): string {
|
|
234
|
+
if (!/^[a-zA-Z0-9_./:@+,~^-]*$/.test(value)) {
|
|
235
|
+
return '"' + escapeForShell(value, os) + '"';
|
|
236
|
+
}
|
|
237
|
+
return value;
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
export function sanitizeShellInput(value: string, strict = false): string {
|
|
241
|
+
const pattern = strict
|
|
242
|
+
? /[$`"';|&(){}[\]\\<>*?\n\r\t]/g
|
|
243
|
+
: /[$`"';|&(){}[\]\\\n\r\t]/g;
|
|
244
|
+
return value.replace(pattern, '');
|
|
245
|
+
}
|
|
246
|
+
|
|
208
247
|
/**
|
|
209
248
|
* Function to break extension csv into an array
|
|
210
249
|
*
|
|
@@ -224,11 +263,11 @@ export async function extensionArray(
|
|
|
224
263
|
.split(',')
|
|
225
264
|
|
|
226
265
|
.map(function (extension: string) {
|
|
266
|
+
extension = extension.trim().replace(/^\\\s*/, '');
|
|
227
267
|
if (/.+-.+\/.+@.+/.test(extension)) {
|
|
228
268
|
return extension;
|
|
229
269
|
}
|
|
230
270
|
return extension
|
|
231
|
-
.trim()
|
|
232
271
|
.toLowerCase()
|
|
233
272
|
.replace(/^(:)?(php[-_]|none|zend )|(-[^-]*)-/, '$1$3');
|
|
234
273
|
})
|
|
@@ -431,22 +470,35 @@ export async function parseExtensionSource(
|
|
|
431
470
|
);
|
|
432
471
|
}
|
|
433
472
|
|
|
473
|
+
const VERSION_INPUT_REGEX =
|
|
474
|
+
/^(latest|lowest|highest|nightly|master|pre|pre-installed|\d+\.x|\d+(\.\d+){0,2})$/;
|
|
475
|
+
|
|
476
|
+
function validatePHPVersionInput(version: string, source: string): string {
|
|
477
|
+
if (!VERSION_INPUT_REGEX.test(version)) {
|
|
478
|
+
throw new Error(
|
|
479
|
+
`Invalid PHP version in ${source}: ${version.slice(0, 20)}`
|
|
480
|
+
);
|
|
481
|
+
}
|
|
482
|
+
return version;
|
|
483
|
+
}
|
|
484
|
+
|
|
434
485
|
/**
|
|
435
486
|
* Read php version from input or file
|
|
436
487
|
*/
|
|
437
488
|
export async function readPHPVersion(): Promise<string> {
|
|
438
489
|
const version = await getInput('php-version', false);
|
|
439
490
|
if (version) {
|
|
440
|
-
return version;
|
|
491
|
+
return validatePHPVersionInput(version, 'php-version input');
|
|
441
492
|
}
|
|
442
493
|
const versionFile =
|
|
443
494
|
(await getInput('php-version-file', false)) || '.php-version';
|
|
444
495
|
if (fs.existsSync(versionFile)) {
|
|
445
496
|
const contents: string = fs.readFileSync(versionFile, 'utf8');
|
|
446
|
-
const match
|
|
447
|
-
|
|
497
|
+
const match = contents.match(/^(?:php\s)?(\d+\.\d+\.\d+)$/m);
|
|
498
|
+
return validatePHPVersionInput(
|
|
499
|
+
match ? match[1] : contents.trim(),
|
|
500
|
+
versionFile
|
|
448
501
|
);
|
|
449
|
-
return match ? match[1] : contents.trim();
|
|
450
502
|
} else if (versionFile !== '.php-version') {
|
|
451
503
|
throw new Error(`Could not find '${versionFile}' file.`);
|
|
452
504
|
}
|
|
@@ -456,11 +508,11 @@ export async function readPHPVersion(): Promise<string> {
|
|
|
456
508
|
if (fs.existsSync(composerLock)) {
|
|
457
509
|
const lockFileContents = JSON.parse(fs.readFileSync(composerLock, 'utf8'));
|
|
458
510
|
/* istanbul ignore next */
|
|
459
|
-
if (
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
511
|
+
if (lockFileContents['platform-overrides']?.['php']) {
|
|
512
|
+
return validatePHPVersionInput(
|
|
513
|
+
lockFileContents['platform-overrides']['php'],
|
|
514
|
+
'composer.lock platform-overrides.php'
|
|
515
|
+
);
|
|
464
516
|
}
|
|
465
517
|
}
|
|
466
518
|
|
|
@@ -470,12 +522,11 @@ export async function readPHPVersion(): Promise<string> {
|
|
|
470
522
|
fs.readFileSync(composerJson, 'utf8')
|
|
471
523
|
);
|
|
472
524
|
/* istanbul ignore next */
|
|
473
|
-
if (
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
return composerFileContents['config']['platform']['php'];
|
|
525
|
+
if (composerFileContents['config']?.['platform']?.['php']) {
|
|
526
|
+
return validatePHPVersionInput(
|
|
527
|
+
composerFileContents['config']['platform']['php'],
|
|
528
|
+
'composer.json config.platform.php'
|
|
529
|
+
);
|
|
479
530
|
}
|
|
480
531
|
}
|
|
481
532
|
|