Skip to content
This repository was archived by the owner on Aug 21, 2026. It is now read-only.

docs: tell the truth about the image before re-archiving #279

docs: tell the truth about the image before re-archiving

docs: tell the truth about the image before re-archiving #279

Workflow file for this run

name: CI
# asobi_lua holds no Erlang source any more - widgrensit/asobi#339 merged the Lua
# runtime into asobi, so lint, typecheck and the unit/CT suites all run there.
# The Taure/erlang-ci delegation is gone with the source it analysed. What still
# has to hold is that the alias release assembles and the image builds: if this
# goes red, nothing is affected: this repository is archived and its image is
# no longer built. Kept only so the final state stays reproducible.
on:
push:
branches: [main]
paths-ignore: ['**.md', 'docs/**', 'guides/**', 'LICENSE']
pull_request:
branches: [main]
paths-ignore: ['**.md', 'docs/**', 'guides/**', 'LICENSE']
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
release:
name: Alias release builds
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: erlef/setup-beam@v1
with:
version-file: '.tool-versions'
version-type: strict
- name: Build the prod release
run: rebar3 as prod release
# The reason this repo stopped shipping its own source. Before the merge,
# asobi_lua and asobi each defined asobi_bot, asobi_lua_match and 14 other
# modules; a release carrying both would load whichever copy the code path
# reached first.
- name: Assert no duplicate Lua modules in the release
run: |
set -euo pipefail
dupes=$(find _build/prod/rel/asobi_lua/lib \
\( -name 'asobi_lua_*.beam' -o -name 'asobi_bot*.beam' \) -printf '%f\n' \
| sort | uniq -d)
if [ -n "$dupes" ]; then
echo "::error::the release ships duplicate modules:"
echo "$dupes"
exit 1
fi
echo "no duplicate Lua modules in the release."
docker-build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Set up Buildx
uses: docker/setup-buildx-action@bb05f3f5519dd87d3ba754cc423b652a5edd6d2c # v4.2.0
- name: Build image (no push)
uses: docker/build-push-action@53b7df96c91f9c12dcc8a07bcb9ccacbed38856a # v7.3.0
with:
context: .
file: Dockerfile
push: false
cache-from: type=gha
cache-to: type=gha,mode=max