49 lines
1.3 KiB
YAML
49 lines
1.3 KiB
YAML
name: Build and Test on Windows
|
|
on:
|
|
push:
|
|
pull_request:
|
|
release:
|
|
types: [created]
|
|
jobs:
|
|
get-extension-matrix:
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
matrix: ${{ steps.extension-matrix.outputs.matrix }}
|
|
steps:
|
|
- name: Checkout imagick
|
|
uses: actions/checkout@v5
|
|
- name: Get the extension matrix
|
|
id: extension-matrix
|
|
uses: php/php-windows-builder/extension-matrix@v1
|
|
with:
|
|
php-version-list: '7.4, 8.0, 8.1, 8.2, 8.3, 8.4, 8.5'
|
|
|
|
windows:
|
|
needs: get-extension-matrix
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix: ${{fromJson(needs.get-extension-matrix.outputs.matrix)}}
|
|
steps:
|
|
- name: Checkout imagick
|
|
uses: actions/checkout@v5
|
|
- name: Build the extension
|
|
uses: php/php-windows-builder/extension@v1
|
|
with:
|
|
php-version: ${{ matrix.php-version }}
|
|
arch: ${{ matrix.arch }}
|
|
ts: ${{ matrix.ts }}
|
|
libs: ImageMagick-7
|
|
test-workers: 4
|
|
|
|
release:
|
|
runs-on: ubuntu-latest
|
|
needs: windows
|
|
if: ${{ github.event_name == 'release' }}
|
|
steps:
|
|
- name: Upload artifact to the release
|
|
uses: php/php-windows-builder/release@v1
|
|
with:
|
|
release: ${{ github.event.release.tag_name }}
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|