Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Experiment swoole v4.8.x #564

Merged
merged 57 commits into from
Feb 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
983a519
新增 debug 打包
jingjingxyk Jan 7, 2024
7a08471
Merge branch 'feature-build-type' into experiment-webui
jingjingxyk Jan 7, 2024
9661127
update
jingjingxyk Jan 7, 2024
d164665
update cygwin config
jingjingxyk Jan 7, 2024
b1dcc5d
update cygwin config
jingjingxyk Jan 7, 2024
bb53bae
更新脚本 与 build_native_php 分支保持一致 (#536)
jingjingxyk Jan 8, 2024
186a165
添加参数,用于打包时 保留调试信息 (#540)
jingjingxyk Jan 8, 2024
69aa3a3
setup-php-runtime.sh 允许使用 socks5h 协议 (#544)
jingjingxyk Jan 8, 2024
9c06d19
Feature workflow enable linux aarch64 (#549)
jingjingxyk Jan 8, 2024
9a52abe
Fix build dependencies container (#545)
jingjingxyk Jan 8, 2024
4ecaaa5
Feature archive debug (#552)
jingjingxyk Jan 8, 2024
dec6a48
merge code
jingjingxyk Jan 8, 2024
b067a3a
merge code
jingjingxyk Jan 8, 2024
aa2c13e
remove mirror-to-gitee.yml
matyhtf Jan 8, 2024
524472a
release remove debug version (#553)
jingjingxyk Jan 8, 2024
7afc0af
workflow 添加 缓存源码包
jingjingxyk Jan 9, 2024
9361233
workflow 添加 缓存源码包
jingjingxyk Jan 9, 2024
493014b
Merge branch 'main' into experiment-webui
jingjingxyk Jan 9, 2024
91d24f0
fix workdir error
jingjingxyk Jan 9, 2024
1d058ad
使用 github release 缓存依赖库源码包
jingjingxyk Jan 10, 2024
4279f2d
合并主分支代码
jingjingxyk Jan 13, 2024
7a6319e
update php to 8.1.27
matyhtf Jan 16, 2024
4bf55d4
update php to 8.1.27 [fpm]
matyhtf Jan 16, 2024
0ff699c
remove pdo_sqlite
matyhtf Jan 16, 2024
c343bf9
update php to 8.1.27 [cli]
matyhtf Jan 16, 2024
45e7570
udpate swoole to 5.1.1
matyhtf Jan 16, 2024
ce6af1c
fix
matyhtf Jan 16, 2024
5df5c70
fix [2]
matyhtf Jan 17, 2024
c630c1f
upgrade openssl nghttp2 nghttp3 ngtcp2 gmp icu libedit sqlite zli…
jingjingxyk Jan 17, 2024
b77f695
Optimize make.php
matyhtf Jan 17, 2024
725beca
Fix opcache not load
matyhtf Jan 17, 2024
c7ddd81
The build directory in a virtual machine environment should use the O…
matyhtf Jan 18, 2024
60638b3
merge main branch
jingjingxyk Jan 18, 2024
a0cb7cf
merge experiment
jingjingxyk Jan 18, 2024
1e19156
merge main
jingjingxyk Jan 18, 2024
8c95f6c
update workflow mips64le riscv64
jingjingxyk Jan 18, 2024
cfb299e
update workflow mips64le riscv64
jingjingxyk Jan 18, 2024
ee91407
update workflow mips64le riscv64
jingjingxyk Jan 18, 2024
da6c30d
update workflow mips64le riscv64
jingjingxyk Jan 18, 2024
d08f5e5
update workflow mips64le riscv64
jingjingxyk Jan 18, 2024
af42c2c
update workflow mips64le riscv64
jingjingxyk Jan 18, 2024
4e36fe8
update workflow mips64le riscv64
jingjingxyk Jan 18, 2024
dec2a26
update workflow mips64le riscv64
jingjingxyk Jan 18, 2024
6d7ffab
update workflow mips64le riscv64
jingjingxyk Jan 18, 2024
9c988c0
update workflow mips64le riscv64
jingjingxyk Jan 18, 2024
0a14479
update workflow mips64le riscv64
jingjingxyk Jan 18, 2024
0b2a26c
update workflow mips64le riscv64
jingjingxyk Jan 19, 2024
a181ed4
update workflow mips64le riscv64
jingjingxyk Jan 19, 2024
313b262
update workflow mips64le riscv64
jingjingxyk Jan 19, 2024
a118b5f
update workflow mips64le riscv64
jingjingxyk Jan 19, 2024
edc19bb
update workflow mips64le riscv64
jingjingxyk Jan 19, 2024
18711ea
update github workflow config
jingjingxyk Feb 20, 2024
e1d27d4
修复zlib 下载地址
jingjingxyk Feb 21, 2024
ad92718
Merge branch 'fix_zlib_download_url' into experiment-webui
jingjingxyk Feb 21, 2024
5a47dc6
修复 macos 环境下 sed 命令 缺陷
jingjingxyk Feb 21, 2024
8342cd5
Merge branch 'fix_sed_command' into experiment-webui
jingjingxyk Feb 21, 2024
8379135
Merge branch 'experiment-webui' into experiment_v4.8.x
jingjingxyk Feb 21, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
103 changes: 103 additions & 0 deletions .github/workflows/auto-cache-pool-tarball.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
name: auto-cache-pool-tarball

on:
push:
pull_request:
schedule:
- cron: '0 0 */6 * *'

jobs:
auto-cache-pool:
if: 1
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Prepare Source Code
run: |
echo $PATH
env
docker info
id -u
id -g
who
cat /etc/os-release
hostnamectl
uname -s
uname -m
uname -r

cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
cat /proc/cpuinfo | grep "cpu cores" | uniq
cat /proc/cpuinfo| grep "processor"| wc -l
lscpu

export IPV6=$(ip -6 address show | grep inet6 | awk '{print $2}' | cut -d'/' -f1 | sed -n '2p')
export IPV4=$(ip -4 address show | grep inet | grep -v 127.0.0 | awk '{print $2}' | cut -d'/' -f1 | sed -n '1p')
echo $IPV4
echo $IPV6
echo "X_IPV6=${IPV6}" >> $GITHUB_ENV
echo "X_IPV4=${IPV4}" >> $GITHUB_ENV

- name: Cache PHP Runtime
uses: actions/cache@v3
id: php-runtime-cache
with:
path: ${{ github.workspace }}/bin/runtime
key: ${{ runner.os }}-x86_64-php-runtime

- name: Cache PHP Vendor
uses: actions/cache@v3
id: php-vendor-cache
with:
path: ${{ github.workspace }}/vendor
key: ${{ runner.os }}-x86_64-php-vendor

- name: Cache Dependency Source Code Tarball
uses: actions/cache@v3
id: pool-cache
with:
path: ${{ github.workspace }}/pool/
key: source-code-tarball-pool

- name: Prepare Runtime and Libraries and Extensions
run: |
set -x
mkdir -p pool/lib
mkdir -p pool/ext
mkdir -p bin/runtime
if [ ! -f bin/runtime/php ] ; then
bash setup-php-runtime.sh
fi

ls -A pool/lib/
WORK_DIR=${{ github.workspace }}
uname -m
export PATH=${WORK_DIR}/bin/runtime:$PATH
alias php="php -d curl.cainfo=${WORK_DIR}/bin/runtime/cacert.pem -d openssl.cafile=${WORK_DIR}/bin/runtime/cacert.pem"

composer update --optimize-autoloader

php prepare.php +inotify +apcu +ds +xlswriter +ssh2 +pgsql --with-swoole-pgsql=1 --with-libavif=1
cd ${{ github.workspace }}/pool/
zip -6 -r ${WORK_DIR}/all-archive.zip ext lib
cd ${{ github.workspace }}

- name: Show Build Result
run: |
ls -A pool/lib/
ls -A pool/ext/

- name: production artifacts
if: 1
uses: actions/upload-artifact@v3
with:
name: cached-all-archive
retention-days: 90
path: all-archive.zip

- name: gh release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
files: all-archive.zip
15 changes: 1 addition & 14 deletions .github/workflows/build-alpine-builder-container.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ cp -f ${__PROJECT__}/sapi/quickstart/linux/alpine-init.sh .
cat > Dockerfile <<'EOF'
FROM alpine:3.18

RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
ENV TZ=Etc/UTC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

ADD ./alpine-init.sh /alpine-init.sh

Expand Down Expand Up @@ -72,17 +72,4 @@ linux/ppc64le
linux/s390x
EOF

# debian 可设置的架构选项
:<<'EOF'
linux/386
linux/amd64
linux/arm/v5
linux/arm/v7
linux/arm64/v8
linux/arm64
linux/mips64le
linux/ppc64le
linux/riscv64
linux/s390x
EOF

85 changes: 85 additions & 0 deletions .github/workflows/build-debian-builder-container.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
#!/bin/bash

set -exu
__DIR__=$(
cd "$(dirname "$0")"
pwd
)
__PROJECT__=$(
cd ${__DIR__}/../../
pwd
)
cd ${__DIR__}
cd ${__PROJECT__}
mkdir -p var/build-github-action-container/
cd ${__PROJECT__}/var/build-github-action-container/

cp -f ${__PROJECT__}/sapi/quickstart/linux/debian-init.sh .
cp -f ${__PROJECT__}/sapi/quickstart/linux/extra/debian-php-init.sh .

cat > Dockerfile <<'EOF'
FROM debian:unstable-20240110-slim

ENV DEBIAN_FRONTEND=noninteractive
ENV TZ=Etc/UTC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

ADD ./debian-init.sh /debian-init.sh

RUN bash /debian-init.sh
# RUN sh /debian-init.sh --mirror china

ADD ./debian-php-init.sh /debian-php-init.sh
RUN bash /debian-php-init.sh

RUN uname -m
RUN mkdir /work

WORKDIR /work
ENTRYPOINT ["tini", "--"]

EOF



PLATFORM='linux/amd64'

while [ $# -gt 0 ]; do
case "$1" in
--platform)
PLATFORM="$2"
;;
--*)
echo "Illegal option $1"
;;
esac
shift $(($# > 0 ? 1 : 0))
done



IMAGE='swoole-cli-builder:latest'
docker buildx build -t ${IMAGE} -f ./Dockerfile . --platform ${PLATFORM}

docker save -o "swoole-cli-builder-image.tar" ${IMAGE}



# debian 可设置的架构选项
# https://hub.docker.com/_/debian/tags

:<<'EOF'
linux/386
linux/amd64
linux/arm/v5
linux/arm/v7
linux/arm64/v8
linux/arm64
linux/mips64le
linux/ppc64le
linux/riscv64
linux/s390x
EOF

# Debian 全球镜像站
# https://www.debian.org/mirror/list
10 changes: 9 additions & 1 deletion .github/workflows/linux-aarch64.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ jobs:

- name: Cache Dependency Source Code Tarball
uses: actions/cache@v3
id: pool-cache
with:
path: ${{ github.workspace }}/pool/
key: source-code-tarball-pool
Expand Down Expand Up @@ -176,12 +177,19 @@ jobs:
echo $APP_VERSION
echo "APP_VERSION=${APP_VERSION}" >> $GITHUB_ENV

- name: production artifacts debug
uses: actions/upload-artifact@v3
with:
name: swoole-cli-v${{ env.APP_VERSION }}-linux-arm64-debug
retention-days: 90
path: ./bin/swoole-cli

- name: production artifacts
uses: actions/upload-artifact@v3
with:
name: swoole-cli-v${{ env.APP_VERSION }}-linux-arm64
retention-days: 90
path: ./bin/swoole-cli
path: ./bin/dist/swoole-cli

- name: gh release
uses: softprops/action-gh-release@v1
Expand Down
Loading
Loading