mirror of
https://github.com/RetroDECK/RetroDECK.git
synced 2024-11-30 17:45:42 +00:00
102 lines
4.7 KiB
YAML
102 lines
4.7 KiB
YAML
name: GoDot Configurator Build Debug
|
|
run-name: Build Godot Configurator(DEBUG) for RetroDECK
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
job_target:
|
|
description: 'Select the platform'
|
|
required: true
|
|
default: 'linux'
|
|
type: choice
|
|
options:
|
|
- linux
|
|
- windows
|
|
- mac
|
|
- all
|
|
|
|
env:
|
|
GODOT_VERSION: 4.3
|
|
GODOT_PROJECT_LOCATION: tools/configurator/project.godot
|
|
EXPORT_FOLDER_LINUX: bin/Linux
|
|
EXPORT_FOLDER_WINDOWS: bin/Windows
|
|
EXPORT_FOLDER_MAC: bin/macOS
|
|
APPLICATION_NAME: godot_configurator
|
|
|
|
jobs:
|
|
linux-build:
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: archlinux:latest
|
|
steps:
|
|
- name: Set up variable
|
|
run: |
|
|
echo "DATE=$(date +'%Y-%m-%d')" >> $GITHUB_ENV
|
|
echo "MAIN_FOLDER=$(pwd)" >> $GITHUB_ENV
|
|
|
|
- name: Installing dependencies
|
|
run: pacman -Syu --noconfirm git bash yasm python python-pip scons gcc diffutils make wget unzip tar mingw-w64
|
|
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: Prepare Godot
|
|
run: |
|
|
wget -q -O godot_linux.zip https://github.com/godotengine/godot-builds/releases/download/${GODOT_VERSION}-stable/Godot_v${GODOT_VERSION}-stable_linux.x86_64.zip
|
|
unzip godot_linux.zip
|
|
wget -q -O godot_export_templates.tpz https://github.com/godotengine/godot-builds/releases/download/${GODOT_VERSION}-stable/Godot_v${GODOT_VERSION}-stable_export_templates.tpz
|
|
mkdir -p ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable
|
|
unzip godot_export_templates.tpz -d ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable
|
|
mv ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable/templates/* ~/.local/share/godot/export_templates/${GODOT_VERSION}.stable/
|
|
sed -i 's/config\/version=\"[^"]\*"/config\/version=\"${{ env.DATE }}-debug\"/' ${{ env.GODOT_PROJECT_LOCATION }}
|
|
|
|
# DEBUG BUILDS
|
|
# LINUX
|
|
- name: Building debug Linux
|
|
if: ${{ github.event.inputs.job_target == 'linux' || github.event.inputs.job_target == 'all' }}
|
|
run: |
|
|
mkdir -p ${{ env.EXPORT_FOLDER_LINUX }}
|
|
./Godot_v${GODOT_VERSION}-stable_linux.x86_64 --import ${{ env.GODOT_PROJECT_LOCATION }} --quiet --headless --export-debug "Linux/X11 64-bit" ${{ env.MAIN_FOLDER }}/${{ env.EXPORT_FOLDER_LINUX }}/${{ env.APPLICATION_NAME}}.x86_64
|
|
chmod +x ${{ env.EXPORT_FOLDER_LINUX }}/${{ env.APPLICATION_NAME }}.sh
|
|
chmod +x ${{ env.EXPORT_FOLDER_LINUX }}/${{ env.APPLICATION_NAME }}.x86_64
|
|
|
|
# TAR to keep permissions set above
|
|
- name: Tar File
|
|
if: ${{ github.event.inputs.job_target == 'linux' || github.event.inputs.job_target == 'all' }}
|
|
run: tar cvf ${{ env.APPLICATION_NAME}}_linux_debug_${{ env.DATE}}.tar ${{ env.EXPORT_FOLDER_LINUX}}
|
|
|
|
- name: Uploading GDExtension artifact debug
|
|
if: ${{ github.event.inputs.job_target == 'linux' || github.event.inputs.job_target == 'all' }}
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: ${{ env.APPLICATION_NAME }}_linux_debug_${{ env.DATE }}.tar
|
|
path: ${{ env.APPLICATION_NAME }}_linux_debug_${{ env.DATE }}.tar
|
|
|
|
# WINDOWS
|
|
- name: Building debug Windows
|
|
if: ${{ github.event.inputs.job_target == 'windows' || github.event.inputs.job_target == 'all' }}
|
|
run: |
|
|
mkdir -p ${{ env.EXPORT_FOLDER_WINDOWS }}
|
|
./Godot_v${GODOT_VERSION}-stable_linux.x86_64 --import ${{ env.GODOT_PROJECT_LOCATION }} --quiet --headless --export-debug "windows" ${{ env.MAIN_FOLDER }}/${{ env.EXPORT_FOLDER_WINDOWS }}/${{ env.APPLICATION_NAME}}.exe
|
|
|
|
- name: Uploading GDExtension artifact debug
|
|
if: ${{ github.event.inputs.job_target == 'windows' || github.event.inputs.job_target == 'all' }}
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: ${{ env.APPLICATION_NAME }}_windows_debug_${{ env.DATE }}
|
|
path: ${{ env.EXPORT_FOLDER_WINDOWS }}/
|
|
|
|
#MAC
|
|
- name: Building debug macOS
|
|
if: ${{ github.event.inputs.job_target == 'mac' || github.event.inputs.job_target == 'all' }}
|
|
run: |
|
|
mkdir -p ${{ env.EXPORT_FOLDER_MAC }}
|
|
./Godot_v${GODOT_VERSION}-stable_linux.x86_64 --import ${{ env.GODOT_PROJECT_LOCATION }} --quiet --headless --export-debug "macOS" ${{ env.MAIN_FOLDER }}/${{ env.EXPORT_FOLDER_MAC}}/${{ env.APPLICATION_NAME}}.app
|
|
|
|
- name: Uploading GDExtension artifact debug
|
|
if: ${{ github.event.inputs.job_target == 'mac' || github.event.inputs.job_target == 'all' }}
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: ${{ env.APPLICATION_NAME }}_mac_debug_${{ env.DATE }}
|
|
path: ${{ env.EXPORT_FOLDER_MAC }}/ |