From d4b04b85f5bcb1cc7eccb8bf94fa654594c37257 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A5=BD=E5=90=A7=EF=BC=8C=E4=BD=A0=E6=83=B3=E8=AF=B4?= =?UTF-8?q?=E5=95=A5?= Date: Wed, 3 Jan 2024 10:22:40 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=BF=AB=E6=8D=B7?= =?UTF-8?q?=E6=9E=84=E5=BB=BA=E8=84=9A=E6=9C=AC=E5=92=8C=E4=BD=BF=E7=94=A8?= =?UTF-8?q?=E6=96=87=E6=A1=A3=20(#527)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 调整快捷构建脚本和使用文档 * update build-release-example.sh * update build-release-example.sh --- .editorconfig | 2 +- build-release-example.sh | 2 +- docs/linux.md | 25 +++++++++++++++++++++++-- docs/macOS.md | 31 ++++++++++++++++++++++++++++++- 4 files changed, 55 insertions(+), 5 deletions(-) diff --git a/.editorconfig b/.editorconfig index 155d834fed..cce7fea6f4 100644 --- a/.editorconfig +++ b/.editorconfig @@ -23,7 +23,7 @@ indent_style = space [*.md] indent_style = space -max_line_length = 80 +max_line_length = 120 [COMMIT_EDITMSG] indent_size = 4 diff --git a/build-release-example.sh b/build-release-example.sh index c36516b00a..1771a6ee89 100644 --- a/build-release-example.sh +++ b/build-release-example.sh @@ -152,7 +152,7 @@ fi # 定制构建选项 OPTIONS='+apcu +ds +xlswriter +ssh2' OPTIONS="${OPTIONS} --with-swoole-pgsql=1" - +# OPTIONS="${OPTIONS} @macos" if [ ${IN_DOCKER} -eq 1 ] ; then diff --git a/docs/linux.md b/docs/linux.md index 6f2c238bb6..687ca42a10 100644 --- a/docs/linux.md +++ b/docs/linux.md @@ -3,7 +3,8 @@ `Linux` 下需要在容器中构建,因此需要先构建 `swoole-cli-builder:base` 基础镜像。 基础镜像 `Dockerfile` 参考 [sapi/Dockerfile](/sapi/docker/Dockerfile) -1. 构建基础镜像:`./make.sh docker-build`,也可以直接使用官方构建好的镜像 `docker pull phpswoole/swoole-cli-builder:base` +1. 构建基础镜像:`./make.sh docker-build [china|ustc|tuna] ` + ,也可以直接使用官方构建好的镜像 `docker pull phpswoole/swoole-cli-builder:base` 1. 构建完成之后,使用 `./make.sh docker-bash` 进入容器 2. 构建所有 `C/C++`库: `./make.sh all-library` 3. 提交镜像:`./make.sh docker-commit` 提交 `swoole-cli-builder` 镜像 @@ -12,6 +13,26 @@ > 当 `C库` 变更时,应该修改 `swoole-cli-builder` 镜像的版本 > `make.sh all-library` 是可重入的,它会自动跳过已构建成功的库 +快速初始化构建环境 +==== +不执行 `./make.sh docker-build [china|ustc|tuna] ` 生成基础镜像 +使用如下命令快速进入容器环境 +便捷调整构建环境 + +```bash +# 安装容器运行环境 +# bash sapi/quickstart/linux/install-docker.sh + +bash sapi/quickstart/linux/run-alpine-container.sh +bash sapi/quickstart/linux/alpine-init.sh + +# 使用镜像源 例子 +# bash sapi/quickstart/linux/install-docker.sh --mirror [ china | ustc | tuna ] +# bash sapi/quickstart/linux/alpine-init.sh --mirror [ china | ustc | tuna | tencentyun | huaweicloud ] +# bash sapi/quickstart/linux/alpine-init.sh --mirror china + +``` + 构建 swoole-cli ==== 需要依赖 `phpswoole/swoole-cli-builder` 镜像,可按照第一步的提示构建镜像,也可以直接拉取官方构建好的镜像。 @@ -26,6 +47,7 @@ 其他指令 ==== + * `./make.sh list-library`:列出所有 `C/C++` 库 * `./make.sh list-extension`:列出所有扩展 * `./make.sh clean-all-library`:清理所有 `C/C++` 库 @@ -38,7 +60,6 @@ * `./make.sh clean-[library-name]`:单独清理某个 `C/C++` 库 * `./make.sh clean-[library-name]-cached`:单独清理某个 `C/C++` 库,保留缓存文件 - 常见错误 ===== diff --git a/docs/macOS.md b/docs/macOS.md index 5a775a1ae5..7a8a458c75 100644 --- a/docs/macOS.md +++ b/docs/macOS.md @@ -6,6 +6,28 @@ 3. 配置 `./make.sh config` 4. 构建 `./make.sh build` +## 快速 初始化macos 构建环境 + +运行此命令解决构建过程中遇到的绝大部分问题 +如`homebrew`已安装,跳过执行此命令`bash sapi/quickstart/macos/install-homebrew.sh` + +```bash + + +bash sapi/quickstart/macos/install-homebrew.sh +bash sapi/quickstart/macos/macos-init.sh + +# 使用homebrew镜像源 +# bash sapi/quickstart/macos/install-homebrew.sh --mirror ustc +# bash sapi/quickstart/macos/macos-init.sh --mirror ustc + +# 设置默认安装库目录的权限 +CURRENT_USER=$(whoami) +sudo mkdir -p /usr/local/swoole-cli +CURRENT_USER=$(whoami) && sudo chown -R ${CURRENT_USER}:staff /usr/local/swoole-cli + +``` + ## 清理 使用 `brew` 安装的库可能会干扰 `swoole-cli` 的编译,必须要在构建之前将关联的软件进行卸载。在构建完成后再重新安装。 @@ -121,7 +143,14 @@ export LIBSODIUM_LIBS=$(pkg-config --libs libsodium) > 解压以后执行如下命令: ```bash - sudo xattr -d com.apple.quarantine ./swoole-cli + + sudo xattr -d com.apple.quarantine ./swoole-cli + + file ./bin/swoole-cli + otool -L ./bin/swoole-cli + ``` ## [macOS doesn't officially support fully static linking ](https://developer.apple.com/library/archive/qa/qa1118/_index.html) + +macos 支持构建静态库,不支持构建静态链接的二进制文件 From 01d75469fde5c3c2e3dbd0118581db08324e40ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A5=BD=E5=90=A7=EF=BC=8C=E4=BD=A0=E6=83=B3=E8=AF=B4?= =?UTF-8?q?=E5=95=A5?= Date: Wed, 3 Jan 2024 10:23:35 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E6=94=B9=E8=BF=9B=20=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E6=BA=90=E7=A0=81=E8=84=9A=E6=9C=AC=20(#526)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 改进同步扩展源码 * 完善 同步 PHP 源码 * sync-source-code.php 添加执行选项 * 改进 同步源码脚本 --- diff.php | 4 +- prepare.php | 3 +- sapi/PHP-VERSION.conf | 1 + sapi/src/template/make.php | 72 ++------------------ sync-source-code.php | 132 +++++++++++++++++++++++++++++++++++++ 5 files changed, 143 insertions(+), 69 deletions(-) create mode 100644 sapi/PHP-VERSION.conf create mode 100644 sync-source-code.php diff --git a/diff.php b/diff.php index bec1e28f02..c884ae3aa2 100755 --- a/diff.php +++ b/diff.php @@ -3,7 +3,9 @@ $list_swoole_cli = swoole_string(`./bin/swoole-cli -m | tail -n +2 | head -n -3`)->trim()->lower()->split(PHP_EOL) ->remove('core'); -$list_php_src = swoole_string(`ls -1 ~/soft/php-8.1.5/ext`)->trim()->lower()->split(PHP_EOL) +$php_version_tag = trim(file_get_contents(__DIR__ . '/sapi/PHP-VERSION.conf')); +$php_source_folder = __DIR__ . '/var/php-' . $php_version_tag . '/ext/'; +$list_php_src = swoole_string(`ls -1 {$php_source_folder}`)->trim()->lower()->split(PHP_EOL) ->remove('ext_skel.php') ->remove('zend_test'); diff --git a/prepare.php b/prepare.php index 6c04bbba82..942e02a270 100755 --- a/prepare.php +++ b/prepare.php @@ -4,7 +4,8 @@ use SwooleCli\Preprocessor; -const BUILD_PHP_VERSION = '8.1.12'; +$php_version_tag = trim(file_get_contents(__DIR__ . '/sapi/PHP-VERSION.conf')); +define('BUILD_PHP_VERSION', $php_version_tag); $homeDir = getenv('HOME'); diff --git a/sapi/PHP-VERSION.conf b/sapi/PHP-VERSION.conf new file mode 100644 index 0000000000..9c3fe364a5 --- /dev/null +++ b/sapi/PHP-VERSION.conf @@ -0,0 +1 @@ +8.1.12 diff --git a/sapi/src/template/make.php b/sapi/src/template/make.php index 6f2e08c57b..1df8f8aa5d 100755 --- a/sapi/src/template/make.php +++ b/sapi/src/template/make.php @@ -382,73 +382,11 @@ elif [ "$1" = "clean" ] ;then make_clean elif [ "$1" = "sync" ] ;then - echo "sync" - # ZendVM - cp -r $SRC/Zend ./ - # Extension - cp -r $SRC/ext/bcmath/ ./ext - cp -r $SRC/ext/bz2/ ./ext - cp -r $SRC/ext/calendar/ ./ext - cp -r $SRC/ext/ctype/ ./ext - cp -r $SRC/ext/curl/ ./ext - cp -r $SRC/ext/date/ ./ext - cp -r $SRC/ext/dom/ ./ext - cp -r $SRC/ext/exif/ ./ext - cp -r $SRC/ext/fileinfo/ ./ext - cp -r $SRC/ext/filter/ ./ext - cp -r $SRC/ext/gd/ ./ext - cp -r $SRC/ext/gettext/ ./ext - cp -r $SRC/ext/gmp/ ./ext - cp -r $SRC/ext/hash/ ./ext - cp -r $SRC/ext/iconv/ ./ext - cp -r $SRC/ext/intl/ ./ext - cp -r $SRC/ext/json/ ./ext - cp -r $SRC/ext/libxml/ ./ext - cp -r $SRC/ext/mbstring/ ./ext - cp -r $SRC/ext/mysqli/ ./ext - cp -r $SRC/ext/mysqlnd/ ./ext - cp -r $SRC/ext/opcache/ ./ext - sed -i 's/ext_shared=yes/ext_shared=no/g' ext/opcache/config.m4 && sed -i 's/shared,,/$ext_shared,,/g' ext/opcache/config.m4 - sed -i 's/-DZEND_ENABLE_STATIC_TSRMLS_CACHE=1/-DZEND_ENABLE_STATIC_TSRMLS_CACHE=1 -DPHP_ENABLE_OPCACHE/g' ext/opcache/config.m4 - echo -e '#include "php.h"\n\nextern zend_module_entry opcache_module_entry;\n#define phpext_opcache_ptr &opcache_module_entry\n' > ext/opcache/php_opcache.h - cp -r $SRC/ext/openssl/ ./ext - cp -r $SRC/ext/pcntl/ ./ext - cp -r $SRC/ext/pcre/ ./ext - cp -r $SRC/ext/pdo/ ./ext - cp -r $SRC/ext/pdo_mysql/ ./ext - cp -r $SRC/ext/pdo_sqlite/ ./ext - cp -r $SRC/ext/phar/ ./ext - echo -e '\n#include "sapi/cli/sfx/hook_stream.h"' >> ext/phar/phar_internal.h - cp -r $SRC/ext/posix/ ./ext - cp -r $SRC/ext/readline/ ./ext - cp -r $SRC/ext/reflection/ ./ext - cp -r $SRC/ext/session/ ./ext - cp -r $SRC/ext/simplexml/ ./ext - cp -r $SRC/ext/soap/ ./ext - cp -r $SRC/ext/sockets/ ./ext - cp -r $SRC/ext/sodium/ ./ext - cp -r $SRC/ext/spl/ ./ext - cp -r $SRC/ext/sqlite3/ ./ext - cp -r $SRC/ext/standard/ ./ext - cp -r $SRC/ext/sysvshm/ ./ext - cp -r $SRC/ext/tokenizer/ ./ext - cp -r $SRC/ext/xml/ ./ext - cp -r $SRC/ext/xmlreader/ ./ext - cp -r $SRC/ext/xmlwriter/ ./ext - cp -r $SRC/ext/xsl/ ./ext - cp -r $SRC/ext/zip/ ./ext - cp -r $SRC/ext/zlib/ ./ext - # main - cp -r $SRC/main ./ - sed -i 's/\/\* start Zend extensions \*\//\/\* start Zend extensions \*\/\n#ifdef PHP_ENABLE_OPCACHE\n\textern zend_extension zend_extension_entry;\n\tzend_register_extension(\&zend_extension_entry, NULL);\n#endif/g' main/main.c - # build - cp -r $SRC/build ./ - # TSRM - cp -r ./TSRM/TSRM.h main/TSRM.h - cp -r $SRC/configure.ac ./ - # fpm - cp -r $SRC/sapi/fpm/fpm ./sapi/cli - exit 0 + PHP_CLI=$(which php) + test -f ${__PROJECT_DIR__}/bin/runtime/php && PHP_CLI="${__PROJECT_DIR__}/bin/runtime/php -d curl.cainfo=${__PROJECT_DIR__}/bin/runtime/cacert.pem -d openssl.cafile=${__PROJECT_DIR__}/bin/runtime/cacert.pem" + $PHP_CLI -v + $PHP_CLI sync-source-code.php + exit 0 else help fi diff --git a/sync-source-code.php b/sync-source-code.php new file mode 100644 index 0000000000..763f4580f1 --- /dev/null +++ b/sync-source-code.php @@ -0,0 +1,132 @@ + ext/opcache/php_opcache.h + cp -r $SRC/ext/openssl/ ./ext + cp -r $SRC/ext/pcntl/ ./ext + cp -r $SRC/ext/pcre/ ./ext + cp -r $SRC/ext/pdo/ ./ext + cp -r $SRC/ext/pdo_mysql/ ./ext + cp -r $SRC/ext/pdo_sqlite/ ./ext + cp -r $SRC/ext/phar/ ./ext + echo -e '\n#include "sapi/cli/sfx/hook_stream.h"' >> ext/phar/phar_internal.h + cp -r $SRC/ext/posix/ ./ext + cp -r $SRC/ext/readline/ ./ext + cp -r $SRC/ext/reflection/ ./ext + cp -r $SRC/ext/session/ ./ext + cp -r $SRC/ext/simplexml/ ./ext + cp -r $SRC/ext/soap/ ./ext + cp -r $SRC/ext/sockets/ ./ext + cp -r $SRC/ext/sodium/ ./ext + cp -r $SRC/ext/spl/ ./ext + cp -r $SRC/ext/sqlite3/ ./ext + cp -r $SRC/ext/standard/ ./ext + cp -r $SRC/ext/sysvshm/ ./ext + cp -r $SRC/ext/tokenizer/ ./ext + cp -r $SRC/ext/xml/ ./ext + cp -r $SRC/ext/xmlreader/ ./ext + cp -r $SRC/ext/xmlwriter/ ./ext + cp -r $SRC/ext/xsl/ ./ext + cp -r $SRC/ext/zip/ ./ext + cp -r $SRC/ext/zlib/ ./ext + + # main + cp -r $SRC/main ./ + sed -i 's/\/\* start Zend extensions \*\//\/\* start Zend extensions \*\/\n#ifdef PHP_ENABLE_OPCACHE\n\textern zend_extension zend_extension_entry;\n\tzend_register_extension(\&zend_extension_entry, NULL);\n#endif/g' main/main.c + + # build + cp -r $SRC/build ./ + # TSRM + cp -r ./TSRM/TSRM.h main/TSRM.h + cp -r $SRC/configure.ac ./ + + # fpm + cp -r $SRC/sapi/fpm/fpm ./sapi/cli + exit 0 + +EOF; + + +echo $cmd . PHP_EOL; +`$cmd`; +echo PHP_EOL; +echo "action : " . $action . ' done !' . PHP_EOL; From 14360659c4fc3db14fdc06a814e4960ff63f4c9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A5=BD=E5=90=A7=EF=BC=8C=E4=BD=A0=E6=83=B3=E8=AF=B4?= =?UTF-8?q?=E5=95=A5?= Date: Wed, 3 Jan 2024 10:24:14 +0800 Subject: [PATCH 3/4] Feature update workflow config (#528) * update workflow config * update workflow config * update * update * update workflow config for windows --- .github/workflows/linux-aarch64.yml | 8 +++-- .github/workflows/linux-x86_64.yml | 8 +++-- .github/workflows/macos-x86_64.yml | 8 +++-- .github/workflows/windows-cygwin.yml | 47 +++++++++++++++++++++++++--- 4 files changed, 58 insertions(+), 13 deletions(-) diff --git a/.github/workflows/linux-aarch64.yml b/.github/workflows/linux-aarch64.yml index e342df9008..d6b4780ca1 100644 --- a/.github/workflows/linux-aarch64.yml +++ b/.github/workflows/linux-aarch64.yml @@ -129,6 +129,8 @@ jobs: ./bin/swoole-cli --ri swoole file ./bin/swoole-cli readelf -h ./bin/swoole-cli + APP_VERSION=$(./bin/swoole-cli -v | awk '{print $2}') + echo "APP_VERSION=${APP_VERSION}" >> $GITHUB_ENV ./bin/swoole-cli -r "echo PHP_VERSION;" ./bin/swoole-cli ./vendor/bin/phpunit ./sapi/src/UnitTest/MainTest.php --list-tests @@ -137,12 +139,12 @@ jobs: - name: production artifacts uses: actions/upload-artifact@v3 with: - name: swoole-cli - retention-days: 7 + name: swoole-cli-v${{ env.APP_VERSION }}-linux-arm64 + retention-days: 90 path: ./bin/swoole-cli - name: gh release uses: softprops/action-gh-release@v1 if: startsWith(github.ref, 'refs/tags/') with: - files: swoole-cli-*-linux-x64.tar.xz + files: swoole-cli-v${{ env.APP_VERSION }}-linux-arm64.tar.xz diff --git a/.github/workflows/linux-x86_64.yml b/.github/workflows/linux-x86_64.yml index 659c184b22..475d61bfb0 100644 --- a/.github/workflows/linux-x86_64.yml +++ b/.github/workflows/linux-x86_64.yml @@ -129,6 +129,8 @@ jobs: ./bin/swoole-cli --ri swoole file ./bin/swoole-cli readelf -h ./bin/swoole-cli + APP_VERSION=$(./bin/swoole-cli -v | awk '{print $2}') + echo "APP_VERSION=${APP_VERSION}" >> $GITHUB_ENV ./bin/swoole-cli -r "echo PHP_VERSION;" ./bin/swoole-cli ./vendor/bin/phpunit ./sapi/src/UnitTest/MainTest.php --list-tests ./bin/swoole-cli ./vendor/bin/phpunit ./sapi/src/UnitTest/MainTest.php @@ -137,12 +139,12 @@ jobs: - name: production artifacts uses: actions/upload-artifact@v3 with: - name: swoole-cli - retention-days: 7 + name: swoole-cli-${{ env.APP_VERSION }}-linux-x64 + retention-days: 90 path: ./bin/swoole-cli - name: gh release uses: softprops/action-gh-release@v1 if: startsWith(github.ref, 'refs/tags/') with: - files: swoole-cli-*-linux-x64.tar.xz + files: swoole-cli-${{ env.APP_VERSION }}-linux-x64.tar.xz diff --git a/.github/workflows/macos-x86_64.yml b/.github/workflows/macos-x86_64.yml index dae54eca6b..5815337a0d 100644 --- a/.github/workflows/macos-x86_64.yml +++ b/.github/workflows/macos-x86_64.yml @@ -114,6 +114,8 @@ jobs: ./bin/swoole-cli --ri swoole file ./bin/swoole-cli otool -L ./bin/swoole-cli + APP_VERSION=$(./bin/swoole-cli -v | awk '{print $2}') + echo "APP_VERSION=${APP_VERSION}" >> $GITHUB_ENV ./bin/swoole-cli -r "echo PHP_VERSION;" ./bin/swoole-cli ./vendor/bin/phpunit ./sapi/src/UnitTest/MainTest.php --list-tests ./bin/swoole-cli ./vendor/bin/phpunit ./sapi/src/UnitTest/MainTest.php @@ -121,12 +123,12 @@ jobs: - name: Archive production artifacts uses: actions/upload-artifact@v3 with: - name: swoole-cli-macos-x64 - retention-days: 7 + name: swoole-cli-v${{ env.APP_VERSION }}-macos-x64 + retention-days: 90 path: ./bin/swoole-cli - name: gh release uses: softprops/action-gh-release@v1 if: startsWith(github.ref, 'refs/tags/') with: - files: swoole-cli-*-x64.tar.xz + files: swoole-cli-v${{ env.APP_VERSION }}-macos-x64.tar.xz diff --git a/.github/workflows/windows-cygwin.yml b/.github/workflows/windows-cygwin.yml index 94152b6207..5586ad3d3c 100644 --- a/.github/workflows/windows-cygwin.yml +++ b/.github/workflows/windows-cygwin.yml @@ -27,6 +27,13 @@ jobs: path: C:/cygwin-packages key: ${{ runner.os }}-build-${{ env.cache-name }} + - name: Cache pool + id: cache-cygwin-pool + uses: actions/cache@v3 + with: + path: "${{ github.workspace }}\\pool\\" + key: ${{ runner.os }}-build-pool-cache + - name: Install deps uses: cygwin/cygwin-install-action@v2 with: @@ -48,7 +55,39 @@ jobs: - name: Build run: | bash ./sapi/scripts/cygwin/cygwin-build.sh + + - name: Show Build Result + run: | ./bin/swoole-cli -v + ./bin/swoole-cli -m + ./bin/swoole-cli --ri swoole + ./bin/swoole-cli -r "echo PHP_VERSION;" + + - name: get app version with bash + # 参考 https://github.com/marketplace/actions/install-cygwin + shell: C:\cygwin\bin\bash.EXE --noprofile --norc -e -o pipefail -o igncr {0} + # shell: C:\cygwin\bin\bash.EXE --login --noprofile --norc -e -o pipefail -o igncr {0} + run: | + ./bin/swoole-cli -v | awk '{print $2}' + + APP_VERSION=$(./bin/swoole-cli -v | awk '{print $2}') + echo $APP_VERSION + echo "APP_VERSION=${APP_VERSION}" >> $GITHUB_ENV + + - name: get app version with PowerShell + run: | + ./bin/swoole-cli -v + $cmdOutput=./bin/swoole-cli -v + $cmdOutput -match "(\d{1,2}\.\d{1,2}\.\d{1,2})" + $CYGWIN_APP_VERSION=$Matches[1] + echo $CYGWIN_APP_VERSION + echo "CYGWIN_APP_VERSION=$CYGWIN_APP_VERSION" >> $Env:GITHUB_ENV + + # 参考 https://github.com/orgs/community/discussions/26641 + # echo "APP_VERSION=${APP_VERSION}" >> $Env:GITHUB_ENV + # echo "APP_VERSION=$APP_VERSION" | Out-File -FilePath $env:GITHUB_ENV -Append + # Add-Content -Path $env:GITHUB_ENV -Value "name=$value" + # Add-Content -Path $env:GITHUB_ENV -Value "APP_VERSION=$APP_VERSION" - name: Archive run: | @@ -57,9 +96,9 @@ jobs: - name: production artifacts uses: actions/upload-artifact@v3 with: - name: cygwin-swoole-cli-dist - path: | - bin/swoole-cli.exe + name: swoole-cli-v${{ env.APP_VERSION }}-cygwin-x64 + retention-days: 90 + path: swoole-cli-v${{ env.APP_VERSION }}-cygwin-x64.zip - name: gh release uses: softprops/action-gh-release@v1 @@ -67,4 +106,4 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: - files: swoole-cli-*-cygwin-x64.zip + files: swoole-cli-v${{ env.APP_VERSION }}-cygwin-x64.zip From 7bd5f5b17f23189c25ebfc3caecefc0113faa330 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A5=BD=E5=90=A7=EF=BC=8C=E4=BD=A0=E6=83=B3=E8=AF=B4?= =?UTF-8?q?=E5=95=A5?= Date: Wed, 3 Jan 2024 12:38:55 +0800 Subject: [PATCH 4/4] fix worfkow linux config bug (#532) --- .github/workflows/linux-x86_64.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/linux-x86_64.yml b/.github/workflows/linux-x86_64.yml index 475d61bfb0..ee26db6952 100644 --- a/.github/workflows/linux-x86_64.yml +++ b/.github/workflows/linux-x86_64.yml @@ -139,7 +139,7 @@ jobs: - name: production artifacts uses: actions/upload-artifact@v3 with: - name: swoole-cli-${{ env.APP_VERSION }}-linux-x64 + name: swoole-cli-v${{ env.APP_VERSION }}-linux-x64 retention-days: 90 path: ./bin/swoole-cli @@ -147,4 +147,4 @@ jobs: uses: softprops/action-gh-release@v1 if: startsWith(github.ref, 'refs/tags/') with: - files: swoole-cli-${{ env.APP_VERSION }}-linux-x64.tar.xz + files: swoole-cli-v${{ env.APP_VERSION }}-linux-x64.tar.xz