Test recent #1981
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Test recent | |
on: | |
schedule: | |
- cron: "0 12 * * *" | |
repository_dispatch: | |
types: | |
- test-recent-extensions | |
workflow_dispatch: | |
jobs: | |
determine_extension_list: | |
name: Determine extension list | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Retrieve recently updated extensions | |
run: ./scripts/ci-retrieve-recent-extensions >extensions-updated.txt | |
- name: Filter supported extensions | |
run: | | |
UPDATED_EXTENSIONS="$(cat extensions-updated.txt)" | |
if test -z "$UPDATED_EXTENSIONS"; then | |
EXTENSIONS_TO_TEST='' | |
else | |
EXTENSIONS_TO_TEST="$(./scripts/ci-filter-supported-extensions "$UPDATED_EXTENSIONS")" | |
fi | |
printf "$EXTENSIONS_TO_TEST" > extensions-to-test.txt | |
- name: Persist list of extensions to be tested | |
uses: actions/upload-artifact@v4 | |
with: | |
name: artifact | |
path: extensions-to-test.txt | |
if-no-files-found: error | |
retention-days: 1 | |
test_extensions: | |
runs-on: ubuntu-latest | |
needs: determine_extension_list | |
strategy: | |
fail-fast: false | |
matrix: | |
distro: | |
- alpine3.9 | |
- alpine3.10 | |
- alpine3.11 | |
- alpine3.12 | |
- alpine3.13 | |
- alpine3.14 | |
- alpine3.15 | |
- alpine3.16 | |
- alpine3.17 | |
- alpine3.18 | |
- alpine3.19 | |
- alpine3.20 | |
- jessie | |
- stretch | |
- buster | |
- bullseye | |
- bookworm | |
name: Check on ${{ matrix.distro }} | |
env: | |
IPETEST_DOCKER_DISTRO: ${{ matrix.distro }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Loading list of extensions to be tested | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifact | |
- name: Test extensions | |
run: | | |
EXTENSIONS_TO_TEST="$(cat extensions-to-test.txt)" | |
if test -z "$EXTENSIONS_TO_TEST"; then | |
echo 'No extensions to be tested' | |
else | |
./scripts/ci-test-extensions from-list "$EXTENSIONS_TO_TEST" | |
fi | |
- name: Notify failures | |
if: failure() | |
uses: appleboy/telegram-action@master | |
with: | |
token: ${{ secrets.TELEGRAM_TOKEN }} | |
to: ${{ secrets.TELEGRAM_TO }} | |
message: Testing recent PHP packages failed on https://github.com/mlocati/docker-php-extension-installer |