setup-php 2.24.0 → 2.25.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 +19 -13
- package/lib/extensions.js +3 -3
- package/lib/extensions.js.map +1 -1
- package/lib/install.js +1 -1
- package/lib/install.js.map +1 -1
- package/lib/utils.d.ts +1 -0
- package/lib/utils.js +21 -3
- package/lib/utils.js.map +1 -1
- package/package.json +13 -13
- package/src/configs/brew_extensions +2 -0
- package/src/configs/mod_priority +28 -0
- package/src/extensions.ts +5 -5
- package/src/install.ts +1 -1
- package/src/scripts/extensions/add_extensions.ps1 +1 -1
- package/src/scripts/extensions/add_extensions.sh +13 -2
- package/src/scripts/extensions/blackfire.ps1 +1 -1
- package/src/scripts/extensions/couchbase.sh +0 -6
- package/src/scripts/extensions/http.ps1 +2 -2
- package/src/scripts/extensions/ioncube.ps1 +1 -1
- package/src/scripts/extensions/oci.ps1 +2 -2
- package/src/scripts/extensions/phalcon.ps1 +3 -3
- package/src/scripts/extensions/relay.sh +9 -6
- package/src/scripts/extensions/zephir_parser.ps1 +5 -4
- package/src/scripts/extensions/zephir_parser.sh +3 -2
- package/src/scripts/linux.sh +7 -2
- package/src/scripts/tools/add_tools.ps1 +2 -2
- package/src/scripts/tools/blackfire.ps1 +1 -1
- package/src/scripts/tools/protoc.ps1 +3 -3
- package/src/scripts/tools/symfony.ps1 +1 -1
- package/src/scripts/unix.sh +2 -1
- package/src/scripts/win32.ps1 +65 -18
- package/src/utils.ts +24 -4
package/README.md
CHANGED
|
@@ -75,7 +75,6 @@ Both `GitHub-hosted` and `self-hosted` runners are supported by `setup-php` on t
|
|
|
75
75
|
|---------------------|------------------------------------|------------------------|
|
|
76
76
|
| Ubuntu 22.04 | `ubuntu-latest` or `ubuntu-22.04` | `PHP 8.1` |
|
|
77
77
|
| Ubuntu 20.04 | `ubuntu-20.04` | `PHP 7.4` to `PHP 8.2` |
|
|
78
|
-
| Ubuntu 18.04 | `ubuntu-18.04` | `PHP 7.2` to `PHP 8.2` |
|
|
79
78
|
| Windows Server 2022 | `windows-latest` or `windows-2022` | `PHP 8.2` |
|
|
80
79
|
| Windows Server 2019 | `windows-2019` | `PHP 8.2` |
|
|
81
80
|
| macOS Monterey 12.x | `macos-12` | `PHP 8.2` |
|
|
@@ -87,7 +86,6 @@ Both `GitHub-hosted` and `self-hosted` runners are supported by `setup-php` on t
|
|
|
87
86
|
|----------------------------------|----------------------------|
|
|
88
87
|
| Ubuntu 22.04 | `self-hosted` or `Linux` |
|
|
89
88
|
| Ubuntu 20.04 | `self-hosted` or `Linux` |
|
|
90
|
-
| Ubuntu 18.04 | `self-hosted` or `Linux` |
|
|
91
89
|
| Debian 11 | `self-hosted` or `Linux` |
|
|
92
90
|
| Debian 10 | `self-hosted` or `Linux` |
|
|
93
91
|
| Windows 7 and newer | `self-hosted` or `Windows` |
|
|
@@ -255,7 +253,7 @@ These tools can be set up globally using the `tools` input. It accepts a string
|
|
|
255
253
|
|
|
256
254
|
When you specify just the major version or the version in `major.minor` format, the latest patch version matching the input will be setup.
|
|
257
255
|
|
|
258
|
-
|
|
256
|
+
With the exception of major versions of `composer`, if you specify only the `major` version or the version in `major.minor` format for a tool you can get rate limited by GitHub's API. To avoid this, it is recommended to provide a [`GitHub` OAuth token](https://github.com/shivammathur/setup-php#composer-github-oauth "Composer GitHub OAuth").
|
|
259
257
|
You can do that by setting `GITHUB_TOKEN` environment variable. The `COMPOSER_TOKEN` environment variable has been deprecated in favor of `GITHUB_TOKEN` and will be removed in the next major version.
|
|
260
258
|
|
|
261
259
|
```yaml
|
|
@@ -294,7 +292,7 @@ These tools can be set up globally using the `tools` input. It accepts a string
|
|
|
294
292
|
|
|
295
293
|
- Tools `prestissimo` and `composer-prefetcher` will be skipped unless `composer:v1` is also specified in tools input. It is recommended to drop `prestissimo` and use `composer v2`.
|
|
296
294
|
|
|
297
|
-
- By default,
|
|
295
|
+
- By default, except `composer` tools which cannot be set up gracefully leave an error message in the logs, the execution is not interrupted. To change this behaviour you can set `fail-fast` flag to `true`.
|
|
298
296
|
|
|
299
297
|
```yaml
|
|
300
298
|
- name: Setup PHP with fail-fast
|
|
@@ -391,14 +389,23 @@ Disable coverage for these reasons:
|
|
|
391
389
|
|
|
392
390
|
> Specify using `with` keyword
|
|
393
391
|
|
|
394
|
-
#### `php-version` (
|
|
392
|
+
#### `php-version` (optional)
|
|
395
393
|
|
|
396
394
|
- Specify the PHP version you want to set up.
|
|
397
395
|
- Accepts a `string`. For example `'8.0'`.
|
|
398
396
|
- Accepts `latest` to set up the latest stable PHP version.
|
|
399
397
|
- Accepts `nightly` to set up a nightly build from the master branch of PHP.
|
|
400
398
|
- Accepts the format `d.x`, where `d` is the major version. For example `5.x`, `7.x` and `8.x`.
|
|
401
|
-
- See [PHP support](#tada-php-support) for supported PHP versions.
|
|
399
|
+
- See [PHP support](#tada-php-support) for the supported PHP versions.
|
|
400
|
+
- If not specified, it looks for `php-version-file` input.
|
|
401
|
+
|
|
402
|
+
#### `php-version-file` (optional)
|
|
403
|
+
|
|
404
|
+
- Specify a file with the PHP version you want to set up.
|
|
405
|
+
- Accepts a `string`. For example `'.phpenv-version'`.
|
|
406
|
+
- See [PHP support](#tada-php-support) for the supported PHP versions.
|
|
407
|
+
- By default, `.php-version` file is used.
|
|
408
|
+
- If not specified and the default `.php-version` file is not found, the latest stable PHP version is set up.
|
|
402
409
|
|
|
403
410
|
#### `extensions` (optional)
|
|
404
411
|
|
|
@@ -505,12 +512,12 @@ jobs:
|
|
|
505
512
|
strategy:
|
|
506
513
|
matrix:
|
|
507
514
|
operating-system: ['ubuntu-latest', 'windows-latest', 'macos-latest']
|
|
508
|
-
php-versions: ['8.
|
|
515
|
+
php-versions: ['8.1', '8.2', '8.3']
|
|
509
516
|
phpunit-versions: ['latest']
|
|
510
517
|
include:
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
518
|
+
- operating-system: 'ubuntu-latest'
|
|
519
|
+
php-versions: '8.0'
|
|
520
|
+
phpunit-versions: 9
|
|
514
521
|
steps:
|
|
515
522
|
- name: Setup PHP
|
|
516
523
|
uses: shivammathur/setup-php@v2
|
|
@@ -520,6 +527,8 @@ jobs:
|
|
|
520
527
|
ini-values: post_max_size=256M, max_execution_time=180
|
|
521
528
|
coverage: xdebug
|
|
522
529
|
tools: php-cs-fixer, phpunit:${{ matrix.phpunit-versions }}
|
|
530
|
+
env:
|
|
531
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
523
532
|
```
|
|
524
533
|
|
|
525
534
|
### Nightly Build Setup
|
|
@@ -696,9 +705,6 @@ act -P ubuntu-22.04=shivammathur/node:2204
|
|
|
696
705
|
|
|
697
706
|
# For runs-on: ubuntu-20.04
|
|
698
707
|
act -P ubuntu-20.04=shivammathur/node:2004
|
|
699
|
-
|
|
700
|
-
# For runs-on: ubuntu-18.04
|
|
701
|
-
act -P ubuntu-18.04=shivammathur/node:1804
|
|
702
708
|
```
|
|
703
709
|
|
|
704
710
|
### JIT Configuration
|
package/lib/extensions.js
CHANGED
|
@@ -43,7 +43,7 @@ async function addExtensionDarwin(extension_csv, version) {
|
|
|
43
43
|
case /.+-.+\/.+@.+/.test(extension):
|
|
44
44
|
add_script += await utils.parseExtensionSource(extension, ext_prefix);
|
|
45
45
|
return;
|
|
46
|
-
case /^(7\.4|8\.[0-
|
|
46
|
+
case /^(7\.4|8\.[0-3])relay(-v?\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
47
47
|
case /^(5\.[3-6]|7\.[0-4]|8\.[0-2])blackfire(-\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
48
48
|
case /^couchbase|^event|^gearman$|^geos$|^pdo_oci$|^oci8$|^(pecl_)?http|^pdo_firebird$/.test(extension):
|
|
49
49
|
case /^(5\.[3-6]|7\.[0-4])ioncube$/.test(version_extension):
|
|
@@ -61,7 +61,7 @@ async function addExtensionDarwin(extension_csv, version) {
|
|
|
61
61
|
case /(5\.[3-6]|7\.0)pcov/.test(version_extension):
|
|
62
62
|
add_script += await utils.getUnsupportedLog('pcov', version, 'darwin');
|
|
63
63
|
return;
|
|
64
|
-
case /(?<!5\.[3-5])(amqp|apcu|expect|gnupg|grpc|igbinary|imagick|imap|mailparse|mcrypt|memcache|memcached|mongodb|msgpack|protobuf|psr|raphf|rdkafka|redis|ssh2|swoole|xdebug|xdebug2|yaml|zmq)/.test(version_extension):
|
|
64
|
+
case /(?<!5\.[3-5])(amqp|apcu|expect|gnupg|grpc|igbinary|imagick|imap|mailparse|mcrypt|memcache|memcached|mongodb|msgpack|protobuf|psr|raphf|rdkafka|redis|snmp|ssh2|swoole|uuid|xdebug|xdebug2|yaml|zmq)/.test(version_extension):
|
|
65
65
|
case /(?<!5\.[3-6])(ds|v8js)/.test(version_extension):
|
|
66
66
|
case /(5\.6|7\.[0-4])(propro|lua)/.test(version_extension):
|
|
67
67
|
case /(?<!5\.[3-6]|7\.0)pcov/.test(version_extension):
|
|
@@ -160,7 +160,7 @@ async function addExtensionLinux(extension_csv, version) {
|
|
|
160
160
|
case /.+-.+\/.+@.+/.test(extension):
|
|
161
161
|
add_script += await utils.parseExtensionSource(extension, ext_prefix);
|
|
162
162
|
return;
|
|
163
|
-
case /^(7\.4|8\.[0-
|
|
163
|
+
case /^(7\.4|8\.[0-3])relay(-v?\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
164
164
|
case /^(5\.[3-6]|7\.[0-4]|8\.[0-2])blackfire(-\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
165
165
|
case /^((5\.[3-6])|(7\.[0-2]))pdo_cubrid$|^((5\.[3-6])|(7\.[0-4]))cubrid$/.test(version_extension):
|
|
166
166
|
case /^couchbase|^event|^gearman$|^geos$|^pdo_oci$|^oci8$|^(pecl_)?http|^pdo_firebird$/.test(extension):
|
package/lib/extensions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extensions.js","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AAQ1B,KAAK,UAAU,kBAAkB,CACtC,aAAqB,EACrB,OAAe;IAEf,MAAM,UAAU,GAAkB,MAAM,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;IAC5E,IAAI,UAAU,GAAG,IAAI,CAAC;IACtB,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,MAAM,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,WAAW,SAAiB;QACpE,MAAM,iBAAiB,GAAW,OAAO,GAAG,SAAS,CAAC;QACtD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAa,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/D,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAE5D,QAAQ,IAAI,EAAE;YAEZ,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;gBACtB,aAAa,IAAI,qBAAqB,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACrE,OAAO;YAET,KAAK,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAC1B,UAAU,IAAI,sBAAsB,CAAC;gBACrC,OAAO;YAET,KAAK,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC;gBACjC,UAAU,IAAI,MAAM,KAAK,CAAC,oBAAoB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;gBACtE,OAAO;YAQT,KAAK,2CAA2C,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACzE,KAAK,0DAA0D,CAAC,IAAI,CAClE,iBAAiB,CAClB,CAAC;YACF,KAAK,kFAAkF,CAAC,IAAI,CAC1F,SAAS,CACV,CAAC;YACF,KAAK,8BAA8B,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC5D,KAAK,kEAAkE,CAAC,IAAI,CAC1E,iBAAiB,CAClB,CAAC;YACF,KAAK,6BAA6B,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC3D,KAAK,uDAAuD,CAAC,IAAI,CAC/D,iBAAiB,CAClB;gBACC,UAAU,IAAI,MAAM,KAAK,CAAC,aAAa,CACrC,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,QAAQ,CACT,CAAC;gBACF,OAAO;YAET,KAAK,kDAAkD,CAAC,IAAI,CAAC,SAAS,CAAC;gBACrE,UAAU,IAAI,MAAM,KAAK,CAAC,KAAK,CAC7B,0BAA0B,EAC1B,QAAQ,EACR,WAAW,EACX,UAAU,CACX,CAAC;gBACF,OAAO;YAET,KAAK,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC;gBACvC,UAAU,IAAI,MAAM,KAAK,CAAC,KAAK,CAC7B,sBAAsB,EACtB,QAAQ,EACR,WAAW,EACX,UAAU,CACX,CAAC;gBACF,OAAO;YAET,KAAK,qBAAqB,CAAC,IAAI,CAAC,iBAAiB,CAAC;gBAChD,UAAU,IAAI,MAAM,KAAK,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBACvE,OAAO;YAET,KAAK,
|
|
1
|
+
{"version":3,"file":"extensions.js","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"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"}
|
package/lib/install.js
CHANGED
|
@@ -46,7 +46,7 @@ async function getScript(os) {
|
|
|
46
46
|
const ini_values_csv = await utils.getInput('ini-values', false);
|
|
47
47
|
const coverage_driver = await utils.getInput('coverage', false);
|
|
48
48
|
const tools_csv = await utils.getInput('tools', false);
|
|
49
|
-
const version = await utils.parseVersion(await utils.
|
|
49
|
+
const version = await utils.parseVersion(await utils.readPHPVersion());
|
|
50
50
|
const ini_file = await utils.parseIniFile(await utils.getInput('ini-file', false));
|
|
51
51
|
let script = await utils.joins('.', script_path, version, ini_file);
|
|
52
52
|
if (extension_csv) {
|
package/lib/install.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AACxB,4CAAoB;AACpB,wCAAmC;AACnC,oDAAsC;AACtC,iDAAmC;AACnC,qDAAuC;AACvC,yDAA2C;AAC3C,+CAAiC;AACjC,+CAAiC;AAO1B,KAAK,UAAU,SAAS,CAAC,EAAU;IACxC,MAAM,GAAG,GAAG,uCAAuC,CAAC;IACpD,MAAM,QAAQ,GAAG,EAAE,GAAG,CAAC,MAAM,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IACpE,MAAM,aAAa,GAAW,MAAM,KAAK,CAAC,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IACxE,MAAM,cAAc,GAAW,MAAM,KAAK,CAAC,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IACzE,MAAM,eAAe,GAAW,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACxE,MAAM,SAAS,GAAW,MAAM,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAW,MAAM,KAAK,CAAC,YAAY,CAC9C,MAAM,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"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"}
|
package/lib/utils.d.ts
CHANGED
|
@@ -19,4 +19,5 @@ export declare function scriptExtension(os: string): Promise<string>;
|
|
|
19
19
|
export declare function scriptTool(os: string): Promise<string>;
|
|
20
20
|
export declare function customPackage(pkg: string, type: string, version: string, os: string): Promise<string>;
|
|
21
21
|
export declare function parseExtensionSource(extension: string, prefix: string): Promise<string>;
|
|
22
|
+
export declare function readPHPVersion(): Promise<string>;
|
|
22
23
|
export declare function setVariable(variable: string, command: string, os: string): Promise<string>;
|
package/lib/utils.js
CHANGED
|
@@ -22,8 +22,12 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
22
22
|
__setModuleDefault(result, mod);
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
25
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.setVariable = exports.parseExtensionSource = exports.customPackage = exports.scriptTool = exports.scriptExtension = exports.joins = exports.getCommand = exports.getUnsupportedLog = exports.suppressOutput = exports.getExtensionPrefix = exports.CSVArray = exports.extensionArray = exports.addLog = exports.stepLog = exports.log = exports.color = exports.asyncForEach = exports.parseIniFile = exports.parseVersion = exports.getManifestURL = exports.getInput = exports.readEnv = void 0;
|
|
29
|
+
exports.setVariable = exports.readPHPVersion = exports.parseExtensionSource = exports.customPackage = exports.scriptTool = exports.scriptExtension = exports.joins = exports.getCommand = exports.getUnsupportedLog = exports.suppressOutput = exports.getExtensionPrefix = exports.CSVArray = exports.extensionArray = exports.addLog = exports.stepLog = exports.log = exports.color = exports.asyncForEach = exports.parseIniFile = exports.parseVersion = exports.getManifestURL = exports.getInput = exports.readEnv = void 0;
|
|
30
|
+
const fs_1 = __importDefault(require("fs"));
|
|
27
31
|
const path = __importStar(require("path"));
|
|
28
32
|
const core = __importStar(require("@actions/core"));
|
|
29
33
|
const fetch = __importStar(require("./fetch"));
|
|
@@ -58,10 +62,9 @@ async function getManifestURL() {
|
|
|
58
62
|
}
|
|
59
63
|
exports.getManifestURL = getManifestURL;
|
|
60
64
|
async function parseVersion(version) {
|
|
61
|
-
const manifest = await getManifestURL();
|
|
62
65
|
switch (true) {
|
|
63
66
|
case /^(latest|nightly|\d+\.x)$/.test(version):
|
|
64
|
-
return JSON.parse((await fetch.fetch(
|
|
67
|
+
return JSON.parse((await fetch.fetch(await getManifestURL()))['data'])[version];
|
|
65
68
|
default:
|
|
66
69
|
switch (true) {
|
|
67
70
|
case version.length > 1:
|
|
@@ -269,6 +272,21 @@ async function parseExtensionSource(extension, prefix) {
|
|
|
269
272
|
return await joins('\nadd_extension_from_source', ...matches.splice(1, matches.length), prefix);
|
|
270
273
|
}
|
|
271
274
|
exports.parseExtensionSource = parseExtensionSource;
|
|
275
|
+
async function readPHPVersion() {
|
|
276
|
+
const version = await getInput('php-version', false);
|
|
277
|
+
if (version) {
|
|
278
|
+
return version;
|
|
279
|
+
}
|
|
280
|
+
const versionFile = (await getInput('php-version-file', false)) || '.php-version';
|
|
281
|
+
if (fs_1.default.existsSync(versionFile)) {
|
|
282
|
+
return fs_1.default.readFileSync(versionFile, 'utf8').replace(/[\r\n]/g, '');
|
|
283
|
+
}
|
|
284
|
+
else if (versionFile !== '.php-version') {
|
|
285
|
+
throw new Error(`Could not find '${versionFile}' file.`);
|
|
286
|
+
}
|
|
287
|
+
return 'latest';
|
|
288
|
+
}
|
|
289
|
+
exports.readPHPVersion = readPHPVersion;
|
|
272
290
|
async function setVariable(variable, command, os) {
|
|
273
291
|
switch (os) {
|
|
274
292
|
case 'win32':
|
package/lib/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"
|
|
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.
|
|
3
|
+
"version": "2.25.1",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Setup PHP for use with GitHub Actions",
|
|
6
6
|
"main": "lib/install.js",
|
|
@@ -36,26 +36,26 @@
|
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"@actions/core": "^1.10.0",
|
|
38
38
|
"@actions/exec": "^1.1.1",
|
|
39
|
-
"@actions/io": "^1.1.
|
|
39
|
+
"@actions/io": "^1.1.3"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@types/jest": "^29.
|
|
43
|
-
"@types/node": "^18.11
|
|
44
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
|
45
|
-
"@typescript-eslint/parser": "^5.
|
|
42
|
+
"@types/jest": "^29.5.0",
|
|
43
|
+
"@types/node": "^18.15.11",
|
|
44
|
+
"@typescript-eslint/eslint-plugin": "^5.59.0",
|
|
45
|
+
"@typescript-eslint/parser": "^5.59.0",
|
|
46
46
|
"@vercel/ncc": "^0.36.1",
|
|
47
|
-
"eslint": "^8.
|
|
48
|
-
"eslint-config-prettier": "^8.
|
|
47
|
+
"eslint": "^8.38.0",
|
|
48
|
+
"eslint-config-prettier": "^8.8.0",
|
|
49
49
|
"eslint-plugin-import": "^2.27.5",
|
|
50
50
|
"eslint-plugin-jest": "^27.2.1",
|
|
51
51
|
"eslint-plugin-prettier": "^4.2.1",
|
|
52
|
-
"jest": "^29.
|
|
53
|
-
"jest-circus": "^29.
|
|
52
|
+
"jest": "^29.5.0",
|
|
53
|
+
"jest-circus": "^29.5.0",
|
|
54
54
|
"nock": "^13.3.0",
|
|
55
|
-
"prettier": "^2.8.
|
|
55
|
+
"prettier": "^2.8.7",
|
|
56
56
|
"simple-git-hooks": "^2.8.1",
|
|
57
|
-
"ts-jest": "^29.0
|
|
58
|
-
"typescript": "^
|
|
57
|
+
"ts-jest": "^29.1.0",
|
|
58
|
+
"typescript": "^5.0.4"
|
|
59
59
|
},
|
|
60
60
|
"bugs": {
|
|
61
61
|
"url": "https://github.com/shivammathur/setup-php/issues"
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
apc=25
|
|
2
|
+
apcu_bc=25
|
|
3
|
+
apcu-bc=25
|
|
4
|
+
blackfire=30
|
|
5
|
+
decimal=30
|
|
6
|
+
ds=30
|
|
7
|
+
event=30
|
|
8
|
+
grpc=30
|
|
9
|
+
http=25
|
|
10
|
+
pecl_http=25
|
|
11
|
+
pecl-http=25
|
|
12
|
+
inotify=30
|
|
13
|
+
libvirt-php=40
|
|
14
|
+
mailparse=25
|
|
15
|
+
maxminddb=30
|
|
16
|
+
memcached=25
|
|
17
|
+
mysqlnd=10
|
|
18
|
+
mysqlnd_ms=30
|
|
19
|
+
opcache=10
|
|
20
|
+
pdo=10
|
|
21
|
+
phalcon=35
|
|
22
|
+
protobuf=30
|
|
23
|
+
psr=15
|
|
24
|
+
rdkafka=30
|
|
25
|
+
swoole=25
|
|
26
|
+
vips=30
|
|
27
|
+
xml=15
|
|
28
|
+
zstd=30
|
package/src/extensions.ts
CHANGED
|
@@ -31,14 +31,14 @@ export async function addExtensionDarwin(
|
|
|
31
31
|
case /.+-.+\/.+@.+/.test(extension):
|
|
32
32
|
add_script += await utils.parseExtensionSource(extension, ext_prefix);
|
|
33
33
|
return;
|
|
34
|
-
// match 7.4relay...8.
|
|
34
|
+
// match 7.4relay...8.3relay
|
|
35
35
|
// match 5.3blackfire...8.2blackfire
|
|
36
36
|
// match 5.3blackfire-(semver)...8.1blackfire-(semver)
|
|
37
37
|
// match couchbase, event, geos, pdo_oci, oci8, http, pecl_http
|
|
38
38
|
// match 5.3ioncube...7.4ioncube
|
|
39
39
|
// match 7.0phalcon3...7.3phalcon3, 7.2phalcon4...7.4phalcon4, and 7.4phalcon5...8.2phalcon5
|
|
40
40
|
// match 7.0zephir_parser...8.2zephir_parser
|
|
41
|
-
case /^(7\.4|8\.[0-
|
|
41
|
+
case /^(7\.4|8\.[0-3])relay(-v?\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
42
42
|
case /^(5\.[3-6]|7\.[0-4]|8\.[0-2])blackfire(-\d+\.\d+\.\d+)?$/.test(
|
|
43
43
|
version_extension
|
|
44
44
|
):
|
|
@@ -83,7 +83,7 @@ export async function addExtensionDarwin(
|
|
|
83
83
|
add_script += await utils.getUnsupportedLog('pcov', version, 'darwin');
|
|
84
84
|
return;
|
|
85
85
|
// match brew extensions
|
|
86
|
-
case /(?<!5\.[3-5])(amqp|apcu|expect|gnupg|grpc|igbinary|imagick|imap|mailparse|mcrypt|memcache|memcached|mongodb|msgpack|protobuf|psr|raphf|rdkafka|redis|ssh2|swoole|xdebug|xdebug2|yaml|zmq)/.test(
|
|
86
|
+
case /(?<!5\.[3-5])(amqp|apcu|expect|gnupg|grpc|igbinary|imagick|imap|mailparse|mcrypt|memcache|memcached|mongodb|msgpack|protobuf|psr|raphf|rdkafka|redis|snmp|ssh2|swoole|uuid|xdebug|xdebug2|yaml|zmq)/.test(
|
|
87
87
|
version_extension
|
|
88
88
|
):
|
|
89
89
|
case /(?<!5\.[3-6])(ds|v8js)/.test(version_extension):
|
|
@@ -262,7 +262,7 @@ export async function addExtensionLinux(
|
|
|
262
262
|
case /.+-.+\/.+@.+/.test(extension):
|
|
263
263
|
add_script += await utils.parseExtensionSource(extension, ext_prefix);
|
|
264
264
|
return;
|
|
265
|
-
// match 7.4relay...8.
|
|
265
|
+
// match 7.4relay...8.3relay
|
|
266
266
|
// match 5.3blackfire...8.2blackfire
|
|
267
267
|
// match 5.3blackfire-(semver)...8.1blackfire-(semver)
|
|
268
268
|
// match 5.3pdo_cubrid...7.2php_cubrid, 5.3cubrid...7.4cubrid
|
|
@@ -270,7 +270,7 @@ export async function addExtensionLinux(
|
|
|
270
270
|
// match 5.3ioncube...7.4ioncube
|
|
271
271
|
// match 7.0phalcon3...7.3phalcon3, 7.2phalcon4...7.4phalcon4, 7.4phalcon5...8.2phalcon5
|
|
272
272
|
// match 7.0zephir_parser...8.2zephir_parser
|
|
273
|
-
case /^(7\.4|8\.[0-
|
|
273
|
+
case /^(7\.4|8\.[0-3])relay(-v?\d+\.\d+\.\d+)?$/.test(version_extension):
|
|
274
274
|
case /^(5\.[3-6]|7\.[0-4]|8\.[0-2])blackfire(-\d+\.\d+\.\d+)?$/.test(
|
|
275
275
|
version_extension
|
|
276
276
|
):
|
package/src/install.ts
CHANGED
|
@@ -24,7 +24,7 @@ export async function getScript(os: string): Promise<string> {
|
|
|
24
24
|
const coverage_driver: string = await utils.getInput('coverage', false);
|
|
25
25
|
const tools_csv: string = await utils.getInput('tools', false);
|
|
26
26
|
const version: string = await utils.parseVersion(
|
|
27
|
-
await utils.
|
|
27
|
+
await utils.readPHPVersion()
|
|
28
28
|
);
|
|
29
29
|
const ini_file: string = await utils.parseIniFile(
|
|
30
30
|
await utils.getInput('ini-file', false)
|
|
@@ -65,7 +65,7 @@ Function Add-NightlyExtension {
|
|
|
65
65
|
if($ts) { $ts_part = 'ts' } else { $ts_part = 'nts' }
|
|
66
66
|
$repo = "$github/shivammathur/php-extensions-windows"
|
|
67
67
|
$url = "$repo/releases/download/builds/php$version`_$ts_part`_$arch`_$extension.dll"
|
|
68
|
-
|
|
68
|
+
Get-File -Url $url -OutFile "$ext_dir\php_$extension.dll"
|
|
69
69
|
if(Test-Path "$ext_dir\php_$extension.dll") {
|
|
70
70
|
Enable-Extension $extension > $null
|
|
71
71
|
} else {
|
|
@@ -48,7 +48,18 @@ enable_extension() {
|
|
|
48
48
|
[ -d "$modules_dir" ] && sudo find "$modules_dir" -path "*disabled*$1" -delete
|
|
49
49
|
enable_extension_dependencies "$1" "$2"
|
|
50
50
|
enable_cache_extension_dependencies "$1" "$2"
|
|
51
|
-
|
|
51
|
+
if ! [[ "${version:?}" =~ ${old_versions:?} ]] && command -v phpenmod >/dev/null 2>&1; then
|
|
52
|
+
mod="${ini_dir:?}"/../mods-available/"$1".ini
|
|
53
|
+
if ! [ -e "$mod" ]; then
|
|
54
|
+
priority="${3:-20}";
|
|
55
|
+
mod_priority_line="$(grep -E "^$1=" "${src:?}/configs/mod_priority")";
|
|
56
|
+
[ -n "$mod_priority_line" ] && priority=$(echo "$mod_priority_line" | cut -d'=' -f 2)
|
|
57
|
+
(echo "; priority=$priority"; echo "$2=${ext_dir:?}/$1.so") | sudo tee "$mod" >/dev/null
|
|
58
|
+
fi
|
|
59
|
+
sudo phpenmod -v "$version" "$1" >/dev/null 2>&1
|
|
60
|
+
else
|
|
61
|
+
echo "$2=${ext_dir:?}/$1.so" | sudo tee -a "${pecl_file:-${ini_file[@]}}" >/dev/null
|
|
62
|
+
fi
|
|
52
63
|
fi
|
|
53
64
|
}
|
|
54
65
|
|
|
@@ -114,7 +125,7 @@ disable_all_shared() {
|
|
|
114
125
|
sudo find "${ini_dir:-$scan_dir}"/.. -name "*.ini" -not -path "*php.ini" -not -path "*phar.ini" -not -path "*pecl.ini" -not -path "*mods-available*" -delete >/dev/null 2>&1 || true
|
|
115
126
|
mkdir -p /tmp/extdisabled/"$version"
|
|
116
127
|
sudo rm -f /tmp/php"$version"_extensions
|
|
117
|
-
sudo find "$ext_dir" -name '*.so' -print0 | xargs -0 -n 1 basename -s .so | xargs -
|
|
128
|
+
sudo find "$ext_dir" -name '*.so' -print0 | xargs -0 -n 1 basename -s .so | xargs -I{} touch /tmp/extdisabled/"$version"/{}
|
|
118
129
|
add_log "${tick:?}" "none" "Disabled all shared extensions"
|
|
119
130
|
}
|
|
120
131
|
|
|
@@ -21,7 +21,7 @@ Function Add-Blackfire() {
|
|
|
21
21
|
$status="Enabled"
|
|
22
22
|
} else {
|
|
23
23
|
$nts = if (!$installed.ThreadSafe) { "_nts" } else { "" }
|
|
24
|
-
|
|
24
|
+
Get-File -Url "https://packages.blackfire.io/binaries/blackfire-php/${extension_version}/blackfire-php-windows_${arch}-php-${no_dot_version}${nts}.dll" -OutFile $ext_dir\blackfire.dll > $null 2>&1
|
|
25
25
|
Enable-PhpExtension -Extension blackfire -Path $php_dir
|
|
26
26
|
$status="Installed and enabled"
|
|
27
27
|
}
|
|
@@ -17,12 +17,6 @@ add_couchbase_clibs() {
|
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
add_couchbase_cxxlibs() {
|
|
20
|
-
if [ "$VERSION_ID" = "18.04" ]; then
|
|
21
|
-
if ! command -v gcc-8 >/dev/null || ! command -v g++-8 >/dev/null; then
|
|
22
|
-
install_packages gcc-8 g++-8 -y
|
|
23
|
-
fi
|
|
24
|
-
printf "gcc g++" | xargs -d ' ' -I {} sudo update-alternatives --install /usr/bin/{} {} /usr/bin/{}-8 8
|
|
25
|
-
fi
|
|
26
20
|
if [ "${runner:?}" = "self-hosted" ]; then
|
|
27
21
|
add_list cmake https://apt.kitware.com/ubuntu/ https://apt.kitware.com/keys/kitware-archive-latest.asc "$VERSION_CODENAME" main
|
|
28
22
|
fi
|
|
@@ -13,7 +13,7 @@ Function Get-ICUUrl() {
|
|
|
13
13
|
$trunk = "https://windows.php.net"
|
|
14
14
|
$urls=@("${trunk}/downloads/php-sdk/deps/${vs_version}/${arch}", "${trunk}/downloads/php-sdk/deps/archives/${vs_version}/${arch}")
|
|
15
15
|
foreach ($url in $urls) {
|
|
16
|
-
$web_content =
|
|
16
|
+
$web_content = Get-File -Url $url
|
|
17
17
|
foreach ($link in $web_content.Links) {
|
|
18
18
|
if ($link -match "/.*ICU-${icu_version}.*/") {
|
|
19
19
|
return $trunk + $link.HREF
|
|
@@ -32,7 +32,7 @@ Function Repair-ICU() {
|
|
|
32
32
|
$zip_url = Get-ICUUrl $icu.Groups[1].Value $installed.Architecture $vs
|
|
33
33
|
if ($zip_url -ne '') {
|
|
34
34
|
New-Item -Path "$php_dir" -Name "icu" -ItemType "directory" -Force > $null 2>&1
|
|
35
|
-
|
|
35
|
+
Get-File -Url $zip_url -OutFile "$php_dir\icu\icu.zip"
|
|
36
36
|
Expand-Archive -Path $php_dir\icu\icu.zip -DestinationPath $php_dir\icu -Force
|
|
37
37
|
Get-ChildItem $php_dir\icu\bin -Filter *.dll | Copy-Item -Destination $php_dir -Force
|
|
38
38
|
}
|
|
@@ -20,7 +20,7 @@ Function Add-Ioncube() {
|
|
|
20
20
|
if (-not($installed.ThreadSafe)) {
|
|
21
21
|
$ts_part = "_nonts"
|
|
22
22
|
}
|
|
23
|
-
|
|
23
|
+
Get-File -Url "https://downloads.ioncube.com/loader_downloads/ioncube_loaders_win$ts_part`_vc$vc`_$arch_part.zip" -OutFile $ext_dir\ioncube.zip
|
|
24
24
|
Expand-Archive -Path $ext_dir\ioncube.zip -DestinationPath $ext_dir -Force
|
|
25
25
|
Copy-Item $ext_dir\ioncube\ioncube_loader_win_$version.dll $ext_dir\php_ioncube.dll
|
|
26
26
|
}
|
|
@@ -14,7 +14,7 @@ Function Add-InstantClient() {
|
|
|
14
14
|
if ($arch -eq 'x86') {
|
|
15
15
|
$suffix = 'nt'
|
|
16
16
|
}
|
|
17
|
-
|
|
17
|
+
Get-File -Url https://download.oracle.com/otn_software/nt/instantclient/instantclient-basiclite-$suffix.zip -OutFile $php_dir\instantclient.zip
|
|
18
18
|
Expand-Archive -Path $php_dir\instantclient.zip -DestinationPath $php_dir -Force
|
|
19
19
|
Copy-Item $php_dir\instantclient*\* $php_dir
|
|
20
20
|
}
|
|
@@ -71,7 +71,7 @@ Function Add-Oci() {
|
|
|
71
71
|
Copy-Item -Path $oci8DLL -Destination $ext_dir\php_oci8.dll
|
|
72
72
|
} else {
|
|
73
73
|
$status = 'Installed and enabled'
|
|
74
|
-
|
|
74
|
+
Get-File -Url (Get-Oci8Url) -OutFile $php_dir\oci8.zip
|
|
75
75
|
Expand-Archive -Path $php_dir\oci8.zip -DestinationPath $ext_dir -Force
|
|
76
76
|
}
|
|
77
77
|
}
|
|
@@ -13,14 +13,14 @@ Function Get-PhalconReleaseAssetUrl() {
|
|
|
13
13
|
try {
|
|
14
14
|
$match = (Invoke-RestMethod -Uri "$domain/$releases/tags/v$Semver").assets | Select-String -Pattern "browser_download_url=.*(phalcon_${arch}_.*_php${version}_${extension_version}.*[0-9]${nts}.zip)"
|
|
15
15
|
} catch {
|
|
16
|
-
$match = (
|
|
16
|
+
$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)"
|
|
17
17
|
}
|
|
18
18
|
} else {
|
|
19
19
|
$nts = if (!$installed.ThreadSafe) { "-nts" } else { "-ts" }
|
|
20
20
|
try {
|
|
21
21
|
$match = (Invoke-RestMethod -Uri "$domain/$releases/tags/v$Semver").assets | Select-String -Pattern "browser_download_url=.*(phalcon-php${version}${nts}-windows.*-x64.zip)"
|
|
22
22
|
} catch {
|
|
23
|
-
$match = (
|
|
23
|
+
$match = (Get-File -Url "$github/$releases/expanded_assets/v$Semver").Links.href | Select-String -Pattern "(phalcon-php${version}${nts}-windows.*-x64.zip)"
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
if($NULL -ne $match) {
|
|
@@ -39,7 +39,7 @@ Function Add-PhalconFromGitHub() {
|
|
|
39
39
|
)
|
|
40
40
|
$zip_url = Get-PhalconReleaseAssetUrl $Semver
|
|
41
41
|
if($zip_url) {
|
|
42
|
-
|
|
42
|
+
Get-File -Url $zip_url -OutFile $ENV:RUNNER_TOOL_CACHE\phalcon.zip > $null 2>&1
|
|
43
43
|
Expand-Archive -Path $ENV:RUNNER_TOOL_CACHE\phalcon.zip -DestinationPath $ENV:RUNNER_TOOL_CACHE\phalcon -Force > $null 2>&1
|
|
44
44
|
Copy-Item -Path "$ENV:RUNNER_TOOL_CACHE\phalcon\php_phalcon.dll" -Destination "$ext_dir\php_phalcon.dll"
|
|
45
45
|
Enable-PhpExtension -Extension phalcon -Path $php_dir
|
|
@@ -27,7 +27,7 @@ get_os_suffix() {
|
|
|
27
27
|
# Get openssl suffix in relay artifact URL.
|
|
28
28
|
get_openssl_suffix() {
|
|
29
29
|
openssl_3=$(php -r "echo strpos(OPENSSL_VERSION_TEXT, 'SSL 3') !== false;")
|
|
30
|
-
[ "$openssl_3" = "1" ] && echo '
|
|
30
|
+
[ "$openssl_3" = "1" ] && echo '+libssl3' || echo ''
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
# Change library paths in relay binary.
|
|
@@ -110,11 +110,14 @@ add_relay_helper() {
|
|
|
110
110
|
os_suffix="$(get_os_suffix)"
|
|
111
111
|
openssl_suffix="$(get_openssl_suffix)"
|
|
112
112
|
artifact_file_name="relay-$relay_version-php${version:?}-$os_suffix-$arch$openssl_suffix.tar.gz"
|
|
113
|
-
url="$
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
113
|
+
url="$relay_trunk"/"$relay_version"/"$artifact_file_name"
|
|
114
|
+
get -q -n /tmp/relay.tar.gz "$url"
|
|
115
|
+
if (! [ -e /tmp/relay.tar.gz ] || ! file /tmp/relay.tar.gz | grep -q 'gzip'); then
|
|
116
|
+
if [ "$openssl_suffix" = '+libssl3' ]; then
|
|
117
|
+
get -q -n /tmp/relay.tar.gz "${url/+libssl3/}"
|
|
118
|
+
else
|
|
119
|
+
get -q -n /tmp/relay.tar.gz "${url/.tar/+libssl3.tar}"
|
|
120
|
+
fi
|
|
118
121
|
fi
|
|
119
122
|
if [ -e /tmp/relay.tar.gz ] && file /tmp/relay.tar.gz | grep -q 'gzip'; then
|
|
120
123
|
sudo tar --strip-components=1 -xzf /tmp/relay.tar.gz -C "${ext_dir:?}"
|
|
@@ -8,10 +8,11 @@ Function Get-ZephirParserReleaseAssetUrl() {
|
|
|
8
8
|
)
|
|
9
9
|
$repo = 'zephir-lang/php-zephir-parser'
|
|
10
10
|
$zp_releases = "$github/$repo/releases"
|
|
11
|
+
$nts = if (!$installed.ThreadSafe) { "nts" } else { "ts" }
|
|
11
12
|
try {
|
|
12
|
-
$match = (Invoke-RestMethod -Uri "https://api.github.com/repos/$repo/tags/$extension_version").assets | Select-String -Pattern "browser_download_url=.*(zephir_parser-php-${version}
|
|
13
|
+
$match = (Invoke-RestMethod -Uri "https://api.github.com/repos/$repo/tags/$extension_version").assets | Select-String -Pattern "browser_download_url=.*(zephir_parser-php-${version}-$nts-windows.*.zip)"
|
|
13
14
|
} catch {
|
|
14
|
-
$match = (
|
|
15
|
+
$match = (Get-File -Url "$zp_releases/expanded_assets/$extension_version").Links.href | Select-String -Pattern "(zephir_parser-php-${version}-$nts-windows.*.zip)"
|
|
15
16
|
}
|
|
16
17
|
if($NULL -ne $match) {
|
|
17
18
|
return "$zp_releases/download/$extension_version/$($match.Matches[0].Groups[1].Value)"
|
|
@@ -30,7 +31,7 @@ Function Get-ZephirParserVersion() {
|
|
|
30
31
|
$repo = 'zephir-lang/php-zephir-parser'
|
|
31
32
|
$zp_releases = "$github/$repo/releases"
|
|
32
33
|
if($extension -eq 'zephir_parser') {
|
|
33
|
-
return (
|
|
34
|
+
return (Get-File -Url $zp_releases/latest).BaseResponse.RequestMessage.RequestUri.Segments[-1]
|
|
34
35
|
} else {
|
|
35
36
|
return 'v' + ($extension.split('-')[1] -replace 'v')
|
|
36
37
|
}
|
|
@@ -47,7 +48,7 @@ Function Add-ZephirParserFromGitHub() {
|
|
|
47
48
|
$extension_version = Get-ZephirParserVersion $extension
|
|
48
49
|
$zip_url = Get-ZephirParserReleaseAssetUrl $extension_version
|
|
49
50
|
if($zip_url) {
|
|
50
|
-
|
|
51
|
+
Get-File -Url $zip_url -OutFile $ENV:RUNNER_TOOL_CACHE\zp.zip > $null 2>&1
|
|
51
52
|
Expand-Archive -Path $ENV:RUNNER_TOOL_CACHE\zp.zip -DestinationPath $ENV:RUNNER_TOOL_CACHE\zp -Force > $null 2>&1
|
|
52
53
|
Copy-Item -Path "$ENV:RUNNER_TOOL_CACHE\zp\php_zephir_parser.dll" -Destination "$ext_dir\php_zephir_parser.dll"
|
|
53
54
|
Enable-PhpExtension -Extension zephir_parser -Path $php_dir
|
|
@@ -12,10 +12,11 @@ get_zephir_parser_version() {
|
|
|
12
12
|
# Add zephir_parser helper
|
|
13
13
|
add_zephir_parser_helper() {
|
|
14
14
|
local ext=$1
|
|
15
|
+
nts="${ts:?}" && nts="${nts/z/}"
|
|
15
16
|
ext_version=$(get_zephir_parser_version "$ext")
|
|
16
17
|
[ "$(uname -s)" = "Linux" ] && os_suffix=ubuntu || os_suffix=macos
|
|
17
|
-
build_name=$(get -s -n "" https://api.github.com/repos/"$repo"/releases/tags/"$ext_version" | grep -Eo "zephir_parser-php-${version:?}
|
|
18
|
-
[ -z "$build_name" ] && build_name=$(get -s -n "" "$zp_releases"/expanded_assets/"$ext_version" | grep -Eo "zephir_parser-php-${version:?}
|
|
18
|
+
build_name=$(get -s -n "" https://api.github.com/repos/"$repo"/releases/tags/"$ext_version" | grep -Eo "zephir_parser-php-${version:?}-$nts-$os_suffix-.*.zip" | head -n 1)
|
|
19
|
+
[ -z "$build_name" ] && build_name=$(get -s -n "" "$zp_releases"/expanded_assets/"$ext_version" | grep -Eo "zephir_parser-php-${version:?}-$nts-$os_suffix-.*.zip" | head -n 1)
|
|
19
20
|
get -q -e "/tmp/zp.zip" "$zp_releases"/download/"$ext_version"/"$build_name"
|
|
20
21
|
sudo unzip -o "/tmp/zp.zip" -d "${ext_dir:?}"
|
|
21
22
|
enable_extension zephir_parser extension
|
package/src/scripts/linux.sh
CHANGED
|
@@ -15,10 +15,15 @@ self_hosted_helper() {
|
|
|
15
15
|
install_packages apt-transport-https ca-certificates curl file make jq unzip autoconf automake gcc g++ gnupg
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
+
# Function to fix broken packages.
|
|
19
|
+
fix_broken_packages() {
|
|
20
|
+
sudo apt --fix-broken install >/dev/null 2>&1
|
|
21
|
+
}
|
|
22
|
+
|
|
18
23
|
# Function to install a package
|
|
19
24
|
install_packages() {
|
|
20
25
|
packages=("$@")
|
|
21
|
-
$apt_install "${packages[@]}" >/dev/null 2>&1 || (update_lists && $apt_install "${packages[@]}" >/dev/null 2>&1)
|
|
26
|
+
$apt_install "${packages[@]}" >/dev/null 2>&1 || (update_lists && fix_broken_packages && $apt_install "${packages[@]}" >/dev/null 2>&1)
|
|
22
27
|
}
|
|
23
28
|
|
|
24
29
|
# Function to disable an extension.
|
|
@@ -96,7 +101,7 @@ add_devtools() {
|
|
|
96
101
|
|
|
97
102
|
# Function to setup the nightly build from shivammathur/php-builder
|
|
98
103
|
setup_nightly() {
|
|
99
|
-
run_script "php-builder" "${runner:?}" "$version" "${debug:?}" ${ts:?}
|
|
104
|
+
run_script "php-builder" "${runner:?}" "$version" "${debug:?}" "${ts:?}"
|
|
100
105
|
}
|
|
101
106
|
|
|
102
107
|
# Function to setup PHP 5.3, PHP 5.4 and PHP 5.5.
|
|
@@ -17,7 +17,7 @@ Function Edit-ComposerConfig() {
|
|
|
17
17
|
php -r "try {`$p=new Phar('$tool_path.phar', 0);exit(0);} catch(Exception `$e) {exit(1);}"
|
|
18
18
|
if ($? -eq $False) {
|
|
19
19
|
Add-Log "$cross" "composer" "Could not download composer"
|
|
20
|
-
|
|
20
|
+
Write-Error "Could not download composer" -ErrorAction Stop
|
|
21
21
|
}
|
|
22
22
|
New-Item -ItemType Directory -Path $composer_bin -Force > $null 2>&1
|
|
23
23
|
if (-not(Test-Path $composer_json)) {
|
|
@@ -152,7 +152,7 @@ Function Add-Tool() {
|
|
|
152
152
|
} catch {
|
|
153
153
|
if($url -match '.*github.com.*releases.*latest.*') {
|
|
154
154
|
try {
|
|
155
|
-
$url = $url.replace("releases/latest/download", "releases/download/" + ([regex]::match((
|
|
155
|
+
$url = $url.replace("releases/latest/download", "releases/download/" + ([regex]::match((Get-File -Url ($url.split('/release')[0] + "/releases")).Content, "([0-9]+\.[0-9]+\.[0-9]+)/" + ($url.Substring($url.LastIndexOf("/") + 1))).Groups[0].Value).split('/')[0])
|
|
156
156
|
$status_code = (Invoke-WebRequest -Passthru -Uri $url -OutFile $tool_path).StatusCode
|
|
157
157
|
} catch { }
|
|
158
158
|
}
|
|
@@ -6,7 +6,7 @@ Function Add-Blackfire() {
|
|
|
6
6
|
}
|
|
7
7
|
$cli_version = (Invoke-RestMethod https://blackfire.io/api/v1/releases).cli
|
|
8
8
|
$url = "https://packages.blackfire.io/binaries/blackfire/${cli_version}/blackfire-windows_${arch_name}.zip"
|
|
9
|
-
|
|
9
|
+
Get-File -Url $url -OutFile $bin_dir\blackfire.zip >$null 2>&1
|
|
10
10
|
Expand-Archive -Path $bin_dir\blackfire.zip -DestinationPath $bin_dir -Force >$null 2>&1
|
|
11
11
|
Add-ToProfile $current_profile 'blackfire' "New-Alias blackfire $bin_dir\blackfire.exe"
|
|
12
12
|
if ((Test-Path env:BLACKFIRE_SERVER_ID) -and (Test-Path env:BLACKFIRE_SERVER_TOKEN)) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Function Get-ProtobufTag() {
|
|
2
2
|
$releases = 'https://github.com/protocolbuffers/protobuf/releases'
|
|
3
3
|
if("$protobuf_tag" -eq "latest") {
|
|
4
|
-
$protobuf_tag = (
|
|
4
|
+
$protobuf_tag = (Get-File -Url $releases/latest).BaseResponse.RequestMessage.RequestUri.Segments[-1]
|
|
5
5
|
} else {
|
|
6
6
|
try {
|
|
7
7
|
$protobuf_tag = $protobuf_tag -replace '^v', ''
|
|
@@ -11,7 +11,7 @@ Function Get-ProtobufTag() {
|
|
|
11
11
|
$response.Close()
|
|
12
12
|
$protobuf_tag = "v$protobuf_tag"
|
|
13
13
|
} catch {
|
|
14
|
-
$protobuf_tag = (
|
|
14
|
+
$protobuf_tag = (Get-File -Url $releases/latest).BaseResponse.RequestMessage.RequestUri.Segments[-1]
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
return $protobuf_tag
|
|
@@ -29,7 +29,7 @@ Function Add-Protoc() {
|
|
|
29
29
|
$arch_num = '32'
|
|
30
30
|
}
|
|
31
31
|
$url = "https://github.com/protocolbuffers/protobuf/releases/download/$protobuf_tag/protoc-$($protobuf_tag -replace 'v', '')-win$arch_num.zip"
|
|
32
|
-
|
|
32
|
+
Get-File -Url $url -OutFile $bin_dir\protoc.zip >$null 2>&1
|
|
33
33
|
Expand-Archive -Path $bin_dir\protoc.zip -DestinationPath $bin_dir\protoc -Force >$null 2>&1
|
|
34
34
|
Move-Item -Path $bin_dir\protoc\bin\protoc.exe -Destination $bin_dir\protoc.exe
|
|
35
35
|
Add-ToProfile $current_profile 'protoc' "New-Alias protoc $bin_dir\protoc.exe"
|
|
@@ -4,7 +4,7 @@ Function Add-Symfony() {
|
|
|
4
4
|
$arch_name = '386'
|
|
5
5
|
}
|
|
6
6
|
$url = "https://github.com/symfony-cli/symfony-cli/releases/latest/download/symfony-cli_windows_${arch_name}.zip"
|
|
7
|
-
|
|
7
|
+
Get-File -Url $url -OutFile $bin_dir\symfony.zip >$null 2>&1
|
|
8
8
|
Expand-Archive -Path $bin_dir\symfony.zip -DestinationPath $bin_dir -Force >$null 2>&1
|
|
9
9
|
if(Test-Path $bin_dir\symfony.exe) {
|
|
10
10
|
Copy-Item -Path $bin_dir\symfony.exe -Destination $bin_dir\symfony-cli.exe > $null 2>&1
|
package/src/scripts/unix.sh
CHANGED
|
@@ -173,9 +173,10 @@ configure_php() {
|
|
|
173
173
|
add_php_config
|
|
174
174
|
ini_config_dir="${src:?}"/configs/ini
|
|
175
175
|
ini_config_files=("$ini_config_dir"/php.ini)
|
|
176
|
-
|
|
176
|
+
jit_config_files=("$ini_config_dir"/jit.ini)
|
|
177
177
|
[[ "$version" =~ $xdebug3_versions ]] && ini_config_files+=("$ini_config_dir"/xdebug.ini)
|
|
178
178
|
cat "${ini_config_files[@]}" | sudo tee -a "${ini_file[@]:?}" >/dev/null 2>&1
|
|
179
|
+
[[ "$version" =~ $jit_versions ]] && cat "${jit_config_files[@]}" | sudo tee -a "${pecl_file:-${ini_file[@]}}" >/dev/null 2>&1
|
|
179
180
|
}
|
|
180
181
|
|
|
181
182
|
# Function to get PHP version in semver format.
|
package/src/scripts/win32.ps1
CHANGED
|
@@ -23,7 +23,7 @@ Function Add-Log($mark, $subject, $message) {
|
|
|
23
23
|
} else {
|
|
24
24
|
printf "\033[31;1m%s \033[0m\033[34;1m%s \033[0m\033[90;1m%s \033[0m\n" $mark $subject $message
|
|
25
25
|
if($env:fail_fast -eq 'true') {
|
|
26
|
-
|
|
26
|
+
Write-Error $message -ErrorAction Stop
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
}
|
|
@@ -128,13 +128,51 @@ Function Add-EnvPATH {
|
|
|
128
128
|
$env_data | Add-Content -Path $env_file -Encoding utf8
|
|
129
129
|
}
|
|
130
130
|
|
|
131
|
+
# Function to fetch a file from a URL.
|
|
132
|
+
Function Get-File {
|
|
133
|
+
param (
|
|
134
|
+
[string]$Url,
|
|
135
|
+
[string]$FallbackUrl,
|
|
136
|
+
[string]$OutFile,
|
|
137
|
+
[int]$Retries = 3,
|
|
138
|
+
[int]$TimeoutSec = 0
|
|
139
|
+
)
|
|
140
|
+
|
|
141
|
+
for ($i = 0; $i -lt $Retries; $i++) {
|
|
142
|
+
try {
|
|
143
|
+
if($null -ne $OutFile) {
|
|
144
|
+
Invoke-WebRequest -Uri $Url -OutFile $OutFile -TimeoutSec $TimeoutSec
|
|
145
|
+
} else {
|
|
146
|
+
Invoke-WebRequest -Uri $Url -TimeoutSec $TimeoutSec
|
|
147
|
+
}
|
|
148
|
+
break;
|
|
149
|
+
} catch {
|
|
150
|
+
if ($i -eq ($Retries - 1)) {
|
|
151
|
+
if($FallbackUrl) {
|
|
152
|
+
try {
|
|
153
|
+
if($null -ne $OutFile) {
|
|
154
|
+
Invoke-WebRequest -Uri $FallbackUrl -OutFile $OutFile -TimeoutSec $TimeoutSec
|
|
155
|
+
} else {
|
|
156
|
+
Invoke-WebRequest -Uri $FallbackUrl -TimeoutSec $TimeoutSec
|
|
157
|
+
}
|
|
158
|
+
} catch {
|
|
159
|
+
throw "Failed to download the assets from $Url and $FallbackUrl"
|
|
160
|
+
}
|
|
161
|
+
} else {
|
|
162
|
+
throw "Failed to download the assets from $Url"
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
|
|
131
169
|
# Function to make sure printf is in PATH.
|
|
132
170
|
Function Add-Printf {
|
|
133
171
|
if (-not(Test-Path "C:\Program Files\Git\usr\bin\printf.exe")) {
|
|
134
172
|
if(Test-Path "C:\msys64\usr\bin\printf.exe") {
|
|
135
173
|
New-Item -Path $bin_dir\printf.exe -ItemType SymbolicLink -Value C:\msys64\usr\bin\printf.exe -Force > $null 2>&1
|
|
136
174
|
} else {
|
|
137
|
-
|
|
175
|
+
Get-File -Url "$github/shivammathur/printf/releases/latest/download/printf-x64.zip" -OutFile "$bin_dir\printf.zip"
|
|
138
176
|
Expand-Archive -Path $bin_dir\printf.zip -DestinationPath $bin_dir -Force
|
|
139
177
|
}
|
|
140
178
|
} else {
|
|
@@ -166,7 +204,7 @@ Function Install-PSPackage() {
|
|
|
166
204
|
$module_path = "$bin_dir\$psm1_path.psm1"
|
|
167
205
|
if(-not (Test-Path $module_path -PathType Leaf)) {
|
|
168
206
|
$zip_file = "$bin_dir\$package.zip"
|
|
169
|
-
|
|
207
|
+
Get-File -Url $url -OutFile $zip_file
|
|
170
208
|
Expand-Archive -Path $zip_file -DestinationPath $bin_dir -Force
|
|
171
209
|
}
|
|
172
210
|
Import-Module $module_path
|
|
@@ -224,40 +262,49 @@ Function Set-PhpCache {
|
|
|
224
262
|
if($_.name -match "php-$version.[0-9]+$env:PHPTS-Win32-.*-$arch.zip") {
|
|
225
263
|
return $_.name
|
|
226
264
|
}
|
|
227
|
-
}
|
|
265
|
+
} | Select-Object -Last 1
|
|
228
266
|
if($null -eq $asset) {
|
|
229
267
|
throw "Asset not found"
|
|
230
268
|
}
|
|
231
269
|
} catch {
|
|
232
|
-
$release =
|
|
270
|
+
$release = Get-File -Url $php_builder/releases/expanded_assets/php$version
|
|
233
271
|
$asset = $release.links.href | ForEach-Object {
|
|
234
272
|
if($_ -match "php-$version.[0-9]+$env:PHPTS-Win32-.*-$arch.zip") {
|
|
235
273
|
return $_.split('/')[-1]
|
|
236
274
|
}
|
|
237
|
-
}
|
|
275
|
+
} | Select-Object -Last 1
|
|
238
276
|
}
|
|
239
|
-
|
|
277
|
+
Get-File -Url $php_builder/releases/download/php$version/$asset -OutFile $php_dir\$asset
|
|
240
278
|
Set-PhpDownloadCache -Path $php_dir CurrentUser
|
|
241
279
|
} catch { }
|
|
242
280
|
}
|
|
243
281
|
|
|
244
282
|
# Function to add debug symbols to PHP.
|
|
245
283
|
Function Add-DebugSymbols {
|
|
246
|
-
$release = Invoke-RestMethod https://api.github.com/repos/shivammathur/php-builder-windows/releases/tags/php$version
|
|
247
284
|
$dev = if ($version -match $nightly_versions) { '-dev' } else { '' }
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
285
|
+
try {
|
|
286
|
+
$release = Invoke-RestMethod https://api.github.com/repos/shivammathur/php-builder-windows/releases/tags/php$version
|
|
287
|
+
$asset = $release.assets | ForEach-Object {
|
|
288
|
+
if($_.name -match "php-debug-pack-$version.[0-9]+$dev$env:PHPTS-Win32-.*-$arch.zip") {
|
|
289
|
+
return $_.name
|
|
290
|
+
}
|
|
291
|
+
} | Select-Object -Last 1
|
|
292
|
+
} catch {
|
|
293
|
+
$release = Get-File -Url $php_builder/releases/expanded_assets/php$version
|
|
294
|
+
$asset = $release.links.href | ForEach-Object {
|
|
295
|
+
if($_ -match "php-debug-pack-$version.[0-9]+$dev$env:PHPTS-Win32-.*-$arch.zip") {
|
|
296
|
+
return $_.split('/')[-1]
|
|
297
|
+
}
|
|
298
|
+
} | Select-Object -Last 1
|
|
252
299
|
}
|
|
253
|
-
|
|
300
|
+
Get-File -Url $php_builder/releases/download/php$version/$asset -OutFile $php_dir\$asset
|
|
254
301
|
Expand-Archive -Path $php_dir\$asset -DestinationPath $php_dir -Force
|
|
255
302
|
Get-ChildItem -Path $php_dir -Filter php_*.pdb | Move-Item -Destination $ext_dir
|
|
256
303
|
}
|
|
257
304
|
|
|
258
305
|
# Function to install nightly version of PHP
|
|
259
306
|
Function Install-PhpNightly {
|
|
260
|
-
|
|
307
|
+
Get-File -Url $php_builder/releases/latest/download/Get-PhpNightly.ps1 -FallbackUrl https://dl.cloudsmith.io/public/shivammathur/php-builder-windows/raw/files/Get-PhpNightly.ps1 -OutFile $php_dir\Get-PhpNightly.ps1 > $null 2>&1
|
|
261
308
|
& $php_dir\Get-PhpNightly.ps1 -Architecture $arch -ThreadSafe $ts -Path $php_dir -Version $version > $null 2>&1
|
|
262
309
|
if(Test-Path $php_dir\COMMIT) {
|
|
263
310
|
return " ($( Get-Content $php_dir\COMMIT ))"
|
|
@@ -303,7 +350,7 @@ if ( $env:GITHUB_ACTIONS -eq 'true') {
|
|
|
303
350
|
if(-not($env:ImageOS) -and -not($env:ImageVersion)) {
|
|
304
351
|
if($env:RUNNER -eq 'github') {
|
|
305
352
|
Add-Log $cross "Runner" "Runner set as github in self-hosted environment"
|
|
306
|
-
|
|
353
|
+
Write-Error "Runner set as github in self-hosted environment" -ErrorAction Stop
|
|
307
354
|
}
|
|
308
355
|
$bin_dir = 'C:\tools\bin'
|
|
309
356
|
$php_dir = "$php_dir$version"
|
|
@@ -314,7 +361,7 @@ if(-not($env:ImageOS) -and -not($env:ImageVersion)) {
|
|
|
314
361
|
if($version -lt 5.6) {
|
|
315
362
|
Add-Log $cross "PHP" "PHP $version is not supported on self-hosted runner"
|
|
316
363
|
Start-Sleep 1
|
|
317
|
-
|
|
364
|
+
Write-Error "PHP $version is not supported on self-hosted runner" -ErrorAction Stop
|
|
318
365
|
}
|
|
319
366
|
if ($null -eq (Get-Module -ListAvailable -Name VcRedist)) {
|
|
320
367
|
Install-Module -Name VcRedist -Force
|
|
@@ -384,10 +431,10 @@ if($env:DEBUG -eq 'true') {
|
|
|
384
431
|
$installed = Get-Php -Path $php_dir
|
|
385
432
|
if($installed.MajorMinorVersion -ne $version) {
|
|
386
433
|
Add-Log $cross "PHP" "Could not setup PHP $version"
|
|
387
|
-
|
|
434
|
+
Write-Error "Could not setup PHP $version" -ErrorAction Stop
|
|
388
435
|
}
|
|
389
436
|
if($version -lt "5.5") {
|
|
390
|
-
('libeay32.dll', 'ssleay32.dll') | ForEach-Object -Parallel {
|
|
437
|
+
('libeay32.dll', 'ssleay32.dll') | ForEach-Object -Parallel { Get-File -Url "$using:php_builder/releases/download/openssl-1.0.2u/$_" -OutFile $using:php_dir\$_ >$null 2>&1 }
|
|
391
438
|
} else {
|
|
392
439
|
$enable_extensions += ('opcache')
|
|
393
440
|
}
|
package/src/utils.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
1
2
|
import * as path from 'path';
|
|
2
3
|
import * as core from '@actions/core';
|
|
3
4
|
import * as fetch from './fetch';
|
|
@@ -44,8 +45,8 @@ export async function getInput(
|
|
|
44
45
|
}
|
|
45
46
|
}
|
|
46
47
|
|
|
47
|
-
/**
|
|
48
|
-
*
|
|
48
|
+
/**
|
|
49
|
+
* Function to get manifest URL
|
|
49
50
|
*/
|
|
50
51
|
export async function getManifestURL(): Promise<string> {
|
|
51
52
|
return 'https://raw.githubusercontent.com/shivammathur/setup-php/develop/src/configs/php-versions.json';
|
|
@@ -57,10 +58,11 @@ export async function getManifestURL(): Promise<string> {
|
|
|
57
58
|
* @param version
|
|
58
59
|
*/
|
|
59
60
|
export async function parseVersion(version: string): Promise<string> {
|
|
60
|
-
const manifest = await getManifestURL();
|
|
61
61
|
switch (true) {
|
|
62
62
|
case /^(latest|nightly|\d+\.x)$/.test(version):
|
|
63
|
-
return JSON.parse((await fetch.fetch(
|
|
63
|
+
return JSON.parse((await fetch.fetch(await getManifestURL()))['data'])[
|
|
64
|
+
version
|
|
65
|
+
];
|
|
64
66
|
default:
|
|
65
67
|
switch (true) {
|
|
66
68
|
case version.length > 1:
|
|
@@ -422,6 +424,24 @@ export async function parseExtensionSource(
|
|
|
422
424
|
);
|
|
423
425
|
}
|
|
424
426
|
|
|
427
|
+
/**
|
|
428
|
+
* Read php version from input or file
|
|
429
|
+
*/
|
|
430
|
+
export async function readPHPVersion(): Promise<string> {
|
|
431
|
+
const version = await getInput('php-version', false);
|
|
432
|
+
if (version) {
|
|
433
|
+
return version;
|
|
434
|
+
}
|
|
435
|
+
const versionFile =
|
|
436
|
+
(await getInput('php-version-file', false)) || '.php-version';
|
|
437
|
+
if (fs.existsSync(versionFile)) {
|
|
438
|
+
return fs.readFileSync(versionFile, 'utf8').replace(/[\r\n]/g, '');
|
|
439
|
+
} else if (versionFile !== '.php-version') {
|
|
440
|
+
throw new Error(`Could not find '${versionFile}' file.`);
|
|
441
|
+
}
|
|
442
|
+
return 'latest';
|
|
443
|
+
}
|
|
444
|
+
|
|
425
445
|
/**
|
|
426
446
|
* Log to console
|
|
427
447
|
*
|