Skip to content

Building GDE GoZen - Linux full #5

Building GDE GoZen - Linux full

Building GDE GoZen - Linux full #5

name: Linux full
run-name: Building GDE GoZen - Linux full
on:
workflow_dispatch:
inputs:
artifact_addon:
description: 'Get artifacts'
required: true
default: false
type: boolean
artifact_test_room:
description: 'Get test_room'
required: true
default: false
type: boolean
artifact_addon_gpl:
description: 'Get artifacts'
required: true
default: false
type: boolean
artifact_test_room_gpl:
description: 'Get test_room'
required: true
default: false
type: boolean
jobs:
build:
runs-on: ubuntu-latest
container:
image: archlinux:latest
steps:
- name: Installing dependencies
run: pacman -Syu --noconfirm git bash yasm python python-pip scons gcc diffutils make wget unzip tar ffmpeg
- name: Checkout submodules
uses: actions/checkout@v4
with:
submodules: recursive
- name: Restore cached linux_full_debug
id: cache-linux-full-debug-restore
uses: actions/cache/restore@v4
with:
path: .scons-cache/
key: linux_full_debug_addon
- name: Build Linux full debug
run: scons -j4 target=template_debug platform=linux arch=x86_64 use_system=no dev_build=yes
- name: Save cache linux_full_debug
id: cache-linux-full-debug-save
uses: actions/cache/save@v4
with:
path: .scons-cache/
key: ${{ steps.cache-linux-full-debug-restore.outputs.cache-primary-key }}
- name: Restore cached linux_full_release
id: cache-linux-full-release-restore
uses: actions/cache/restore@v4
with:
path: .scons-cache/
key: linux_full_release_addon
- name: Build Linux full release
run: scons -j4 target=template_release platform=linux arch=x86_64 use_system=no recompile_ffmpeg=no
- name: Save cache linux_full_release
id: cache-linux-full-release-save
uses: actions/cache/save@v4
with:
path: .scons-cache/
key: ${{ steps.cache-linux-full-release-restore.outputs.cache-primary-key }}
- name: Copying libs
run: |
cp -r bin/* test_room/addons/gde_gozen/bin/
cp LICENSE test_room/addons/gde_gozen/
- name: Uploading addon build
if: ${{ github.event.inputs.artifact_addon == 'true' }}
uses: actions/upload-artifact@v4
with:
name: Addon_GDE_GoZen_Linux_Full
path: test_room/addons/
retention-days: 1
- name: Uploading test room build
if: ${{ github.event.inputs.artifact_test_room == 'true' }}
uses: actions/upload-artifact@v4
with:
name: Test_room_GDE_GoZen_Linux_Full
path: test_room/
retention-days: 1
build-gpl:
needs: build
runs-on: ubuntu-latest
container:
image: archlinux:latest
steps:
- name: Installing dependencies
run: pacman -Syu --noconfirm git bash yasm python python-pip scons gcc diffutils make wget unzip tar ffmpeg aom nvidia-utils opus pulseaudio opencl-headers opencl-clhpp libtheora libvpx libvpl libass dav1d libdrm lame libvorbis rav1e svt-av1 x264 x265 libxml2 xvidcore libsoxr vulkan-headers vulkan-validation-layers libopenmpt
- name: Checkout submodules
uses: actions/checkout@v4
with:
submodules: recursive
- name: Restore cached linux_full_debug_gpl
id: cache-linux-full-debug-gpl-restore
uses: actions/cache/restore@v4
with:
path: .scons-cache/
key: linux_full_debug_gpl_addon
- name: Build Linux full debug gpl
run: scons -j4 target=template_debug platform=linux arch=x86_64 use_system=no dev_build=yes enable_gpl=yes
- name: Save cache linux_full_debug_gpl
id: cache-linux-full-debug-gpl-save
uses: actions/cache/save@v4
with:
path: .scons-cache/
key: ${{ steps.cache-linux-full-debug-gpl-restore.outputs.cache-primary-key }}
- name: Restore cached linux_full_release_gpl
id: cache-linux-full-release-gpl-restore
uses: actions/cache/restore@v4
with:
path: .scons-cache/
key: linux_full_release_gpl_addon
- name: Build Linux full release gpl
run: scons -j4 target=template_release platform=linux arch=x86_64 use_system=no recompile_ffmpeg=no enable_gpl=yes
- name: Save cache linux_full_release_gpl
id: cache-linux-full-release-gpl-save
uses: actions/cache/save@v4
with:
path: .scons-cache/
key: ${{ steps.cache-linux-full-release-gpl-restore.outputs.cache-primary-key }}
- name: Copying libs
run: |
cp -r bin/* test_room/addons/gde_gozen/bin/
cp LICENSE test_room/addons/gde_gozen/
- name: Uploading addon build
if: ${{ github.event.inputs.artifact_addon_gpl == 'true' }}
uses: actions/upload-artifact@v4
with:
name: Addon_GDE_GoZen_Linux_Full_GPL
path: test_room/addons/
retention-days: 1
- name: Uploading test room build
if: ${{ github.event.inputs.artifact_test_room_gpl == 'true' }}
uses: actions/upload-artifact@v4
with:
name: Test_room_GDE_GoZen_Linux_Full_GPL
path: test_room/
retention-days: 1