we'll probably get this right until 1.0
[awesomized/ext-ion] / .github / workflows / release.yml
1 name: release
2 on:
3 push:
4 tags: "v**"
5
6 jobs:
7 pharext:
8 runs-on: ubuntu-20.04
9 steps:
10 - uses: actions/checkout@v2
11 - name: Install
12 run: |
13 PHP_V=$(basename $(readlink /etc/alternatives/php)); \
14 sudo apt-get install -y \
15 $PHP_V-phar \
16 $PHP_V-posix
17 - name: Composer
18 run: composer require m6w6/pharext
19 - name: Pharext
20 run: ./vendor/bin/pharext -vps . --release ${GITHUB_REF_NAME:1}
21 - name: Release
22 uses: actions/github-script@v5
23 with:
24 script: |
25 const release = await github.rest.repos.createRelease({
26 owner: context.repo.owner,
27 repo: context.repo.repo,
28 tag_name: process.env.GITHUB_REF_NAME,
29 body: context.payload.head_commit.message
30 });
31 const phar_file = "ion-" + process.env.GITHUB_REF_NAME.substring(1) + ".ext.phar";
32 const asset = await github.rest.repos.uploadReleaseAsset({
33 owner: context.repo.owner,
34 repo: context.repo.repo,
35 release_id: release.data.id,
36 body: context.payload.head_commit.message,
37 data: require("fs").readFileSync(phar_file)
38 });
39