Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7df1333d2b | ||
|
|
9ef47bc1b1 | ||
|
|
bc3f3bc008 | ||
|
|
30e4da7ed2 | ||
|
|
1b7b26deeb | ||
|
|
0487f686e2 | ||
|
|
f5a7bad686 | ||
|
|
d48014e2bb |
21
README.md
21
README.md
@@ -3,8 +3,8 @@
|
||||
<p align="center">
|
||||
<a href="https://github.com/shivammathur/cache-extensions" title="Cache PHP extensions in GitHub Actions"><img alt="GitHub Actions status" src="https://github.com/shivammathur/cache-extensions/workflows/Main%20workflow/badge.svg"></a>
|
||||
<a href="https://codecov.io/gh/shivammathur/cache-extensions" title="Code coverage"><img alt="Codecov Code Coverage" src="https://codecov.io/gh/shivammathur/cache-extensions/branch/master/graph/badge.svg"></a>
|
||||
<a href="https://github.com/shivammathur/cache-extensions/blob/master/LICENSE" title="license"><img alt="LICENSE" src="https://img.shields.io/badge/license-MIT-428f7e.svg"></a>
|
||||
<a href="#tada-php-support" title="PHP Versions Supported"><img alt="PHP Versions Supported" src="https://img.shields.io/badge/php-%3E%3D%205.3-8892BF.svg"></a>
|
||||
<a href="https://github.com/shivammathur/cache-extensions/blob/master/LICENSE" title="license"><img alt="LICENSE" src="https://img.shields.io/badge/license-MIT-428f7e.svg?logo=open%20source%20initiative&logoColor=white&labelColor=555555"></a>
|
||||
<a href="#tada-php-support" title="PHP Versions Supported"><img alt="PHP Versions Supported" src="https://img.shields.io/badge/php-5.3%20to%208.1-777bb3.svg?logo=php&logoColor=white&labelColor=555555"></a>
|
||||
</p>
|
||||
|
||||
Cache PHP extensions in [GitHub Actions](https://github.com/features/actions "GitHub Actions"). This action has to be used along with [shivammathur/setup-php](https://github.com/shivammathur/setup-php "Setup PHP") and [actions/cache](https://github.com/actions/cache "Cache in GitHub Actions") GitHub Actions. It configures the environment required to cache PHP extensions. Refer to [Usage](#memo-usage "How to use this") section to see how to use this.
|
||||
@@ -32,10 +32,11 @@ Cache PHP extensions in [GitHub Actions](https://github.com/features/actions "Gi
|
||||
|5.6|`Stable`|`End of life`|
|
||||
|7.0|`Stable`|`End of life`|
|
||||
|7.1|`Stable`|`End of life`|
|
||||
|7.2|`Stable`|`Security fixes only`|
|
||||
|7.3|`Stable`|`Active`|
|
||||
|7.2|`Stable`|`End of life`|
|
||||
|7.3|`Stable`|`Security fixes only`|
|
||||
|7.4|`Stable`|`Active`|
|
||||
|8.0|`Nightly`|`In development`|
|
||||
|8.0|`Stable`|`Active`|
|
||||
|8.1|`Nightly`|`In development`|
|
||||
|
||||
## :cloud: OS/Platform Support
|
||||
|
||||
@@ -46,16 +47,17 @@ Cache PHP extensions in [GitHub Actions](https://github.com/features/actions "Gi
|
||||
|Ubuntu 18.04|`ubuntu-latest` or `ubuntu-18.04`|
|
||||
|Ubuntu 16.04|`ubuntu-16.04`|
|
||||
|macOS Catalina 10.15|`macos-latest` or `macOS-10.15`|
|
||||
|macOS Big Sur 11.0|`macOS-11.0`|
|
||||
|
||||
## :memo: Usage
|
||||
|
||||
Use this GitHub Action when the extensions you are adding in [setup-php](https://github.com/shivammathur/setup-php "setup-php GitHub Action") are installed and take a long time to setup. If you are using extensions which have the result `Installed and enabled` in the logs like `pecl` extensions on `Ubuntu` or extensions which have custom support, it is recommended to use this action to cache your extensions.
|
||||
Use this GitHub Action when the extensions you are adding in [setup-php](https://github.com/shivammathur/setup-php "setup-php GitHub Action") are installed and take a long time to set up. If you are using extensions which have the result `Installed and enabled` in the logs like `pecl` extensions on `Ubuntu` or extensions which have custom support, it is recommended to use this action to cache your extensions.
|
||||
|
||||
### Inputs
|
||||
|
||||
#### `php-version` (required)
|
||||
|
||||
- Specify the PHP version you want to setup.
|
||||
- Specify the PHP version you want to set up.
|
||||
- Accepts a `string`. For example `'7.4'`.
|
||||
- See [PHP support](#tada-php-support) for supported PHP versions.
|
||||
|
||||
@@ -117,7 +119,7 @@ jobs:
|
||||
|
||||
### Thread Safe Setup
|
||||
|
||||
If you setup both `TS` and `NTS` PHP versions on `Windows` in your workflow, please add `${{ env.phpts }}` to `key` and `restore-keys` inputs in `actions/cache` step in the above workflow to avoid conflicting cache.
|
||||
If you set up both `TS` and `NTS` PHP versions on `Windows` in your workflow, please add `${{ env.phpts }}` to `key` and `restore-keys` inputs in `actions/cache` step in the above workflow to avoid a conflicting cache.
|
||||
|
||||
```yaml
|
||||
- name: Cache extensions
|
||||
@@ -130,7 +132,7 @@ If you setup both `TS` and `NTS` PHP versions on `Windows` in your workflow, ple
|
||||
|
||||
## :scroll: License
|
||||
|
||||
The scripts and documentation in this project are released under the [MIT License](LICENSE "License for shivammathur/cache-extensions"). This project has multiple [dependencies](https://github.com/shivammathur/cache-extensions/network/dependencies "Dependencies for this PHP Action"). Their licenses can be found in their respective repositories.
|
||||
The scripts and documentation in this project are under the [MIT License](LICENSE "License for shivammathur/cache-extensions"). This project has multiple [dependencies](https://github.com/shivammathur/cache-extensions/network/dependencies "Dependencies for this PHP Action"). Their licenses can be found in their respective repositories.
|
||||
|
||||
## :+1: Contributions
|
||||
|
||||
@@ -144,7 +146,6 @@ If this action helped you.
|
||||
- Please consider supporting our work by sponsoring using [Open Collective](https://opencollective.com/setup-php), [Paypal](https://www.paypal.me/shivammathur "Shivam Mathur PayPal") or [Patreon](https://www.patreon.com/shivammathur "Shivam Mathur Patreon").
|
||||
- If you use this action at your company, please [reach out](mailto:contact@setup-php.com) to sponsor the project.
|
||||
|
||||
|
||||
## :package: Dependencies
|
||||
|
||||
- [Node.js dependencies](https://github.com/shivammathur/setup-php/network/dependencies "Node.js dependencies")
|
||||
2846
package-lock.json
generated
2846
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
30
package.json
30
package.json
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "cache-extensions",
|
||||
"version": "1.3.0",
|
||||
"version": "1.4.0",
|
||||
"private": false,
|
||||
"description": "Cache extensions in GitHub Actions",
|
||||
"main": "dist/index.js",
|
||||
@@ -28,22 +28,22 @@
|
||||
"@actions/exec": "^1.0.4"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/jest": "^26.0.14",
|
||||
"@types/node": "^14.11.8",
|
||||
"@typescript-eslint/eslint-plugin": "^4.4.1",
|
||||
"@typescript-eslint/parser": "^4.4.1",
|
||||
"@types/jest": "^26.0.19",
|
||||
"@types/node": "^14.14.17",
|
||||
"@typescript-eslint/eslint-plugin": "^4.11.1",
|
||||
"@typescript-eslint/parser": "^4.11.1",
|
||||
"@zeit/ncc": "^0.22.3",
|
||||
"eslint": "^7.11.0",
|
||||
"eslint-config-prettier": "^6.12.0",
|
||||
"eslint": "^7.16.0",
|
||||
"eslint-config-prettier": "^7.1.0",
|
||||
"eslint-plugin-import": "^2.22.1",
|
||||
"eslint-plugin-jest": "^24.1.0",
|
||||
"eslint-plugin-prettier": "^3.1.4",
|
||||
"husky": "^4.3.0",
|
||||
"jest": "^26.5.3",
|
||||
"jest-circus": "^26.5.3",
|
||||
"prettier": "^2.1.2",
|
||||
"ts-jest": "^26.4.1",
|
||||
"typescript": "^4.0.3"
|
||||
"eslint-plugin-jest": "^24.1.3",
|
||||
"eslint-plugin-prettier": "^3.3.0",
|
||||
"husky": "^4.3.6",
|
||||
"jest": "^26.6.3",
|
||||
"jest-circus": "^26.6.3",
|
||||
"prettier": "^2.2.1",
|
||||
"ts-jest": "^26.4.4",
|
||||
"typescript": "^4.1.3"
|
||||
},
|
||||
"husky": {
|
||||
"skipCI": true,
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
linux_extension_dir() {
|
||||
apiv=$1
|
||||
if [ "$version" = "5.3" ]; then
|
||||
echo "/home/runner/php/5.3.29/lib/php/extensions/no-debug-non-zts-$apiv"
|
||||
elif [[ "$version" =~ $old_versions ]]; then
|
||||
if [[ "$version" =~ $old_versions ]]; then
|
||||
echo "/usr/lib/php5/$apiv"
|
||||
elif [[ "$version" =~ $nightly_versions ]]; then
|
||||
elif [[ "$version" =~ 5.3|$nightly_versions ]]; then
|
||||
echo "/usr/local/php/$version/lib/php/extensions/no-debug-non-zts-$apiv"
|
||||
else
|
||||
echo "/usr/lib/php/$apiv"
|
||||
@@ -16,9 +14,13 @@ darwin_extension_dir() {
|
||||
old_versions_darwin="5.[3-5]"
|
||||
if [[ "$version" =~ $old_versions_darwin ]]; then
|
||||
echo "/opt/local/lib/php${version/./}/extensions/no-debug-non-zts-$apiv"
|
||||
else
|
||||
if [[ "$(sysctl -n hw.optional.arm64 2>/dev/null)" = "1" ]]; then
|
||||
echo "/opt/homebrew/lib/php/pecl/$apiv"
|
||||
else
|
||||
echo "/usr/local/lib/php/pecl/$apiv"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
get_apiv() {
|
||||
@@ -74,7 +76,7 @@ key=$2
|
||||
version=$3
|
||||
os=$(uname -s)
|
||||
old_versions="5.[4-5]"
|
||||
nightly_versions="8.[0-1]"
|
||||
nightly_versions="8.[1-9]"
|
||||
if [ "$os" = "Linux" ]; then
|
||||
release=$(lsb_release -s -c)
|
||||
os=$os-$release
|
||||
@@ -90,9 +92,7 @@ else
|
||||
os="Windows"
|
||||
dir='C:\\tools\\php\\ext'
|
||||
fi
|
||||
if [[ "$version" =~ $nightly_versions ]]; then
|
||||
key="$key-20200930"
|
||||
fi
|
||||
key="$os"-ext-"$version"-$(echo -n "$extensions-$key" | openssl dgst -sha256 | cut -d ' ' -f 2)
|
||||
key="$key-20201231"
|
||||
echo "::set-output name=dir::$dir"
|
||||
echo "::set-output name=key::$key"
|
||||
@@ -1,4 +1,5 @@
|
||||
[PHP Modules]
|
||||
amqp
|
||||
apc
|
||||
apcu
|
||||
bcmath
|
||||
@@ -9,22 +10,28 @@ cubrid
|
||||
curl
|
||||
date
|
||||
dom
|
||||
enchant
|
||||
ereg
|
||||
exif
|
||||
fileinfo
|
||||
filter
|
||||
ftp
|
||||
gd
|
||||
gettext
|
||||
gmp
|
||||
hash
|
||||
iconv
|
||||
ioncube
|
||||
intl
|
||||
json
|
||||
ldap
|
||||
libxml
|
||||
mbstring
|
||||
mcrypt
|
||||
memcache
|
||||
memcached
|
||||
mongo
|
||||
mongodb
|
||||
mysql
|
||||
mysqli
|
||||
mysqlnd
|
||||
@@ -36,9 +43,12 @@ PDO
|
||||
oci8
|
||||
PDO_OCI
|
||||
pdo_mysql
|
||||
pdo_pgsql
|
||||
pdo_sqlite
|
||||
pgsql
|
||||
Phar
|
||||
posix
|
||||
pspell
|
||||
readline
|
||||
redis
|
||||
Reflection
|
||||
@@ -69,4 +79,3 @@ blackfire
|
||||
|
||||
[Zend Modules]
|
||||
Xdebug
|
||||
|
||||
|
||||
@@ -89,4 +89,3 @@ blackfire
|
||||
[Zend Modules]
|
||||
Xdebug
|
||||
Zend OPcache
|
||||
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
[PHP Modules]
|
||||
amqp
|
||||
apcu
|
||||
bcmath
|
||||
bz2
|
||||
calendar
|
||||
@@ -8,6 +10,7 @@ curl
|
||||
date
|
||||
dba
|
||||
dom
|
||||
enchant
|
||||
exif
|
||||
FFI
|
||||
fileinfo
|
||||
@@ -18,37 +21,43 @@ gettext
|
||||
gmp
|
||||
hash
|
||||
iconv
|
||||
ioncube
|
||||
igbinary
|
||||
imap
|
||||
intl
|
||||
json
|
||||
ldap
|
||||
libxml
|
||||
mbstring
|
||||
memcache
|
||||
memcached
|
||||
mongodb
|
||||
msgpack
|
||||
mysqli
|
||||
mysqlnd
|
||||
odbc
|
||||
openssl
|
||||
pcntl
|
||||
pcov
|
||||
pcre
|
||||
PDO
|
||||
oci8
|
||||
PDO_OCI
|
||||
pdo_dblib
|
||||
PDO_Firebird
|
||||
pdo_mysql
|
||||
PDO_ODBC
|
||||
pdo_pgsql
|
||||
pdo_sqlite
|
||||
pgsql
|
||||
Phar
|
||||
phpdbg_webhelper
|
||||
posix
|
||||
pspell
|
||||
readline
|
||||
redis
|
||||
Reflection
|
||||
session
|
||||
shmop
|
||||
SimpleXML
|
||||
snmp
|
||||
soap
|
||||
sockets
|
||||
sodium
|
||||
@@ -65,13 +74,16 @@ xml
|
||||
xmlreader
|
||||
xmlwriter
|
||||
xsl
|
||||
yaml
|
||||
Zend OPcache
|
||||
zip
|
||||
zlib
|
||||
zmq
|
||||
ioncube
|
||||
phalcon3
|
||||
phalcon4
|
||||
blackfire
|
||||
|
||||
[Zend Modules]
|
||||
Zend OPcache
|
||||
Xdebug
|
||||
Zend OPcache
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
[PHP Modules]
|
||||
amqp
|
||||
apc
|
||||
apcu
|
||||
bcmath
|
||||
@@ -9,34 +10,47 @@ cubrid
|
||||
curl
|
||||
date
|
||||
dom
|
||||
enchant
|
||||
ereg
|
||||
exif
|
||||
fileinfo
|
||||
filter
|
||||
ftp
|
||||
gd
|
||||
gettext
|
||||
gmp
|
||||
hash
|
||||
iconv
|
||||
ioncube
|
||||
intl
|
||||
json
|
||||
ldap
|
||||
libxml
|
||||
mbstring
|
||||
mcrypt
|
||||
memcache
|
||||
memcached
|
||||
mongo
|
||||
mongodb
|
||||
mysql
|
||||
mysqli
|
||||
mysqlnd
|
||||
openssl
|
||||
pcntl
|
||||
pcov
|
||||
pcre
|
||||
PDO
|
||||
oci8
|
||||
PDO_OCI
|
||||
pdo_mysql
|
||||
pdo_pgsql
|
||||
pdo_sqlite
|
||||
pgsql
|
||||
Phar
|
||||
posix
|
||||
pspell
|
||||
readline
|
||||
redis
|
||||
Reflection
|
||||
session
|
||||
shmop
|
||||
@@ -65,4 +79,3 @@ blackfire
|
||||
|
||||
[Zend Modules]
|
||||
Xdebug
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ hash
|
||||
iconv
|
||||
igbinary
|
||||
imape
|
||||
ioncub
|
||||
ioncube
|
||||
intl
|
||||
json
|
||||
ldap
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
[PHP Modules]
|
||||
amqp
|
||||
apcu
|
||||
bcmath
|
||||
bz2
|
||||
calendar
|
||||
@@ -8,6 +10,7 @@ curl
|
||||
date
|
||||
dba
|
||||
dom
|
||||
enchant
|
||||
exif
|
||||
FFI
|
||||
fileinfo
|
||||
@@ -18,37 +21,43 @@ gettext
|
||||
gmp
|
||||
hash
|
||||
iconv
|
||||
ioncube
|
||||
igbinary
|
||||
imap
|
||||
intl
|
||||
json
|
||||
ldap
|
||||
libxml
|
||||
mbstring
|
||||
memcache
|
||||
memcached
|
||||
mongodb
|
||||
msgpack
|
||||
mysqli
|
||||
mysqlnd
|
||||
odbc
|
||||
openssl
|
||||
pcntl
|
||||
pcov
|
||||
pcre
|
||||
PDO
|
||||
oci8
|
||||
PDO_OCI
|
||||
pdo_dblib
|
||||
PDO_Firebird
|
||||
pdo_mysql
|
||||
PDO_ODBC
|
||||
pdo_pgsql
|
||||
pdo_sqlite
|
||||
pgsql
|
||||
Phar
|
||||
phpdbg_webhelper
|
||||
posix
|
||||
pspell
|
||||
readline
|
||||
redis
|
||||
Reflection
|
||||
session
|
||||
shmop
|
||||
SimpleXML
|
||||
snmp
|
||||
soap
|
||||
sockets
|
||||
sodium
|
||||
@@ -65,13 +74,16 @@ xml
|
||||
xmlreader
|
||||
xmlwriter
|
||||
xsl
|
||||
yaml
|
||||
Zend OPcache
|
||||
zip
|
||||
zlib
|
||||
zmq
|
||||
ioncube
|
||||
phalcon3
|
||||
phalcon4
|
||||
blackfire
|
||||
|
||||
[Zend Modules]
|
||||
Zend OPcache
|
||||
Xdebug
|
||||
Zend OPcache
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
[PHP Modules]
|
||||
amqp
|
||||
apc
|
||||
apcu
|
||||
bcmath
|
||||
@@ -9,35 +10,45 @@ cubrid
|
||||
curl
|
||||
date
|
||||
dom
|
||||
enchant
|
||||
ereg
|
||||
exif
|
||||
fileinfo
|
||||
filter
|
||||
ftp
|
||||
gd
|
||||
gettext
|
||||
gmp
|
||||
hash
|
||||
iconv
|
||||
ioncube
|
||||
intl
|
||||
json
|
||||
ldap
|
||||
libxml
|
||||
mbstring
|
||||
mcrypt
|
||||
memcache
|
||||
memcached
|
||||
mongo
|
||||
mongodb
|
||||
mysql
|
||||
mysqli
|
||||
mysqlnd
|
||||
openssl
|
||||
pcntl
|
||||
pcov
|
||||
pcre
|
||||
PDO
|
||||
oci8
|
||||
PDO_OCI
|
||||
pdo_mysql
|
||||
pdo_pgsql
|
||||
pdo_sqlite
|
||||
pgsql
|
||||
Phar
|
||||
posix
|
||||
pspell
|
||||
readline
|
||||
redis
|
||||
Reflection
|
||||
@@ -68,4 +79,3 @@ blackfire
|
||||
|
||||
[Zend Modules]
|
||||
Xdebug
|
||||
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
[PHP Modules]
|
||||
amqp
|
||||
apcu
|
||||
bcmath
|
||||
bz2
|
||||
calendar
|
||||
@@ -8,6 +10,7 @@ curl
|
||||
date
|
||||
dba
|
||||
dom
|
||||
enchant
|
||||
exif
|
||||
FFI
|
||||
fileinfo
|
||||
@@ -18,37 +21,43 @@ gettext
|
||||
gmp
|
||||
hash
|
||||
iconv
|
||||
ioncube
|
||||
igbinary
|
||||
imap
|
||||
intl
|
||||
json
|
||||
ldap
|
||||
libxml
|
||||
mbstring
|
||||
memcache
|
||||
memcached
|
||||
mongodb
|
||||
msgpack
|
||||
mysqli
|
||||
mysqlnd
|
||||
odbc
|
||||
openssl
|
||||
pcntl
|
||||
pcov
|
||||
pcre
|
||||
PDO
|
||||
oci8
|
||||
PDO_OCI
|
||||
pdo_dblib
|
||||
PDO_Firebird
|
||||
pdo_mysql
|
||||
PDO_ODBC
|
||||
pdo_pgsql
|
||||
pdo_sqlite
|
||||
pgsql
|
||||
Phar
|
||||
phpdbg_webhelper
|
||||
posix
|
||||
pspell
|
||||
readline
|
||||
redis
|
||||
Reflection
|
||||
session
|
||||
shmop
|
||||
SimpleXML
|
||||
snmp
|
||||
soap
|
||||
sockets
|
||||
sodium
|
||||
@@ -65,13 +74,16 @@ xml
|
||||
xmlreader
|
||||
xmlwriter
|
||||
xsl
|
||||
yaml
|
||||
Zend OPcache
|
||||
zip
|
||||
zlib
|
||||
zmq
|
||||
ioncube
|
||||
phalcon3
|
||||
phalcon4
|
||||
blackfire
|
||||
|
||||
[Zend Modules]
|
||||
Zend OPcache
|
||||
Xdebug
|
||||
Zend OPcache
|
||||
|
||||
Reference in New Issue
Block a user