Files
oatmeal/.gitea/workflows/build.yml
firewire 1668eec79e
All checks were successful
Build / Build (push) Successful in 3m20s
Actions workflow + slang, glsl compilation + asset copy
2026-04-11 17:48:56 -04:00

74 lines
2.4 KiB
YAML

on: [push, pull_request]
name: Build
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
with:
persist-credentials: true
- name: Checkout lfs
run: |
git lfs install --local
AUTH=$(git config --local http.${{ github.server_url }}/.extraheader)
git config --local --unset http.${{ github.server_url }}/.extraheader
git config --local http.${{ github.server_url }}/${{ github.repository }}.git/info/lfs/objects/batch.extraheader "$AUTH"
git lfs pull
- name: Apt update
run: sudo apt update
- name: Installing build chain
run: sudo apt-get install pigz libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libgl1-mesa-dev libglu1-mesa-dev libwayland-dev libxkbcommon-dev ninja-build g++ clang pkg-config cmake vulkan-tools vulkan-validationlayers glslc libglfw3 libglfw3-dev libtbb-dev -y;
- name: Cache CPM
uses: actions/cache@v5
with:
path: "~/.cache/CPM/"
key: ${{ runner.os }}-CPM
- name: Install Vulkan SDK
uses: jakoch/install-vulkan-sdk-action@v1
- name: Configure debug
run: cd scripts; CPM_SOURCE_CACHE="~/.cache/CPM/" ./configure-debug.sh
- name: Configure release
run: cd scripts; CPM_SOURCE_CACHE="~/.cache/CPM/" ./configure-release.sh
- name: Configure RelWithDeb
run: cd scripts; CPM_SOURCE_CACHE="~/.cache/CPM/" ./configure-relwithdeb.sh
- name: Build debug
run: cd scripts; ./build-debug.sh
- name: Build release
run: cd scripts; ./build-release.sh
- name: Build Release with debug info
run: cd scripts; ./build-relwithdeb.sh
- name: Copy assets
run: |-
cp -r build/debug/assets bin/Debug;
cp -r build/release/assets bin/Release;
cp -r build/relwithdeb/assets bin/RelWithDeb;
- name: Packaging
run: |-
tar -I 'pigz -9' -cf oatmeal-debug-amd64.tar.gz bin/Debug;
tar -I 'pigz -9' -cf oatmeal-rel-amd64.tar.gz bin/Release;
tar -I 'pigz -9' -cf oatmeal-relwithdeb-amd64.tar.gz bin/Relwithdeb;
- uses: akkuman/gitea-release-action@v1
with:
files: |-
oatmeal-debug-amd64.tar.gz
oatmeal-rel-amd64.tar.gz
oatmeal-relwithdeb-amd64.tar.gz