diff --git a/.github/workflows/linux-mips64le.yaml b/.github/workflows/linux-mips64le.yaml deleted file mode 100644 index c149d4f25..000000000 --- a/.github/workflows/linux-mips64le.yaml +++ /dev/null @@ -1,196 +0,0 @@ -name: build-linux-mips64le - -on: [ push, pull_request ] - -env: - BUILD_PHP_VERSION: 8.2.13 - -jobs: - linux-mips64le: - if: 0 - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - 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 - 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 - - echo "BUILD_PHP_VERSION=${{ matrix.php-version }}" >> $GITHUB_ENV - - # git submodule update --init - - sudo mkdir -p /usr/local/swoole-cli - uid=$(id -u) && gid=$(id -g) && sudo chown -R ${uid}:${gid} /usr/local/swoole-cli - - mkdir -p ${{ github.workspace }}/var/build-github-action-container/ - - - name: Cache PHP Vendor - uses: actions/cache@v3 - id: php-vendor-cache - with: - path: ${{ github.workspace }}/vendor - key: ${{ runner.os }}-mips64le-php-vendor - - - name: Cache Dependency Source Code Tarball - uses: actions/cache@v4 - id: pool-cache - with: - path: ${{ github.workspace }}/pool/ - key: source-code-tarball-pool - - - name: Cache all-library - uses: actions/cache@v4 - id: all-library-cache - with: - path: /usr/local/swoole-cli - key: ${{ github.head_ref || github.ref_name }}-${{ runner.os }}-mips64le-all-library - - - name: Cache swoole-cli-builder-image - uses: actions/cache@v4 - id: swoole-cli-builder-image-mips64le-cache - with: - path: ${{ github.workspace }}/var/build-github-action-container/swoole-cli-builder-image.tar - key: ${{ runner.os }}-mips64le-swoole-cli-builder-image - - - name: Prepare Libraries and Extensions - run: | - set -x - mkdir -p pool/lib - mkdir -p pool/ext - mkdir -p bin/runtime - - CACHE_NUM=$(ls -A pool/lib/ | wc -l) - LIB_NUM=$(ls -A sapi/src/builder/library/ | wc -l) - echo `expr $LIB_NUM - $CACHE_NUM` - - if test $CACHE_NUM -eq 0 ; then - bash sapi/download-box/download-box-get-archive-from-container.sh - fi - - ls -A pool/lib/ - ls -A /usr/local/swoole-cli/ - - - name: Prepare QEMU - run: | - set -x - sudo docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - - - name: Prepare swoole-cli-builder-image - run: | - if [ -f ${{ github.workspace }}/var/build-github-action-container/swoole-cli-builder-image.tar ] ; then - docker load -i ${{ github.workspace }}/var/build-github-action-container/swoole-cli-builder-image.tar - else - bash .github/workflows/build-debian-builder-container.sh --platform "linux/mips64le" - fi - - - name: prepare pre-built library - if: 1 - uses: addnab/docker-run-action@v3 - with: - image: swoole-cli-builder:latest - options: -v ${{ github.workspace }}:/work -w /work -v /usr/local/swoole-cli/:/usr/local/swoole-cli/ - run: | - for i in `ls /usr/local/swoole-cli/` - do - echo $i - done - uname -a - uname -s - uname -m - apt install -y php-dev php-cli - - - name: Build - if: 1 - uses: addnab/docker-run-action@v3 - with: - image: swoole-cli-builder:latest - options: -v ${{ github.workspace }}:/work -w /work -e BUILD_PHP_VERSION=${{ env.BUILD_PHP_VERSION }} -v /usr/local/swoole-cli:/usr/local/swoole-cli - run: | - set -eux - uname -m - if [ ! -f bin/runtime/php ] ; then - bash setup-php-runtime.sh - fi - - # export PATH=/work/bin/runtime:$PATH # 容器已经内置 php 和 composer - # alias php="php -d curl.cainfo=/work/bin/runtime/cacert.pem -d openssl.cafile=/work/bin/runtime/cacert.pem" - - sh sapi/quickstart/linux/alpine-init.sh - composer install --no-interaction --no-autoloader --no-scripts --profile --no-dev - composer dump-autoload --optimize --profile --no-dev - - php prepare.php --with-override-default-enabled-ext=1 --with-php-version=8.3.4 - - bash make-install-deps.sh - - bash make.sh all-library - - bash make.sh config - bash make.sh build - bash make.sh archive - - - name: Show Build Result - if: 1 - uses: addnab/docker-run-action@v3 - with: - image: swoole-cli-builder:latest - options: -v ${{ github.workspace }}:/work -w /work - run: | - ./thirdparty/php-src/sapi/cli/php -v - ./thirdparty/php-src/sapi/cli/php -m - BUILD_PHP_VERSION=$(./thirdparty/php-src/sapi/cli/php -v | head -n 1 | awk '{print $2}') - file ./bin/php-${BUILD_PHP_VERSION}/bin/php - readelf -h ./bin/php-${BUILD_PHP_VERSION}/bin/php - APP_VERSION=$(./bin/php-${BUILD_PHP_VERSION}/bin/php -v | head -n 1 | awk '{print $2}') - echo ${APP_VERSION} - echo ${APP_VERSION} > APP_VERSION - ./bin/php-${BUILD_PHP_VERSION}/bin/php -r "echo PHP_VERSION;" - - - name: get app version - if: 1 - run: | - APP_VERSION=$(cat ./APP_VERSION) - echo $APP_VERSION - echo "APP_VERSION=${APP_VERSION}" >> $GITHUB_ENV - echo "BUILD_PHP_VERSION=${APP_VERSION}" >> $GITHUB_ENV - - - name: production artifacts debug - if: 0 - uses: actions/upload-artifact@v4 - with: - name: php-cli-v${{ env.APP_VERSION }}-linux-mips64le-debug - retention-days: 90 - path: ./bin/php-${{ env.BUILD_PHP_VERSION }}/bin/php - - - name: production artifacts - if: 0 - uses: actions/upload-artifact@v4 - with: - name: php-cli-v${{ env.APP_VERSION }}-linux-mips64le - retention-days: 90 - path: ./bin/php-${{ env.BUILD_PHP_VERSION }}/bin/dist/php - - - name: gh release - uses: softprops/action-gh-release@v2 - if: 0 && startsWith(github.ref, 'refs/tags/') - with: - files: | - php-cli-v${{ env.APP_VERSION }}-linux-mips64le.tar.xz - php-cli-v${{ env.APP_VERSION }}-linux-mips64le-debug.tar.xz - diff --git a/.github/workflows/linux-riscv64.yml b/.github/workflows/linux-riscv64.yml deleted file mode 100644 index 001522d65..000000000 --- a/.github/workflows/linux-riscv64.yml +++ /dev/null @@ -1,196 +0,0 @@ -name: build-linux-riscv64 - -on: [ push, pull_request ] - -jobs: - linux-riscv: - if: 0 - runs-on: - # - ubuntu-latest - # https://github.com/apps/riscv-builders - # https://github.com/mengzhuo/GhostWrite/blob/main/.github/workflows/test.yml - - riscv-builders - - soc-spacemit-k1 - - soc-starfive-jh7100 - steps: - - uses: actions/checkout@v4 - - name: Prepare Source Code - run: | - lscpu - echo $PATH - env - docker info - id -u - id -g - who - cat /etc/os-release - hostnamectl - uname -s - uname -m - uname -r - 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 - - # git submodule update --init - - sudo mkdir -p /usr/local/swoole-cli - uid=$(id -u) && gid=$(id -g) && sudo chown -R ${uid}:${gid} /usr/local/swoole-cli - - mkdir -p ${{ github.workspace }}/var/build-github-action-container/ - - - name: Cache PHP Vendor - uses: actions/cache@v3 - id: php-vendor-cache - with: - path: ${{ github.workspace }}/vendor - key: ${{ runner.os }}-riscv64-php-vendor - - - name: Cache Dependency Source Code Tarball - uses: actions/cache@v4 - id: pool-cache - with: - path: ${{ github.workspace }}/pool/ - key: source-code-tarball-pool - - - name: Cache swoole-cli-builder-image - uses: actions/cache@v4 - id: swoole-cli-builder-image-riscv64-cache - with: - path: ${{ github.workspace }}/var/build-github-action-container/swoole-cli-builder-image.tar - key: ${{ runner.os }}-riscv64-swoole-cli-builder-image - - - name: Prepare Libraries and Extensions - run: | - set -x - mkdir -p pool/lib - mkdir -p pool/ext - mkdir -p bin/runtime - - CACHE_NUM=$(ls -A pool/lib/ | wc -l) - LIB_NUM=$(ls -A sapi/src/builder/library/ | wc -l) - echo `expr $LIB_NUM - $CACHE_NUM` - - if test $CACHE_NUM -eq 0 ; then - bash sapi/download-box/download-box-get-archive-from-container.sh - fi - - ls -A pool/lib/ - ls -A /usr/local/swoole-cli/ - - - name: Prepare QEMU - run: | - set -x - sudo docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - - - name: Prepare swoole-cli-builder-image - run: | - if [ -f ${{ github.workspace }}/var/build-github-action-container/swoole-cli-builder-image.tar ] ; then - docker load -i ${{ github.workspace }}/var/build-github-action-container/swoole-cli-builder-image.tar - else - bash .github/workflows/build-debian-builder-container.sh --platform "linux/riscv64" - fi - - - name: prepare pre-built library - if: 0 - uses: addnab/docker-run-action@v3 - with: - image: swoole-cli-builder:latest - options: -v ${{ github.workspace }}:/work -w /work -v /usr/local/swoole-cli/:/usr/local/swoole-cli - run: | - for i in `ls /usr/local/swoole-cli/` - do - echo $i - done - uname -a - uname -s - uname -m - apt install -y php-dev php-cli - - - name: Build - if: 1 - uses: addnab/docker-run-action@v3 - with: - image: swoole-cli-builder:latest - options: -v ${{ github.workspace }}:/work -w /work -v /usr/local/swoole-cli:/usr/local/swoole-cli - run: | - set -eux - uname -m - if [ ! -f bin/runtime/php ] ; then - bash setup-php-runtime.sh - fi - - # export PATH=/work/bin/runtime:$PATH # 容器已经内置 php 和 composer - # alias php="php -d curl.cainfo=/work/bin/runtime/cacert.pem -d openssl.cafile=/work/bin/runtime/cacert.pem" - - # sed -i 's/mirrors.tuna.tsinghua.edu.cn/dl-cdn.alpinelinux.org/g' /etc/apk/repositories - # sed -i 's/mirrors.ustc.edu.cn/dl-cdn.alpinelinux.org/g' /etc/apk/repositories - # bash sapi/quickstart/mark-install-library-cached.sh - - sh sapi/quickstart/linux/alpine-init.sh - composer install --no-interaction --no-autoloader --no-scripts --profile --no-dev - composer dump-autoload --optimize --profile --no-dev - - php prepare.php --with-override-default-enabled-ext=1 --with-php-version=8.3.4 --with-c-compiler=musl-gcc - - bash make-install-deps.sh - - bash make.sh all-library - # rm -rf /work/thirdparty/php-src/ext/pcre/ - - bash make.sh config - bash make.sh build - bash make.sh archive - - - name: Show Build Result - if: 1 - uses: addnab/docker-run-action@v3 - with: - image: swoole-cli-builder:latest - options: -v ${{ github.workspace }}:/work -w /work - run: | - ./thirdparty/php-src/sapi/cli/php -v - ./thirdparty/php-src/sapi/cli/php -m - BUILD_PHP_VERSION=$(./thirdparty/php-src/sapi/cli/php -v | head -n 1 | awk '{print $2}') - file ./bin/php-${BUILD_PHP_VERSION}/bin/php - readelf -h ./bin/php-${BUILD_PHP_VERSION}/bin/php - APP_VERSION=$(./bin/php-${BUILD_PHP_VERSION}/bin/php -v | head -n 1 | awk '{print $2}') - echo ${APP_VERSION} - echo ${APP_VERSION} > APP_VERSION - ./bin/php-${BUILD_PHP_VERSION}/bin/php -r "echo PHP_VERSION;" - - - name: get app version - if: 1 - run: | - APP_VERSION=$(cat ./APP_VERSION) - echo $APP_VERSION - echo "APP_VERSION=${APP_VERSION}" >> $GITHUB_ENV - echo "BUILD_PHP_VERSION=${APP_VERSION}" >> $GITHUB_ENV - - - name: production artifacts debug - if: 0 - uses: actions/upload-artifact@v4 - with: - name: php-cli-v${{ env.APP_VERSION }}-linux-riscv64-debug - retention-days: 90 - path: ./bin/php-${{ env.BUILD_PHP_VERSION }}/bin/php - - - name: production artifacts - if: 0 - uses: actions/upload-artifact@v4 - with: - name: php-cli-v${{ env.APP_VERSION }}-linux-riscv64 - retention-days: 90 - path: ./bin/php-${{ env.BUILD_PHP_VERSION }}/bin/dist/php - - - name: gh release - uses: softprops/action-gh-release@v2 - if: 0 && startsWith(github.ref, 'refs/tags/') - with: - files: | - php-cli-v${{ env.APP_VERSION }}-linux-riscv64.tar.xz - php-cli-v${{ env.APP_VERSION }}-linux-riscv64-debug.tar.xz -