From 27ccc1189f1013602058402218b2b6f3e59b99e2 Mon Sep 17 00:00:00 2001 From: crazywhalecc Date: Sat, 25 Jan 2025 10:59:44 +0800 Subject: [PATCH] Try new build CI --- .github/workflows/build-linux-arm.yml | 131 --------------- .github/workflows/build-linux-x86_64.yml | 126 -------------- .github/workflows/build-macos-aarch64.yml | 140 --------------- .github/workflows/build-macos-x86_64.yml | 142 ---------------- .github/workflows/build-unix.yml | 187 +++++++++++++++++++++ .github/workflows/build-windows-x86_64.yml | 1 - 6 files changed, 187 insertions(+), 540 deletions(-) delete mode 100644 .github/workflows/build-linux-arm.yml delete mode 100644 .github/workflows/build-linux-x86_64.yml delete mode 100644 .github/workflows/build-macos-aarch64.yml delete mode 100644 .github/workflows/build-macos-x86_64.yml create mode 100644 .github/workflows/build-unix.yml diff --git a/.github/workflows/build-linux-arm.yml b/.github/workflows/build-linux-arm.yml deleted file mode 100644 index 34912f21..00000000 --- a/.github/workflows/build-linux-arm.yml +++ /dev/null @@ -1,131 +0,0 @@ -name: CI on arm linux - -on: - workflow_dispatch: - inputs: - operating-system: - required: true - description: Compile target arch (Linux only) - type: choice - options: - - aarch64 - version: - required: true - description: php version to compile - default: '8.3' - type: choice - options: - - '8.4' - - '8.3' - - '8.2' - - '8.1' - - '8.0' - - '7.4' - build-cli: - description: build cli binary - default: true - type: boolean - build-micro: - description: build phpmicro binary - type: boolean - build-fpm: - description: build fpm binary - type: boolean - extensions: - description: extensions to compile (comma separated) - required: true - type: string - prefer-pre-built: - description: prefer pre-built binaries (reduce build time) - type: boolean - default: true - debug: - description: enable debug logs - type: boolean - -env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - -jobs: - build: - name: build ${{ inputs.version }} on ${{ inputs.operating-system }} - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - # Cache composer dependencies - - id: cache-composer-deps - uses: actions/cache@v4 - with: - path: vendor - key: composer-dependencies - - # If there's no Composer cache, install dependencies - - if: steps.cache-composer-deps.outputs.cache-hit != 'true' - run: composer update --no-dev --classmap-authoritative - - - name: Generate hashed key for download cache - run: | - INPUT_HASH=$(echo "${{ runner.os }}-${{ inputs.version }}-${{ inputs.extensions }}" | sha256sum | awk '{print $1}') - echo "INPUT_HASH=${INPUT_HASH}" >> $GITHUB_ENV - - # Cache downloaded source - - id: cache-download - uses: actions/cache@v4 - with: - path: downloads - key: php-${{ env.INPUT_HASH }} - - # With or without debug - - if: inputs.debug == true - run: echo "SPC_BUILD_DEBUG=--debug" >> $GITHUB_ENV - - if: inputs.prefer-pre-built == true - run: echo "SPC_PRE_BUILT=--prefer-pre-built" >> $env:GITHUB_ENV - - # With target select: cli, micro or both - - if: ${{ inputs.build-cli == true }} - run: echo "SPC_BUILD_CLI=--build-cli" >> $GITHUB_ENV - - if: ${{ inputs.build-micro == true }} - run: echo "SPC_BUILD_MICRO=--build-micro" >> $GITHUB_ENV - - if: ${{ inputs.build-fpm == true }} - run: echo "SPC_BUILD_FPM=--build-fpm" >> $GITHUB_ENV - - # If there's no dependencies cache, fetch sources, with or without debug - - if: steps.cache-download.outputs.cache-hit != 'true' - run: SPC_USE_ARCH=${{ inputs.operating-system }} ./bin/spc-alpine-docker download --with-php=${{ inputs.version }} --for-extensions=${{ inputs.extensions }} ${{ env.SPC_BUILD_DEBUG }} ${{ env.SPC_PRE_BUILT }} - - # Run build command - - run: SPC_USE_ARCH=${{ inputs.operating-system }} ./bin/spc-alpine-docker build ${{ inputs.extensions }} ${{ env.SPC_BUILD_DEBUG }} ${{ env.SPC_BUILD_CLI }} ${{ env.SPC_BUILD_MICRO }} ${{ env.SPC_BUILD_FPM }} - - # Upload cli executable - - if: ${{ inputs.build-cli == true }} - uses: actions/upload-artifact@v4 - with: - name: php-${{ inputs.version }}-linux-${{ inputs.operating-system }} - path: buildroot/bin/php - - # Upload micro self-extracted executable - - if: ${{ inputs.build-micro == true }} - uses: actions/upload-artifact@v4 - with: - name: micro-${{ inputs.version }}-linux-${{ inputs.operating-system }} - path: buildroot/bin/micro.sfx - - # Upload fpm executable - - if: ${{ inputs.build-fpm == true }} - uses: actions/upload-artifact@v4 - with: - name: php-fpm-${{ inputs.version }}-linux-${{ inputs.operating-system }} - path: buildroot/bin/php-fpm - - # Upload extensions metadata - - uses: actions/upload-artifact@v4 - with: - name: license-files - path: buildroot/license/ - - uses: actions/upload-artifact@v4 - with: - name: build-meta - path: | - buildroot/build-extensions.json - buildroot/build-libraries.json diff --git a/.github/workflows/build-linux-x86_64.yml b/.github/workflows/build-linux-x86_64.yml deleted file mode 100644 index 8fb28667..00000000 --- a/.github/workflows/build-linux-x86_64.yml +++ /dev/null @@ -1,126 +0,0 @@ -name: CI on x86_64 linux - -on: - workflow_dispatch: - inputs: - version: - required: true - description: php version to compile - default: '8.3' - type: choice - options: - - '8.4' - - '8.3' - - '8.2' - - '8.1' - - '8.0' - - '7.4' - build-cli: - description: build cli binary - default: true - type: boolean - build-micro: - description: build phpmicro binary - type: boolean - build-fpm: - description: build fpm binary - type: boolean - extensions: - description: extensions to compile (comma separated) - required: true - type: string - prefer-pre-built: - description: prefer pre-built binaries (reduce build time) - type: boolean - default: true - debug: - description: enable debug logs - type: boolean - -env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - -jobs: - build: - name: build ${{ inputs.version }} on Linux x86_64 - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - # Cache composer dependencies - - id: cache-composer-deps - uses: actions/cache@v4 - with: - path: vendor - key: composer-dependencies - - # If there's no Composer cache, install dependencies - - if: steps.cache-composer-deps.outputs.cache-hit != 'true' - run: composer update --no-dev --classmap-authoritative - - - name: Generate hashed key for download cache - run: | - INPUT_HASH=$(echo "${{ runner.os }}-${{ inputs.version }}-${{ inputs.extensions }}" | sha256sum | awk '{print $1}') - echo "INPUT_HASH=${INPUT_HASH}" >> $GITHUB_ENV - - # Cache downloaded source - - id: cache-download - uses: actions/cache@v4 - with: - path: downloads - key: php-${{ env.INPUT_HASH }} - - # With or without debug - - if: inputs.debug == true - run: echo "SPC_BUILD_DEBUG=--debug" >> $GITHUB_ENV - - if: inputs.prefer-pre-built == true - run: echo "SPC_PRE_BUILT=--prefer-pre-built" >> $env:GITHUB_ENV - - # With target select: cli, micro or both - - if: ${{ inputs.build-cli == true }} - run: echo "SPC_BUILD_CLI=--build-cli" >> $GITHUB_ENV - - if: ${{ inputs.build-micro == true }} - run: echo "SPC_BUILD_MICRO=--build-micro" >> $GITHUB_ENV - - if: ${{ inputs.build-fpm == true }} - run: echo "SPC_BUILD_FPM=--build-fpm" >> $GITHUB_ENV - - # If there's no dependencies cache, fetch sources, with or without debug - - if: steps.cache-download.outputs.cache-hit != 'true' - run: CACHE_API_EXEC=yes ./bin/spc-alpine-docker download --with-php=${{ inputs.version }} --for-extensions=${{ inputs.extensions }} ${{ env.SPC_BUILD_DEBUG }} ${{ env.SPC_PRE_BUILT }} - - # Run build command - - run: ./bin/spc-alpine-docker build ${{ inputs.extensions }} ${{ env.SPC_BUILD_DEBUG }} ${{ env.SPC_BUILD_CLI }} ${{ env.SPC_BUILD_MICRO }} ${{ env.SPC_BUILD_FPM }} - - # Upload cli executable - - if: ${{ inputs.build-cli == true }} - uses: actions/upload-artifact@v4 - with: - name: php-${{ inputs.version }}-${{ env.SPC_BUILD_OS }} - path: buildroot/bin/php - - # Upload micro self-extracted executable - - if: ${{ inputs.build-micro == true }} - uses: actions/upload-artifact@v4 - with: - name: micro-${{ inputs.version }}-${{ env.SPC_BUILD_OS }} - path: buildroot/bin/micro.sfx - - # Upload fpm executable - - if: ${{ inputs.build-fpm == true }} - uses: actions/upload-artifact@v4 - with: - name: php-fpm-${{ inputs.version }}-${{ env.SPC_BUILD_OS }} - path: buildroot/bin/php-fpm - - # Upload extensions metadata - - uses: actions/upload-artifact@v4 - with: - name: license-files - path: buildroot/license/ - - uses: actions/upload-artifact@v4 - with: - name: build-meta - path: | - buildroot/build-extensions.json - buildroot/build-libraries.json - diff --git a/.github/workflows/build-macos-aarch64.yml b/.github/workflows/build-macos-aarch64.yml deleted file mode 100644 index f8d6033f..00000000 --- a/.github/workflows/build-macos-aarch64.yml +++ /dev/null @@ -1,140 +0,0 @@ -name: CI on arm64 macOS - -on: - workflow_dispatch: - inputs: - version: - required: true - description: php version to compile - default: '8.3' - type: choice - options: - - '8.4' - - '8.3' - - '8.2' - - '8.1' - - '8.0' - - '7.4' - build-cli: - description: build cli binary - default: true - type: boolean - build-micro: - description: build phpmicro binary - type: boolean - build-fpm: - description: build fpm binary - type: boolean - extensions: - description: extensions to compile (comma separated) - required: true - type: string - prefer-pre-built: - description: prefer pre-built binaries (reduce build time) - type: boolean - default: true - debug: - description: enable debug logs - type: boolean - -env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - -jobs: - build: - name: build ${{ inputs.version }} on macOS arm64 - runs-on: macos-14 - steps: - - uses: actions/checkout@v4 - - # Install macOS missing packages and mark os suffix - - run: | - brew install automake gzip - echo "SPC_BUILD_OS=macos" >> $GITHUB_ENV - - - - name: "Setup PHP" - uses: shivammathur/setup-php@v2 - with: - php-version: 8.1 - tools: pecl, composer - extensions: curl, openssl, mbstring, tokenizer - ini-values: memory_limit=-1 - - - # Cache composer dependencies - - id: cache-composer-deps - uses: actions/cache@v4 - with: - path: vendor - key: composer-dependencies - - # If there's no Composer cache, install dependencies - - if: steps.cache-composer-deps.outputs.cache-hit != 'true' - run: composer update --no-dev --classmap-authoritative - - - name: Generate hashed key for download cache - run: | - INPUT_HASH=$(echo "${{ runner.os }}-${{ inputs.version }}-${{ inputs.extensions }}" | sha256sum | awk '{print $1}') - echo "INPUT_HASH=${INPUT_HASH}" >> $GITHUB_ENV - - # Cache downloaded source - - id: cache-download - uses: actions/cache@v4 - with: - path: downloads - key: php-${{ env.INPUT_HASH }} - - # With or without debug - - if: inputs.debug == true - run: echo "SPC_BUILD_DEBUG=--debug" >> $GITHUB_ENV - - if: inputs.prefer-pre-built == true - run: echo "SPC_PRE_BUILT=--prefer-pre-built" >> $env:GITHUB_ENV - - # With target select: cli, micro or both - - if: ${{ inputs.build-cli == true }} - run: echo "SPC_BUILD_CLI=--build-cli" >> $GITHUB_ENV - - if: ${{ inputs.build-micro == true }} - run: echo "SPC_BUILD_MICRO=--build-micro" >> $GITHUB_ENV - - if: ${{ inputs.build-fpm == true }} - run: echo "SPC_BUILD_FPM=--build-fpm" >> $GITHUB_ENV - - # If there's no dependencies cache, fetch sources, with or without debug - - if: steps.cache-download.outputs.cache-hit != 'true' - run: ./bin/spc download --with-php=${{ inputs.version }} --for-extensions=${{ inputs.extensions }} ${{ env.SPC_BUILD_DEBUG }} ${{ env.SPC_PRE_BUILT }} - - # Run build command - - run: ./bin/spc build ${{ inputs.extensions }} ${{ env.SPC_BUILD_DEBUG }} ${{ env.SPC_BUILD_CLI }} ${{ env.SPC_BUILD_MICRO }} ${{ env.SPC_BUILD_FPM }} - - # Upload cli executable - - if: ${{ inputs.build-cli == true }} - uses: actions/upload-artifact@v4 - with: - name: php-${{ inputs.version }}-${{ env.SPC_BUILD_OS }} - path: buildroot/bin/php - - # Upload micro self-extracted executable - - if: ${{ inputs.build-micro == true }} - uses: actions/upload-artifact@v4 - with: - name: micro-${{ inputs.version }}-${{ env.SPC_BUILD_OS }} - path: buildroot/bin/micro.sfx - - # Upload fpm executable - - if: ${{ inputs.build-fpm == true }} - uses: actions/upload-artifact@v4 - with: - name: php-fpm-${{ inputs.version }}-${{ env.SPC_BUILD_OS }} - path: buildroot/bin/php-fpm - - # Upload extensions metadata - - uses: actions/upload-artifact@v4 - with: - name: license-files - path: buildroot/license/ - - uses: actions/upload-artifact@v4 - with: - name: build-meta - path: | - buildroot/build-extensions.json - buildroot/build-libraries.json diff --git a/.github/workflows/build-macos-x86_64.yml b/.github/workflows/build-macos-x86_64.yml deleted file mode 100644 index fb5e84d5..00000000 --- a/.github/workflows/build-macos-x86_64.yml +++ /dev/null @@ -1,142 +0,0 @@ -name: CI on x86_64 macOS - -on: - workflow_dispatch: - inputs: - version: - required: true - description: php version to compile - default: '8.3' - type: choice - options: - - '8.4' - - '8.3' - - '8.2' - - '8.1' - build-cli: - description: build cli binary - default: true - type: boolean - build-micro: - description: build phpmicro binary - type: boolean - build-fpm: - description: build fpm binary - type: boolean - extensions: - description: extensions to compile (comma separated) - required: true - type: string - prefer-pre-built: - description: prefer pre-built binaries (reduce build time) - type: boolean - default: true - debug: - description: enable debug logs - type: boolean - no-strip: - description: keep debug symbols for debugging - type: boolean - default: false - -env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - -jobs: - build: - name: build ${{ inputs.version }} on macOS x86_64 - runs-on: macos-13 - steps: - - uses: actions/checkout@v4 - - # Install macOS missing packages and mark os suffix - - run: | - brew install automake gzip - echo "SPC_BUILD_OS=macos" >> $GITHUB_ENV - - - name: "Setup PHP" - uses: shivammathur/setup-php@v2 - with: - php-version: 8.1 - tools: pecl, composer - extensions: curl, openssl, mbstring, tokenizer - ini-values: memory_limit=-1 - - # Cache composer dependencies - - id: cache-composer-deps - uses: actions/cache@v4 - with: - path: vendor - key: composer-dependencies - - # If there's no Composer cache, install dependencies - - if: steps.cache-composer-deps.outputs.cache-hit != 'true' - run: composer update --no-dev --classmap-authoritative - - - name: Generate hashed key for download cache - run: | - INPUT_HASH=$(echo "${{ runner.os }}-${{ inputs.version }}-${{ inputs.extensions }}" | sha256sum | awk '{print $1}') - echo "INPUT_HASH=${INPUT_HASH}" >> $GITHUB_ENV - - # Cache downloaded source - - id: cache-download - uses: actions/cache@v4 - with: - path: downloads - key: php-${{ inputs.version }}-macos-x86_64 - - # With or without debug - - if: inputs.debug == true - run: echo "SPC_BUILD_DEBUG=--debug" >> $GITHUB_ENV - - if: inputs.prefer-pre-built == true - run: echo "SPC_PRE_BUILT=--prefer-pre-built" >> $GITHUB_ENV - - if: inputs.no-strip == true - run: echo "SPC_NO_STRIP=--no-strip" >> $GITHUB_ENV - - # With target select: cli, micro or both - - if: ${{ inputs.build-cli == true }} - run: echo "SPC_BUILD_CLI=--build-cli" >> $GITHUB_ENV - - if: ${{ inputs.build-micro == true }} - run: echo "SPC_BUILD_MICRO=--build-micro" >> $GITHUB_ENV - - if: ${{ inputs.build-fpm == true }} - run: echo "SPC_BUILD_FPM=--build-fpm" >> $GITHUB_ENV - - # If there's no dependencies cache, fetch sources, with or without debug - - run: ./bin/spc download --with-php=${{ inputs.version }} --for-extensions=${{ inputs.extensions }} ${{ env.SPC_BUILD_DEBUG }} ${{ env.SPC_PRE_BUILT }} --ignore-cache-sources=php-src - - # Run build command - - run: ./bin/spc build ${{ inputs.extensions }} ${{ env.SPC_BUILD_DEBUG }} ${{ env.SPC_NO_STRIP }} ${{ env.SPC_BUILD_CLI }} ${{ env.SPC_BUILD_MICRO }} ${{ env.SPC_BUILD_FPM }} - - # Upload cli executable - - if: ${{ inputs.build-cli == true }} - uses: actions/upload-artifact@v4 - with: - name: php-${{ inputs.version }}-${{ env.SPC_BUILD_OS }} - path: buildroot/bin/php - - # Upload micro self-extracted executable - - if: ${{ inputs.build-micro == true }} - uses: actions/upload-artifact@v4 - with: - name: micro-${{ inputs.version }}-${{ env.SPC_BUILD_OS }} - path: buildroot/bin/micro.sfx - - # Upload fpm executable - - if: ${{ inputs.build-fpm == true }} - uses: actions/upload-artifact@v4 - with: - name: php-fpm-${{ inputs.version }}-${{ env.SPC_BUILD_OS }} - path: buildroot/bin/php-fpm - - # Upload extensions metadata - - uses: actions/upload-artifact@v4 - with: - name: license-files - path: buildroot/license/ - - uses: actions/upload-artifact@v4 - with: - name: build-meta - path: | - buildroot/build-extensions.json - buildroot/build-libraries.json - diff --git a/.github/workflows/build-unix.yml b/.github/workflows/build-unix.yml new file mode 100644 index 00000000..66c96ea5 --- /dev/null +++ b/.github/workflows/build-unix.yml @@ -0,0 +1,187 @@ +name: "CI on Unix" + +on: + workflow_dispatch: + inputs: + os: + required: true + description: Build target OS + type: choice + options: + - 'linux-x86_64' + - 'linux-aarch64' + - 'macos-x86_64' + - 'macos-aarch64' + php-version: + required: true + description: PHP version to compile + default: '8.3' + type: choice + options: + - '8.4' + - '8.3' + - '8.2' + - '8.1' + - '8.0' + extensions: + description: Extensions to build (comma separated) + required: true + type: string + extra-libs: + description: Extra libraries to build (optional, comma separated) + type: string + build-cli: + description: Build cli binary + default: true + type: boolean + build-micro: + description: Build phpmicro binary + type: boolean + build-fpm: + description: Build fpm binary + type: boolean + prefer-pre-built: + description: Prefer pre-built binaries (reduce build time) + type: boolean + default: true + debug: + description: Show full build logs + type: boolean + no-strip: + description: Keep debug symbols for debugging + type: boolean + default: false + +env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + +jobs: + define-build: + name: "Define Build Scripts" + runs-on: ubuntu-latest + outputs: + run: ${{ steps.gendef.outputs.run }} + download: ${{ steps.gendef.outputs.download }} + build: ${{ steps.gendef.outputs.build }} + steps: + - name: "Checkout" + uses: actions/checkout@v4 + + - name: "Define" + id: gendef + run: | + case "${{ inputs.os }}" in + linux-x86_64) + DOWN_CMD="./bin/spc-alpine-docker download" + BUILD_CMD="./bin/spc-alpine-docker build" + RUNS_ON="ubuntu-latest" + ;; + linux-aarch64) + DOWN_CMD="SPC_USE_ARCH=aarch64 ./bin/spc-alpine-docker download" + BUILD_CMD="SPC_USE_ARCH=aarch64 ./bin/spc-alpine-docker build" + RUNS_ON="ubuntu-latest" + ;; + macos-x86_64) + DOWN_CMD="composer update --no-dev --classmap-authoritative && ./bin/spc download" + BUILD_CMD="./bin/spc build" + RUNS_ON="macos-13" + ;; + macos-aarch64) + DOWN_CMD="composer update --no-dev --classmap-authoritative && ./bin/spc download" + BUILD_CMD="./bin/spc build" + RUNS_ON="macos-14" + ;; + esac + DOWN_CMD="$DOWN_CMD --with-php=${{ inputs.php-version }} --for-extensions=${{ inputs.extensions }} --ignore-cache-sources=php-src" + BUILD_CMD="$BUILD_CMD ${{ inputs.extensions }}" + if [ -n "${{ inputs.extra-libs }}" ]; then + DOWN_CMD="$DOWN_CMD --for-libs=${{ inputs.extra-libs }}" + BUILD_CMD="$BUILD_CMD --with-libs=${{ inputs.extra-libs }}" + fi + if [ ${{ inputs.debug }} == true ]; then + DOWN_CMD="$DOWN_CMD --debug" + BUILD_CMD="$BUILD_CMD --debug" + fi + if [ ${{ inputs.prefer-pre-built }} == true ]; then + DOWN_CMD="$DOWN_CMD --prefer-pre-built" + fi + if [ ${{ inputs.build-cli }} == true ]; then + BUILD_CMD="$DOWN_CMD --build-cli" + fi + if [ ${{ inputs.build-micro }} == true ]; then + BUILD_CMD="$DOWN_CMD --build-micro" + fi + if [ ${{ inputs.build-fpm }} == true ]; then + BUILD_CMD="$DOWN_CMD --build-fpm" + fi + echo 'download='"$DOWN_CMD" >> "$GITHUB_OUTPUT" + echo 'build='"$BUILD_CMD" >> "$GITHUB_OUTPUT" + echo 'run='"$RUNS_ON" >> "$GITHUB_OUTPUT" + build: + name: "Build ${{ inputs.version }} on ${{ inputs.os }}" + runs-on: ${{ needs.define-build.outputs.run }} + needs: define-build + timeout-minutes: 240 + steps: + - name: "Checkout" + uses: actions/checkout@v4 + + - name: "Setup PHP" + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ inputs.php-version }} + tools: pecl, composer + extensions: curl, openssl, mbstring + ini-values: memory_limit=-1 + env: + phpts: nts + + # Cache downloaded source + - id: cache-download + uses: actions/cache@v4 + with: + path: downloads + key: php-dependencies-${{ inputs.os }} + + - name: "Download sources" + run: ${{ needs.define-build.outputs.download }} + - name: "Build PHP" + run: ${{ needs.define-build.outputs.build }} + + # Upload cli executable + - if: ${{ inputs.build-cli == true }} + name: "Upload PHP cli SAPI" + uses: actions/upload-artifact@v4 + with: + name: php-${{ inputs.version }}-${{ env.SPC_BUILD_OS }} + path: buildroot/bin/php + + # Upload micro self-extracted executable + - if: ${{ inputs.build-micro == true }} + name: "Upload PHP micro SAPI" + uses: actions/upload-artifact@v4 + with: + name: micro-${{ inputs.version }}-${{ env.SPC_BUILD_OS }} + path: buildroot/bin/micro.sfx + + # Upload fpm executable + - if: ${{ inputs.build-fpm == true }} + name: "Upload PHP fpm SAPI" + uses: actions/upload-artifact@v4 + with: + name: php-fpm-${{ inputs.version }}-${{ env.SPC_BUILD_OS }} + path: buildroot/bin/php-fpm + + # Upload extensions metadata + - uses: actions/upload-artifact@v4 + name: "Upload License Files" + with: + name: license-files + path: buildroot/license/ + - uses: actions/upload-artifact@v4 + name: "Upload Build Metadata" + with: + name: build-meta + path: | + buildroot/build-extensions.json + buildroot/build-libraries.json diff --git a/.github/workflows/build-windows-x86_64.yml b/.github/workflows/build-windows-x86_64.yml index 32b63652..655567ca 100644 --- a/.github/workflows/build-windows-x86_64.yml +++ b/.github/workflows/build-windows-x86_64.yml @@ -14,7 +14,6 @@ on: - '8.2' - '8.1' - '8.0' - - '7.4' build-cli: description: build cli binary default: true