Skip to content

ci: add luarocks-tag-release workflow (#12) #100

ci: add luarocks-tag-release workflow (#12)

ci: add luarocks-tag-release workflow (#12) #100

Workflow file for this run

name: build
on:
push:
pull_request:
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, ubuntu-latest, windows-latest]
lua: ["lua 5.1", "lua 5.2", "lua 5.3", "lua 5.4", "luajit 2.1"]
steps:
- uses: actions/checkout@v3
# Without this, luarocks uses the default mingw compiler on windows. The
# mingw arguments luarocks uses are somehow wrong: it generates library
# DLLs withou error, and the lua runtime finds the DLLs, but it can't use
# the modules in the DLLs.
#
# This action does nothing on linux/mac.
- name: Install MSVC
uses: ilammy/msvc-dev-cmd@v1
- name: Install Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install Lua and LuaRocks
env:
# luajit fails to build on macos without this
MACOSX_DEPLOYMENT_TARGET: "10.15"
run: |
python -m pip install hererocks
python -m hererocks env --${{ matrix.lua }} --luarocks latest
- name: Install busted
run: |
. env/bin/activate
luarocks install busted
- name: Build
run: |
. env/bin/activate
luarocks make
- name: Test
run: |
. env/bin/activate
luarocks test