Skip to content

chore(ci): Pin actions to commits, remove yamlint #268

chore(ci): Pin actions to commits, remove yamlint

chore(ci): Pin actions to commits, remove yamlint #268

Workflow file for this run

---
name: "Build"
concurrency:
# for PR's cancel the running task, if another commit is pushed
group: ${{ github.workflow }} ${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
on:
# build on PR and push-to-main. This works for short-lived branches, and saves
# CPU cycles on duplicated tests.
# For long-lived branches that diverge, you'll want to run on all pushes, not
# just on push-to-main.
pull_request: {}
push:
branches:
- master
jobs:
test:
strategy:
fail-fast: false
matrix:
os: ['ubuntu-24.04', 'macos-latest']
luaVersion:
- "5.1"
- "5.2"
- "5.3"
- "5.4"
- "5.5"
- "luajit"
- "luajit-openresty"
include:
- os: "macos-15-intel"
luaVersion: "5.5"
# On Windows builds:
# 'hishamhm/gh-actions-lua' will build the PuC Rio Lua versions using
# MSVC, and the LuaJIT version using MinGW/gcc. By running against
# both below, we test both toolchains.
- os: "windows-latest"
toolchain: "msvc"
luaVersion: "5.1"
- os: "windows-latest"
toolchain: "msvc"
luaVersion: "5.2"
- os: "windows-latest"
toolchain: "msvc"
luaVersion: "5.3"
- os: "windows-latest"
toolchain: "msvc"
luaVersion: "5.4"
- os: "windows-latest"
toolchain: "msvc"
luaVersion: "5.5"
- os: "windows-latest"
toolchain: "mingw" # unused, other than for display in the UI
luaVersion: "luajit"
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
# commit hash for version 7.0.0
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0
- name: Setup MSVC
# the 'hishamhm/gh-actions-lua' step requires msvc to build PuC Rio Lua
# versions on Windows (LuaJIT will be build using MinGW/gcc).
if: ${{ matrix.toolchain == 'msvc' }}
uses: ilammy/msvc-dev-cmd@v1
# - name: install Dependencies analyzer
# # action step used for troubleshooting if Windows dll's build
# # incorrectly
# run: "
# $version = \"1.11.1\"\n
# echo \"Installing Dependencies version: $version\"\n
# $url = 'https://github.com/lucasg/Dependencies/releases/download/v'
# + $version + '/Dependencies_x64_Release.zip'\n
# $dest = Join-Path -Path $PWD -ChildPath \".dependencies\"\n
# # Download and extract Dependencies\n
# New-Item -ItemType Directory -Path \"$dest\"\n
# Invoke-WebRequest -Uri $url -OutFile \"$dest\\dependencies.zip\"\n
# Expand-Archive -Path \"$dest\\dependencies.zip\" -DestinationPath
# \"$dest\"\n
# Remove-Item -Path \"$dest\\dependencies.zip\"\n
# # dir \"$dest\"\n
# # Add Dependencies to PATH\n
# $env:PATH += \";$dest\"\n
# echo $env:PATH\n
# # Verify Dependencies Installation\n
# dir \"$dest\\*.exe\"\n
# dir \".\\.dependencies\Dependencies.exe\"\n
# .\\.dependencies\\Dependencies.exe -help\n
- uses: luarocks/gh-actions-lua@6fff34a54b160acea12880a638eab0960507c1f5
# commit hash for unrelease commit past version v11; Lua 5.5 and Node fixes
with:
luaVersion: ${{ matrix.luaVersion }}
- uses: luarocks/gh-actions-luarocks@86ccbcad8c77b22e94c96a2a08632192e2bcd62b
# commit hash for unrelease commit past version v6; Node fixes
with:
luaRocksVersion: "3.13.0"
- name: test dependencies
run: |
luarocks install busted
luarocks remove luasystem --force
- name: install
run: |
luarocks make
- name: test
run: |
busted --exclude-tags=manual --Xoutput "--color"
freebsd:
runs-on: ubuntu-latest
name: Run tests on FreeBSD
steps:
- name: Checkout
# commit hash for version 7.0.0
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0
- name: Run tests inside FreeBSD VM
uses: vmactions/freebsd-vm@v1
with:
usesh: true
prepare: |
pkg install -y lua54-luarocks
luarocks54 install busted
luarocks54 remove luasystem --force
run: |
LUA_VERSION=5.4 luarocks54 make
busted --exclude-tags=manual --Xoutput "--color"
openbsd:
runs-on: ubuntu-latest
name: Run tests on OpenBSD
steps:
- name: Checkout
# commit hash for version 7.0.0
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0
- name: Run tests inside OpenBSD VM
uses: vmactions/openbsd-vm@v1
with:
usesh: true
prepare: |
pkg_add luarocks-lua54
luarocks-5.4 install busted
luarocks-5.4 remove luasystem --force
run: |
LUA_VERSION=5.4 luarocks-5.4 make
busted --exclude-tags=manual --Xoutput "--color"
netbsd:
runs-on: ubuntu-latest
name: Run tests on NetBSD
steps:
- name: Checkout
# commit hash for version 7.0.0
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0
- name: Run tests inside NetBSD VM
uses: vmactions/netbsd-vm@v1
with:
usesh: true
prepare: |
export PATH=/usr/pkg/bin:/usr/pkg/sbin:/usr/sbin:$PATH
env ASSUME_ALWAYS_YES=YES /usr/sbin/pkg_add -v pkgin
pkgin -y update
pkgin -y install lua54-rocks
luarocks-5.4 install busted
luarocks-5.4 remove luasystem --force
run: |
eval `luarocks-5.4 path`
luarocks-5.4 make
busted --exclude-tags=manual --Xoutput "--color"