87 lines
2.2 KiB
YAML
87 lines
2.2 KiB
YAML
---
|
|
name: Tests
|
|
on:
|
|
push:
|
|
paths-ignore:
|
|
- '**.md'
|
|
- '**.png'
|
|
pull_request:
|
|
paths-ignore:
|
|
- '**.md'
|
|
- '**.png'
|
|
schedule:
|
|
- cron: '29 7 * * 1'
|
|
|
|
jobs:
|
|
test:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
version:
|
|
- master
|
|
- 5.9
|
|
- 5.8.1
|
|
- 5.8
|
|
- 5.7.1
|
|
- 5.7
|
|
- 5.6.2
|
|
- 5.6.1
|
|
- 5.6
|
|
- 5.5.1
|
|
- 5.5
|
|
- 5.4.2
|
|
- 5.4.1
|
|
- 5.4
|
|
- 5.3.1
|
|
- 5.3
|
|
- 5.2
|
|
- 5.1.1
|
|
- 5.1
|
|
- 5.0.8
|
|
- 5.0.7
|
|
- 5.0.6
|
|
- 5.0.5
|
|
- 5.0.4
|
|
- 5.0.3
|
|
- 5.0.2
|
|
- 5.0.1
|
|
- 5.0.0
|
|
- 4.3.17
|
|
- 4.3.16
|
|
- 4.3.15
|
|
- 4.3.14
|
|
- 4.3.13
|
|
- 4.3.12
|
|
- 4.3.11
|
|
container:
|
|
image: ghcr.io/zsh-users/zsh:${{ matrix.version }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
# Debian 10 "buster" -- the base of every ghcr.io/zsh-users/zsh image --
|
|
# is end-of-life and has been dropped from the live mirrors, so
|
|
# install_packages fails at apt-get update before any test can run.
|
|
# The buster guard keeps this a no-op once the images move to a
|
|
# supported release, so it cannot redirect a live suite to the archive.
|
|
- name: Point apt at archive.debian.org (buster is EOL)
|
|
run: |
|
|
if grep -q ' buster' /etc/apt/sources.list; then
|
|
sed -i 's|http://deb.debian.org/debian|http://archive.debian.org/debian|' /etc/apt/sources.list
|
|
sed -i 's|http://security.debian.org/|http://archive.debian.org/debian-security|' /etc/apt/sources.list
|
|
fi
|
|
- run: install_packages bsdmainutils make procps
|
|
- run: make test
|
|
|
|
notify:
|
|
runs-on: ubuntu-latest
|
|
needs: test
|
|
if: failure() && (github.repository_owner == 'zsh-users')
|
|
steps:
|
|
-
|
|
name: Notify IRC
|
|
uses: Gottox/irc-message-action@v2
|
|
with:
|
|
channel: '#zsh-syntax-highlighting'
|
|
nickname: zsyh-gh-bot
|
|
message: '${{ github.ref }} failed tests: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}'
|