From ad841fb6f19471871c77ca6d7c64e8bb0daabe26 Mon Sep 17 00:00:00 2001 From: Benjamin Morgan Date: Mon, 20 Oct 2025 19:21:30 -0600 Subject: [PATCH] Added export_presets --- .forgejo/runner/Dockerfile | 2 +- .forgejo/workflows/build.yml | 4 +- export_presets.cfg | 110 +++++++++++++++++++++++++++++++++++ 3 files changed, 112 insertions(+), 4 deletions(-) create mode 100644 export_presets.cfg diff --git a/.forgejo/runner/Dockerfile b/.forgejo/runner/Dockerfile index 3cad548..d50ab10 100644 --- a/.forgejo/runner/Dockerfile +++ b/.forgejo/runner/Dockerfile @@ -3,7 +3,7 @@ FROM barichello/godot-ci:4.5.1 # Install Node 24 from Alpine RUN apt-get update && apt-get install -y curl \ && curl -fsSL https://deb.nodesource.com/setup_24.x | bash - \ - && apt-get install -y nodejs \ + && apt-get install -y nodejs fontconfig \ && rm -rf /var/lib/apt/lists/* # Verify installations diff --git a/.forgejo/workflows/build.yml b/.forgejo/workflows/build.yml index c11bbaa..c3144d1 100644 --- a/.forgejo/workflows/build.yml +++ b/.forgejo/workflows/build.yml @@ -28,6 +28,7 @@ jobs: export: name: Build Asteroids for all platforms + needs: prepare runs-on: docker-cli-node24 container: image: ${{ vars.REGISTRY_URL }}/asteroids/runner:latest @@ -41,9 +42,6 @@ jobs: - name: Export Windows run: godot --headless --export-release "Windows Desktop" build/asteroids.exe - - name: Export macOS - run: godot --headless --export-release "macOS" build/asteroids.zip - - name: Upload artifacts uses: actions/upload-artifact@v4 with: diff --git a/export_presets.cfg b/export_presets.cfg new file mode 100644 index 0000000..79ef481 --- /dev/null +++ b/export_presets.cfg @@ -0,0 +1,110 @@ +[preset.0] + +name="Linux" +platform="Linux" +runnable=true +advanced_options=false +dedicated_server=false +custom_features="" +export_filter="all_resources" +include_filter="" +exclude_filter="" +export_path="build/asteroids.x86_64" +patches=PackedStringArray() +encryption_include_filters="" +encryption_exclude_filters="" +seed=0 +encrypt_pck=false +encrypt_directory=false +script_export_mode=2 + +[preset.0.options] + +custom_template/debug="" +custom_template/release="" +debug/export_console_wrapper=1 +binary_format/embed_pck=false +texture_format/s3tc_bptc=true +texture_format/etc2_astc=false +shader_baker/enabled=false +binary_format/architecture="x86_64" +ssh_remote_deploy/enabled=false +ssh_remote_deploy/host="user@host_ip" +ssh_remote_deploy/port="22" +ssh_remote_deploy/extra_args_ssh="" +ssh_remote_deploy/extra_args_scp="" +ssh_remote_deploy/run_script="#!/usr/bin/env bash +export DISPLAY=:0 +unzip -o -q \"{temp_dir}/{archive_name}\" -d \"{temp_dir}\" +\"{temp_dir}/{exe_name}\" {cmd_args}" +ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash +kill $(pgrep -x -f \"{temp_dir}/{exe_name} {cmd_args}\") +rm -rf \"{temp_dir}\"" + +[preset.1] + +name="Windows Desktop" +platform="Windows Desktop" +runnable=true +advanced_options=false +dedicated_server=false +custom_features="" +export_filter="all_resources" +include_filter="" +exclude_filter="" +export_path="build/asteroids.exe" +patches=PackedStringArray() +encryption_include_filters="" +encryption_exclude_filters="" +seed=0 +encrypt_pck=false +encrypt_directory=false +script_export_mode=2 + +[preset.1.options] + +custom_template/debug="" +custom_template/release="" +debug/export_console_wrapper=1 +binary_format/embed_pck=false +texture_format/s3tc_bptc=true +texture_format/etc2_astc=false +shader_baker/enabled=false +binary_format/architecture="x86_64" +codesign/enable=false +codesign/timestamp=true +codesign/timestamp_server_url="" +codesign/digest_algorithm=1 +codesign/description="" +codesign/custom_options=PackedStringArray() +application/modify_resources=true +application/icon="" +application/console_wrapper_icon="" +application/icon_interpolation=4 +application/file_version="" +application/product_version="" +application/company_name="Benjamin Morgan" +application/product_name="Asteroids" +application/file_description="" +application/copyright="" +application/trademarks="" +application/export_angle=0 +application/export_d3d12=0 +application/d3d12_agility_sdk_multiarch=true +ssh_remote_deploy/enabled=false +ssh_remote_deploy/host="user@host_ip" +ssh_remote_deploy/port="22" +ssh_remote_deploy/extra_args_ssh="" +ssh_remote_deploy/extra_args_scp="" +ssh_remote_deploy/run_script="Expand-Archive -LiteralPath '{temp_dir}\\{archive_name}' -DestinationPath '{temp_dir}' +$action = New-ScheduledTaskAction -Execute '{temp_dir}\\{exe_name}' -Argument '{cmd_args}' +$trigger = New-ScheduledTaskTrigger -Once -At 00:00 +$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries +$task = New-ScheduledTask -Action $action -Trigger $trigger -Settings $settings +Register-ScheduledTask godot_remote_debug -InputObject $task -Force:$true +Start-ScheduledTask -TaskName godot_remote_debug +while (Get-ScheduledTask -TaskName godot_remote_debug | ? State -eq running) { Start-Sleep -Milliseconds 100 } +Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue" +ssh_remote_deploy/cleanup_script="Stop-ScheduledTask -TaskName godot_remote_debug -ErrorAction:SilentlyContinue +Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue +Remove-Item -Recurse -Force '{temp_dir}'"