forked from amphp/ext-uv
-
Notifications
You must be signed in to change notification settings - Fork 0
66 lines (64 loc) · 2.38 KB
/
Ubuntu-release.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
name: Ubuntu Release
on:
release:
types: [published, edited]
jobs:
multi:
name: ${{ matrix.operating-system }} CI - PHP ${{ matrix.php-versions }}-${{ matrix.threads }}
runs-on: ${{ matrix.operating-system }}
strategy:
fail-fast: false
matrix:
operating-system: [ubuntu-20.04, ubuntu-22.04]
php-versions: ['7.4', '8.0', '8.1', '8.2']
threads: [ts, nts]
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
coverage: none
env:
phpts: ${{ matrix.threads }} # specify ts or nts
- name: Install libuv
run: |
sudo apt-get install libuv1-dev -y
- name: Build ext-uv
run: |
phpize
./configure --with-uv=$(readlink -f `pwd`/libuv)
make
sudo make install
- name: Setup deb
id: setup-deb
run: |
mkdir -p .debpkg/"$(php-config --extension-dir)"
cp -f modules/uv.so .debpkg/"$(php-config --extension-dir)"
chmod +x ./cmd/os.sh
echo "OS_CODENAME=$(sudo ./cmd/os.sh)" >> $GITHUB_OUTPUT
# mkdir -p .debpkg/DEBIAN
# echo -e 'echo "extension=uv.so" >> "$(php -r 'echo php_ini_loaded_file();')"' > .debpkg/DEBIAN/postinst
# chmod +x .debpkg/DEBIAN/postinst
- name: Create deb package
id: build-deb-action
uses: jiro4989/build-deb-action@v2
with:
package: ext-uv
package_root: .debpkg
maintainer: Lawrence Stubbs [email protected]
version: ${{ github.ref }} # refs/tags/v*.*.*
arch: 'amd64'
depends: 'libuv1, php-common'
desc: 'uv provides access to underlying libuv functions.'
- name: Upload the deb binary artifacts
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: ${{steps.build-deb-action.outputs.file_name}}
asset_name: ext_uv_${{ github.event.release.tag_name }}_php${{ matrix.php-versions }}_${{ matrix.threads }}_${{ matrix.operating-system }}_amd64.deb
tag: ${{ github.ref }}
overwrite: true
file_glob: false
body: ${{steps.build-deb-action.outputs.file_name}} for ${{ steps.setup-deb.outputs.OS_CODENAME }}