63 lines
1.4 KiB
YAML
63 lines
1.4 KiB
YAML
name: Build VulkanEngine
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- vkguide
|
|
pull_request:
|
|
workflow_dispatch:
|
|
schedule:
|
|
- cron: "@weekly"
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
container: git.alexdelcamp.fr/alexandre_1a/flake-actions:latest
|
|
|
|
|
|
steps:
|
|
- name: Update apt
|
|
run: sudo apt update
|
|
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: recursive
|
|
fetch-depth: 0
|
|
|
|
|
|
- name: Configure
|
|
run: |
|
|
nix develop --command cmake -S . -B build \
|
|
-G Ninja \
|
|
-DCMAKE_BUILD_TYPE=Release
|
|
|
|
- name: Build
|
|
run: |
|
|
nix develop --command cmake --build build \
|
|
--parallel 2
|
|
|
|
- name: Check binary
|
|
run: |
|
|
find build -type f -executable
|
|
find build -type f -executable \
|
|
-exec sh -c '
|
|
file "$1"
|
|
readelf -l "$1" | grep interpreter || true
|
|
readelf -d "$1" | grep -E "RPATH|RUNPATH|NEEDED" || true
|
|
' _ {} \;
|
|
|
|
- name: Upload build
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: VulkanEngine-linux-x86_64
|
|
path: build/
|
|
|
|
- name: Notify routine
|
|
if: always()
|
|
run: |
|
|
curl \
|
|
-H "Title: [Routine] VulkanEngine build" \
|
|
-d "Build finished (status: ${{ job.status }})" \
|
|
https://ntfy.alexdelcamp.fr/FlakeBuild
|