Skip to content

Add Windows to Tier 1 platforms #32

Add Windows to Tier 1 platforms

Add Windows to Tier 1 platforms #32

name: 'Continuous Integration'
on:
workflow_dispatch:
push:
branches-ignore:
- v1
tags-ignore:
- v1.*
jobs:
exercise-on-tier-1-platforms:
strategy:
matrix:
implementation: ['sbcl']
os: ['ubuntu-latest', 'macos-latest', 'windows-latest']
runs-on: '${{ matrix.os }}'
name: 'Exercise on Tier 1 Platform'
steps:
- uses: actions/checkout@v4
- name: 'Install MacPorts'
if: runner.os == 'macOS'
uses: melusina-org/setup-macports@v1
- name: 'Setup Common Lisp'
uses: melusina-org/setup-common-lisp@v1
with:
implementation: '${{ matrix.implementation }}'
- name: 'Setup Quicklisp'
uses: melusina-org/setup-quicklisp@v1
id: quicklisp
with:
implementation: '${{ matrix.implementation }}'
- name: 'Install CL-GITHUB-ACTIONS'
uses: actions/checkout@v4
with:
repository: melusina-org/cl-github-actions
path: ${{ steps.quicklisp.outputs.quicklisp-local-projects }}/cl-github-actions
- name: 'Run unit tests'
uses: melusina-org/run-common-lisp-program@v1
with:
implementation: '${{ matrix.implementation }}'
system: 'org.melusina.github-action.make-common-lisp-program/testsuite'
entrypoint: 'unit-tests'
- name: 'Checkout Common Lisp Reference Utility'
uses: actions/checkout@v4
with:
repository: melusina-org/reference-utility
path: ${{ steps.quicklisp.outputs.quicklisp-local-projects }}/reference-utility
- name: 'Make Common Lisp Reference Utility'
uses: ./
id: make
with:
implementation: '${{ matrix.implementation }}'
system: 'org.melusina.reference-utility/executable'
- name: 'Run Common Lisp Reference Utility'
shell: sh
run: |
${{ steps.make.outputs.build-pathname }}
- name: 'Upload Common Lisp Reference Utility'
uses: actions/upload-artifact@v3
with:
name: Common Lisp Reference Utility ${{ matrix.implementation }} ${{ runner.os }} ${{ runner.arch }}
path: ${{ steps.make.outputs.build-pathname }}