Skip to content

Commit

Permalink
ci support for giantdays tileset (#2105)
Browse files Browse the repository at this point in the history
Co-authored-by: casswedson <[email protected]>
  • Loading branch information
casswedson and casswedson authored Aug 14, 2023
1 parent 5648f14 commit 2d0a96b
Show file tree
Hide file tree
Showing 2 changed files with 90 additions and 0 deletions.
86 changes: 86 additions & 0 deletions .github/workflows/giantdays_ci_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
# performs CI builds using compose.py from
# https://github.com/CleverRaven/Cataclysm-DDA
#
# This action is triggerd by any PR against the master branch as well
# as on any push to the master branch itself
# that changes any file in gfx/RetroDays folder
name: GiantDays composer

env:
TILESET: GiantDays
COMPOSE_ARGS: --use-all
BUILD_DIR: build

on:
push:
branches:
- master
paths:
- 'gfx/GiantDays/**'
- '.github/workflows/giantdays_ci_build.yml'
pull_request:
branches:
- master
paths:
- 'gfx/GiantDays/**'
- '.github/workflows/giantdays_ci_build.yml'

jobs:
build:
name: CI Build
runs-on: ubuntu-latest
steps:
- name: Install Dependencies
uses: awalsh128/cache-apt-pkgs-action@v1
with:
packages: musl python3 python3-pip libvips42

# re-installing libvips; caching it won't set it up the way we need it
# still cache it because we'll make it work somehow
- run: sudo apt-get update; sudo apt-get install libvips42
- run: pip3 install pyvips

- name: Checkout Code
uses: actions/checkout@v3

- name: Build
id: build
run: |
mkdir "$BUILD_DIR"
wget -q -P "$BUILD_DIR" https://raw.githubusercontent.com/CleverRaven/Cataclysm-DDA/master/tools/gfx_tools/compose.py \
|| echo "Error: Failed to get compose.py"
python3 "$BUILD_DIR/compose.py" --feedback CONCISE --loglevel INFO $COMPOSE_ARGS "gfx/$TILESET" "$BUILD_DIR"
[ -f "gfx/$TILESET/fallback.png" ] && cp "gfx/$TILESET/fallback.png" "$BUILD_DIR/"
artifact_name="$TILESET-dev-git-${GITHUB_SHA::7}"
mkdir "$artifact_name"
mv "${BUILD_DIR}"/*.png "$artifact_name"
cp "$BUILD_DIR/tile_config.json" "$artifact_name"
cp "gfx/$TILESET/tileset.txt" "$artifact_name"
echo "ARTIFACT-NAME=$artifact_name" >> $GITHUB_OUTPUT
- name: Upload Artifacts
uses: actions/[email protected]
with:
name: ${{ steps.build.outputs.ARTIFACT-NAME }}
path: ${{ steps.build.outputs.ARTIFACT-NAME }}

- name: Compare IDs with ${{ github.base_ref }}
id: compare
if: github.base_ref
run: |
echo "Switching to the target branch ${{ github.base_ref }} to get differences between ID lists"
git fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +${{ github.base_ref }}
git checkout origin/${{ github.base_ref }}
mkdir "$BUILD_DIR/base_json/"
python3 "$BUILD_DIR/compose.py" $COMPOSE_ARGS --only-json "gfx/$TILESET" "$BUILD_DIR/base_json/"
wget -q -P "$BUILD_DIR" https://raw.githubusercontent.com/CleverRaven/Cataclysm-DDA/master/tools/gfx_tools/list_tileset_ids.py \
|| echo "Error: Failed to get list_tileset_ids.py"
echo -e "\nDifferences in IDs:"
(diff -u0 <(python3 "$BUILD_DIR/list_tileset_ids.py" "$BUILD_DIR/base_json/") <(python3 "$BUILD_DIR/list_tileset_ids.py" "$BUILD_DIR/")) | tail -n +3
4 changes: 4 additions & 0 deletions .github/workflows/make_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,10 @@ jobs:
artifact: RetroDaysTileset
tileset_dir: gfx/Retrodays
compose_args: --use-all
- name: GiantDays
artifact: GiantDays
tileset_dir: gfx/GiantDays
compose_args: --use-all
- name: SmashButton_iso
artifact: SmashButton_iso
tileset_dir: gfx/HitButton_iso
Expand Down

0 comments on commit 2d0a96b

Please sign in to comment.