4293e90a97
A BigWigs-style CI packager for WoW MPQ patch archives. Reads an mpq.yaml manifest, stages files, builds a vanilla-1.12-compatible patch-X.mpq via StormLib, and (in the example workflow) attaches it to a Gitea release on tag.
36 lines
904 B
YAML
36 lines
904 B
YAML
# CI for the packager itself: build the Docker image and smoke-test that it
|
|
# produces a non-empty patch-Z.mpq from the test fixture.
|
|
|
|
name: CI
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
|
|
jobs:
|
|
build-and-smoke:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Build image
|
|
run: docker build -t mpq-packager:ci .
|
|
|
|
- name: Package the fixture
|
|
run: |
|
|
set -euo pipefail
|
|
docker run --rm \
|
|
-e INPUT_MANIFEST=mpq.yaml \
|
|
-e INPUT_VERSION=v0.0.0-ci \
|
|
-e INPUT_OUT_DIR=/work/dist \
|
|
-e GITHUB_WORKSPACE=/work \
|
|
-v "$PWD/test:/work" \
|
|
mpq-packager:ci
|
|
|
|
- name: Assert artifact exists
|
|
run: |
|
|
set -euo pipefail
|
|
test -s test/dist/patch-Z.mpq
|
|
echo "OK: $(stat -c%s test/dist/patch-Z.mpq) bytes"
|