setup-lisp/.github/workflows/ci.yml

88 lines
2.4 KiB
YAML
Raw Normal View History

2021-02-03 00:30:25 +00:00
name: 'CI'
2021-01-26 10:22:52 +00:00
on:
# This will run tests on pushes
# to master branch or on pull merges:
push:
branches:
- 'main'
- 'master'
# This will run tests for every pull request:
pull_request:
# Rerun tests at 10 AM every Monday
# to check if they still work with latest dependencies.
schedule:
- cron: '0 10 * * 1'
jobs:
2021-02-03 00:30:25 +00:00
run-tests:
2021-02-03 00:32:04 +00:00
runs-on: ${{ matrix.os }}
continue-on-error: ${{ matrix.can-fail || false }}
2021-01-26 10:22:52 +00:00
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
2021-02-03 00:32:04 +00:00
- macos-latest
quicklisp-dist:
- quicklisp
2021-02-03 00:13:35 +00:00
- ultralisp
2021-01-26 10:22:52 +00:00
lisp:
2021-01-26 21:00:30 +00:00
- sbcl-bin
2021-02-02 08:09:28 +00:00
- ccl-bin
2021-02-03 00:32:04 +00:00
- ecl
- abcl
- allegro
- clisp
- cmucl
include:
# Seems allegro is does not support 64bit OSX.
# Unable to install it using Roswell:
# alisp is not executable. Missing 32bit glibc?
- lisp: allegro
os: macos-latest
can-fail: true
# CLisp on Ubuntu can't be installed because of the error:
# #<FOREIGN-VARIABLE "rl_readline_state" #x00007FA93E698850> does not have
# the required size or alignment
- lisp: clisp
os: ubuntu-latest
can-fail: true
# CMUCL is 32bit and cant' work on 64bit OSX:
# .roswell/impls/x86-64/darwin/cmu-bin/21d/bin/lisp is not executable. Missing 32bit glibc?
- lisp: cmucl
os: macos-latest
can-fail: true
2021-01-26 10:22:52 +00:00
env:
LISP: ${{ matrix.lisp }}
OS: ${{ matrix.os }}
2021-01-26 11:34:05 +00:00
QUICKLISP_DIST: ${{ matrix.quicklisp-dist }}
2021-01-26 10:22:52 +00:00
steps:
- uses: actions/checkout@v1
2021-02-03 00:30:25 +00:00
- uses: 40ants/cl-info/.github/actions/run-tests@custom-action
2021-02-02 17:08:57 +00:00
with:
2021-02-02 20:57:14 +00:00
asdf-system: cl-info
2021-02-03 00:06:46 +00:00
qlfile-template: |
{% ifequal quicklisp_dist "ultralisp" %}
dist ultralisp http://dist.ultralisp.org
{% endifequal %}
2021-02-03 00:30:25 +00:00
# This is additional step to check
# a command line script
2021-02-02 22:33:37 +00:00
- name: Run Command Line Version
run: |
2021-02-03 00:13:03 +00:00
echo ::group::Help Argument
2021-02-02 22:33:37 +00:00
qlot exec cl-info --help
2021-02-03 00:13:03 +00:00
echo ::endgroup::
echo ::group::Version Argument
2021-02-02 22:33:37 +00:00
qlot exec cl-info --version
2021-02-03 00:13:03 +00:00
echo ::endgroup::
echo ::group::Lisp Systems Info
qlot exec cl-info cl-info defmain
echo ::endgroup::