Actions Test
This commit is contained in:
302
.gitea/workflows/godot-ci.yml
Normal file
302
.gitea/workflows/godot-ci.yml
Normal file
@ -0,0 +1,302 @@
|
|||||||
|
# This is an edtied version of abarichello's automation script for gitea and godot mono
|
||||||
|
# https://github.com/abarichello/godot-ci/blob/master/.github/workflows/godot-ci.yml
|
||||||
|
|
||||||
|
name: "godot-ci export"
|
||||||
|
on: push
|
||||||
|
|
||||||
|
# NOTE: If your `project.godot` is at the repository root, set `PROJECT_PATH` below to ".".
|
||||||
|
|
||||||
|
env:
|
||||||
|
GODOT_VERSION: 4.4.1
|
||||||
|
EXPORT_NAME: videogame
|
||||||
|
PROJECT_PATH: "."
|
||||||
|
ACTIONS_RUNNER_DEBUG: true
|
||||||
|
ACTIONS_STEP_DEBUG: true
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
prepare-build:
|
||||||
|
name: Prepare Build Assets
|
||||||
|
runs-on: ubuntu-22.04
|
||||||
|
steps:
|
||||||
|
|
||||||
|
# Ensure dl link is provided before starting build process
|
||||||
|
- name: Check Gitea Variables
|
||||||
|
run: |
|
||||||
|
if [ -z "${{ secrets.EXPORT_TEMPLATE_DOWNLOAD_LINK }}" ]; then
|
||||||
|
echo "No export template download link provided, cancelling build"
|
||||||
|
echo "Please set the EXPORT_TEMPLATE_DOWNLOAD_LINK secret in Gitea"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# By default ubuntu-22.04 has nodejs 12, but we need a more modern version for the actions/checkout@v4
|
||||||
|
# Should make my docker image for this step in the future
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: |
|
||||||
|
apt-get update
|
||||||
|
apt-get install -y curl
|
||||||
|
curl -fsSL https://deb.nodesource.com/setup_18.x | bash -
|
||||||
|
apt-get install -y nodejs unzip git git-lfs
|
||||||
|
git lfs install
|
||||||
|
|
||||||
|
- name: Checkout
|
||||||
|
uses: https://gitea.com/actions/checkout@v4
|
||||||
|
with:
|
||||||
|
lfs: true
|
||||||
|
|
||||||
|
# Update the version_info.gd file with info about this build.
|
||||||
|
# If it isn't in the expected spot of game/scripts/version_info.gd skip it
|
||||||
|
- name: Populate Version Text
|
||||||
|
run: |
|
||||||
|
VERSION_FILE="${PROJECT_PATH}/game/scripts/version_info.gd"
|
||||||
|
if [ -f "$VERSION_FILE" ]; then
|
||||||
|
PROJECT_NAME="${EXPORT_NAME}"
|
||||||
|
COMMIT_NUMBER="${GITHUB_RUN_NUMBER}"
|
||||||
|
BRANCH_NAME="${GITHUB_REF_NAME}"
|
||||||
|
SHORT_SHA=$(echo $GITHUB_SHA | cut -c1-8)
|
||||||
|
|
||||||
|
sed -i "s/var project_name: String = \"X\"/var project_name: String = \"${PROJECT_NAME}\"/" "$VERSION_FILE"
|
||||||
|
sed -i "s/var commit_number: int = 0/var commit_number: int = ${COMMIT_NUMBER}/" "$VERSION_FILE"
|
||||||
|
sed -i "s/var branch_name: String = \"X\"/var branch_name: String = \"${BRANCH_NAME}\"/" "$VERSION_FILE"
|
||||||
|
sed -i "s/var short_sha: String = \"X\"/var short_sha: String = \"${SHORT_SHA}\"/" "$VERSION_FILE"
|
||||||
|
sed -i "s/var build_override: bool = false/var build_override: bool = true/" "$VERSION_FILE"
|
||||||
|
|
||||||
|
echo "Updated version_info.gd:"
|
||||||
|
cat "$VERSION_FILE"
|
||||||
|
else
|
||||||
|
echo "version_info.gd not found at $VERSION_FILE, skipping."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Download the exprot templates from the link provided in the secrets
|
||||||
|
# The expected format is a zip that contains windows and linux export and debug templates
|
||||||
|
- name: Download Export Templates
|
||||||
|
run: |
|
||||||
|
mkdir -p "$PROJECT_PATH/build/build_dependencies/export_templates"
|
||||||
|
curl -L "${{ secrets.EXPORT_TEMPLATE_DOWNLOAD_LINK }}" -o "$PROJECT_PATH/build/build_dependencies/export_templates/export_templates.zip"
|
||||||
|
unzip -o "$PROJECT_PATH/build/build_dependencies/export_templates/export_templates.zip" -d "$PROJECT_PATH/build/build_dependencies/export_templates/"
|
||||||
|
rm "$PROJECT_PATH/build/build_dependencies/export_templates/export_templates.zip"
|
||||||
|
|
||||||
|
# Debug to see if the export templates were downloaded correctly
|
||||||
|
echo "Export templates downloaded to $PROJECT_PATH/build/build_dependencies/export_templates/"
|
||||||
|
ls -la "$PROJECT_PATH/build/build_dependencies/export_templates/"
|
||||||
|
|
||||||
|
- name: Upload Prepared Assets
|
||||||
|
uses: https://gitea.com/actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: prepared-assets
|
||||||
|
path: |
|
||||||
|
game/scripts/version_info.gd
|
||||||
|
build/build_dependencies/export_templates/
|
||||||
|
|
||||||
|
export-windows:
|
||||||
|
name: Windows Export
|
||||||
|
runs-on: ubuntu-22.04 # Use 22.04 with godot 4
|
||||||
|
needs: prepare-build
|
||||||
|
container:
|
||||||
|
image: barichello/godot-ci:mono-4.4.1 # change to mono
|
||||||
|
steps:
|
||||||
|
# Doing this becuase barichello/godot-ci:4.4 doesn't have nodejs installed, may need to make own docker image in the future
|
||||||
|
# By default ubuntu-22.04 has nodejs 12, but we need a more modern version for the actions/checkout@v4
|
||||||
|
- name: Install Node.js
|
||||||
|
run: |
|
||||||
|
apt-get update
|
||||||
|
apt-get install -y curl
|
||||||
|
curl -fsSL https://deb.nodesource.com/setup_18.x | bash -
|
||||||
|
apt-get install -y nodejs
|
||||||
|
|
||||||
|
- name: Checkout
|
||||||
|
uses: https://gitea.com/actions/checkout@v4
|
||||||
|
with:
|
||||||
|
lfs: true
|
||||||
|
|
||||||
|
- name: Download Prepared Assets
|
||||||
|
uses: https://gitea.com/actions/download-artifact@v3
|
||||||
|
with:
|
||||||
|
name: prepared-assets
|
||||||
|
path: .
|
||||||
|
|
||||||
|
- name: Windows Build
|
||||||
|
run: |
|
||||||
|
mkdir -v -p build/bin/windows
|
||||||
|
EXPORT_DIR="$(readlink -f build/bin)"
|
||||||
|
cd $PROJECT_PATH
|
||||||
|
godot --headless --verbose --export-release "Windows Desktop" "$EXPORT_DIR/windows/$EXPORT_NAME.exe"
|
||||||
|
|
||||||
|
- name: Upload Artifact
|
||||||
|
uses: https://gitea.com/actions/upload-artifact@v3 # using v3 ad v4 has issues wwith gitea
|
||||||
|
with:
|
||||||
|
name: windows
|
||||||
|
path: build/bin/windows
|
||||||
|
|
||||||
|
export-linux:
|
||||||
|
name: Linux Export
|
||||||
|
runs-on: ubuntu-22.04 # Use 22.04 with godot 4
|
||||||
|
needs: prepare-build
|
||||||
|
container:
|
||||||
|
image: barichello/godot-ci:mono-4.4.1 # change to mono
|
||||||
|
steps:
|
||||||
|
# Doing this becuase barichello/godot-ci:4.4 doesn't have nodejs installed, may need to make own docker image in the future
|
||||||
|
# By default ubuntu-22.04 has nodejs 12, but we need a more modern version for the actions/checkout@v4
|
||||||
|
- name: Install Node.js
|
||||||
|
run: |
|
||||||
|
apt-get update
|
||||||
|
apt-get install -y curl
|
||||||
|
curl -fsSL https://deb.nodesource.com/setup_18.x | bash -
|
||||||
|
apt-get install -y nodejs
|
||||||
|
|
||||||
|
- name: Checkout
|
||||||
|
uses: https://gitea.com/actions/checkout@v4
|
||||||
|
with:
|
||||||
|
lfs: true
|
||||||
|
|
||||||
|
- name: Download Prepared Assets
|
||||||
|
uses: https://gitea.com/actions/download-artifact@v3
|
||||||
|
with:
|
||||||
|
name: prepared-assets
|
||||||
|
path: .
|
||||||
|
|
||||||
|
- name: Linux Build
|
||||||
|
run: |
|
||||||
|
mkdir -v -p build/bin/linux
|
||||||
|
EXPORT_DIR="$(readlink -f build/bin)"
|
||||||
|
cd $PROJECT_PATH
|
||||||
|
godot --headless --verbose --export-release "Linux" "$EXPORT_DIR/linux/$EXPORT_NAME.x86_64"
|
||||||
|
|
||||||
|
- name: Upload Artifact
|
||||||
|
uses: https://gitea.com/actions/upload-artifact@v3 # using v3 ad v4 has issues wwith gitea
|
||||||
|
with:
|
||||||
|
name: linux
|
||||||
|
path: build/bin/linux
|
||||||
|
|
||||||
|
steam-publish:
|
||||||
|
name: Steam Publish
|
||||||
|
runs-on: ubuntu-22.04
|
||||||
|
needs: [export-windows, export-linux]
|
||||||
|
steps:
|
||||||
|
|
||||||
|
# Ensure steam info is provided
|
||||||
|
- name: Check Gitea Variables
|
||||||
|
run: |
|
||||||
|
if [ -z "${{ vars.STEAM_BUILD_USERNAME }}" ]; then
|
||||||
|
echo "No Steam Username variable, cancelling build"
|
||||||
|
echo "Please set the STEAM_BUILD_USERNAME variable in Gitea"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${{ secrets.STEAM_BUILD_PASSWORD }}" ]; then
|
||||||
|
echo "No Steam Password secret, cancelling build"
|
||||||
|
echo "Please set the STEAM_BUILD_PASSWORD secret in Gitea"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${{ secrets.STEAM_GUARD_CODE }}" ]; then
|
||||||
|
echo "No Steam Guard Code secret, cancelling build"
|
||||||
|
echo "Please set the STEAM_GUARD_CODE secret in Gitea"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# I can't use the c2msnetwork/steamcmd bc I need to instlal git and nodejs for the actions/checkout@v4 to work
|
||||||
|
# and I would need root access to install them, which root breaks saving the cache file
|
||||||
|
# So here we setup the dependencies for the missing steamcmd image, nodejs, and git manually
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: |
|
||||||
|
sudo dpkg --add-architecture i386
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y --no-install-recommends \
|
||||||
|
lib32gcc-s1 \
|
||||||
|
lib32stdc++6 \
|
||||||
|
curl \
|
||||||
|
nodejs \
|
||||||
|
git \
|
||||||
|
git-lfs
|
||||||
|
git lfs install
|
||||||
|
|
||||||
|
# Get the file from the link and put it in the required directory
|
||||||
|
- name: Setup SteamCMD
|
||||||
|
run: |
|
||||||
|
mkdir -p ~/steamcmd
|
||||||
|
curl -fsSL 'https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz' | tar xvzf - -C ~/steamcmd
|
||||||
|
# Run once to initialize
|
||||||
|
~/steamcmd/steamcmd.sh +quit
|
||||||
|
|
||||||
|
# Get all the files from the repo into the working directory
|
||||||
|
- name: Checkout
|
||||||
|
uses: https://gitea.com/actions/checkout@v4
|
||||||
|
with:
|
||||||
|
lfs: true
|
||||||
|
|
||||||
|
# Download artifacts, this isn't done automatially like it was in gitlab
|
||||||
|
- name: Download Windows Artifacts
|
||||||
|
uses: https://gitea.com/actions/download-artifact@v3
|
||||||
|
with:
|
||||||
|
name: windows
|
||||||
|
path: build/bin/windows
|
||||||
|
|
||||||
|
- name: Download Linux Artifacts
|
||||||
|
uses: https://gitea.com/actions/download-artifact@v3
|
||||||
|
with:
|
||||||
|
name: linux
|
||||||
|
path: build/bin/linux
|
||||||
|
|
||||||
|
# The normal actions/cache@v3 doesn't work here, so need to manully restore the cache in this step
|
||||||
|
# The only file we need is the config.vdf file for the steam gaurd code
|
||||||
|
|
||||||
|
# If the file doesn't exist, the steam upload will fail and request a new steam guard code.
|
||||||
|
# After a successful upload, the config.vdf file will be created and saved in the cache for future runs
|
||||||
|
- name: Restore Cache
|
||||||
|
uses: https://gitea.com/actions/cache/restore@v3
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
~/Steam/config/config.vdf
|
||||||
|
./steam_build_output/
|
||||||
|
key: steam-cache-${{ runner.os }}-${{ github.ref_name }}
|
||||||
|
restore-keys: |
|
||||||
|
steam-cache-${{ runner.os }}
|
||||||
|
steam-cache
|
||||||
|
|
||||||
|
# Debug to see if cache file exists
|
||||||
|
- name: Debug Pre-Cache
|
||||||
|
run: |
|
||||||
|
echo "Checking for cached config file in :~/Steam/config/config.vdf"
|
||||||
|
if [ -f ~/Steam/config/config.vdf ]; then
|
||||||
|
echo "config.vdf exists!"
|
||||||
|
ls -la ~/Steam/config/config.vdf
|
||||||
|
else
|
||||||
|
echo "No cached config.vdf file."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Update the vdf with steam description from build info
|
||||||
|
- name: Update VDF
|
||||||
|
run: |
|
||||||
|
cd $PROJECT_PATH
|
||||||
|
SHORT_SHA=$(echo $GITHUB_SHA | cut -c1-8)
|
||||||
|
sed -i -e "s/STEAM_DESCRIPTION/${GITHUB_REF_NAME} - ${SHORT_SHA}/" build/build_dependencies/steam/app_build_2739610.vdf
|
||||||
|
|
||||||
|
# There is a chacne that if you fail enough uplaods, steam will rate limit you.
|
||||||
|
# But to get a new steamguard code, you need to fail at least once to get the emial with the code
|
||||||
|
# The ratelimit time isn't published, but I saw in a reddit commit that its 30 minutes, but if you fail in that 30 mintues, it resets the timer
|
||||||
|
# Waiting 30 mintues worked for me, idk if that supersition is real or not :)
|
||||||
|
- name: Publish to Steam
|
||||||
|
run: |
|
||||||
|
cd $PROJECT_PATH
|
||||||
|
|
||||||
|
~/steamcmd/steamcmd.sh +set_steam_guard_code "${{ secrets.STEAM_GUARD_CODE }}" +login "${{ vars.STEAM_BUILD_USERNAME }}" "${{ secrets.STEAM_BUILD_PASSWORD }}" +run_app_build "$PWD/build/build_dependencies/steam/app_build_2739610.vdf" +quit
|
||||||
|
|
||||||
|
# Sanity check make sure file exists
|
||||||
|
- name: Debug Post-Cache
|
||||||
|
run: |
|
||||||
|
echo "Checking for config file in :~/Steam/config/config.vdf"
|
||||||
|
if [ -f ~/Steam/config/config.vdf ]; then
|
||||||
|
echo "File exists!"
|
||||||
|
ls -la ~/Steam/config/config.vdf
|
||||||
|
else
|
||||||
|
echo "No file found."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Manually save the cache file, normal method doesn't work
|
||||||
|
- name: Save Cache
|
||||||
|
uses: https://gitea.com/actions/cache/save@v3
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
~/Steam/config/config.vdf
|
||||||
|
./steam_build_output/
|
||||||
|
key: steam-cache-${{ runner.os }}-${{ github.ref_name }}
|
||||||
3
.gitignore
vendored
3
.gitignore
vendored
@ -1,3 +1,6 @@
|
|||||||
# Godot 4+ specific ignores
|
# Godot 4+ specific ignores
|
||||||
.godot/
|
.godot/
|
||||||
/android/
|
/android/
|
||||||
|
|
||||||
|
build/bin/*
|
||||||
|
build/build_dependencies/export_templates/*
|
||||||
1
build/.gdignore
Normal file
1
build/.gdignore
Normal file
@ -0,0 +1 @@
|
|||||||
|
|
||||||
0
build/build_dependencies/.gitkeep
Normal file
0
build/build_dependencies/.gitkeep
Normal file
14
build/build_dependencies/steam/app_build_2739610.vdf
Normal file
14
build/build_dependencies/steam/app_build_2739610.vdf
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
"AppBuild"
|
||||||
|
{
|
||||||
|
"AppID" "2739610"
|
||||||
|
"Desc" "STEAM_DESCRIPTION"
|
||||||
|
"Preview" "0"
|
||||||
|
"SetLive" "actions-demo "
|
||||||
|
"ContentRoot" "..\..\bin\"
|
||||||
|
"BuildOutput" "..\..\steam_build_output\"
|
||||||
|
"Depots"
|
||||||
|
{
|
||||||
|
"2739611" "depot_build_2739611.vdf"
|
||||||
|
"2739612" "depot_build_2739612.vdf"
|
||||||
|
}
|
||||||
|
}
|
||||||
18
build/build_dependencies/steam/depot_build_2739611.vdf
Normal file
18
build/build_dependencies/steam/depot_build_2739611.vdf
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
"DepotBuild"
|
||||||
|
{
|
||||||
|
"DepotID" "2739611"
|
||||||
|
|
||||||
|
"FileMapping"
|
||||||
|
{
|
||||||
|
// This can be a full path, or a path relative to ContentRoot
|
||||||
|
"LocalPath" "windows\*"
|
||||||
|
|
||||||
|
// This is a path relative to the install folder of your game
|
||||||
|
"DepotPath" "."
|
||||||
|
|
||||||
|
// If LocalPath contains wildcards, setting this means that all
|
||||||
|
// matching files within subdirectories of LocalPath will also
|
||||||
|
// be included.
|
||||||
|
"Recursive" "1"
|
||||||
|
}
|
||||||
|
}
|
||||||
18
build/build_dependencies/steam/depot_build_2739612.vdf
Normal file
18
build/build_dependencies/steam/depot_build_2739612.vdf
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
"DepotBuild"
|
||||||
|
{
|
||||||
|
"DepotID" "2739612"
|
||||||
|
|
||||||
|
"FileMapping"
|
||||||
|
{
|
||||||
|
// This can be a full path, or a path relative to ContentRoot
|
||||||
|
"LocalPath" "linux\*"
|
||||||
|
|
||||||
|
// This is a path relative to the install folder of your game
|
||||||
|
"DepotPath" "."
|
||||||
|
|
||||||
|
// If LocalPath contains wildcards, setting this means that all
|
||||||
|
// matching files within subdirectories of LocalPath will also
|
||||||
|
// be included.
|
||||||
|
"Recursive" "1"
|
||||||
|
}
|
||||||
|
}
|
||||||
52
cool_scene.tscn
Normal file
52
cool_scene.tscn
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
[gd_scene load_steps=6 format=3 uid="uid://8kyydcwkxs4s"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://cdfrfskhgawix" path="res://game/scripts/version_label.gd" id="1_685la"]
|
||||||
|
|
||||||
|
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_685la"]
|
||||||
|
sky_top_color = Color(0.324095, 0.440682, 0.694255, 1)
|
||||||
|
sky_horizon_color = Color(0.627253, 0.656918, 0.737817, 1)
|
||||||
|
sky_curve = 0.0401915
|
||||||
|
ground_bottom_color = Color(0.165109, 0.167185, 0.237208, 1)
|
||||||
|
ground_horizon_color = Color(0.627253, 0.656918, 0.737817, 1)
|
||||||
|
ground_curve = 0.0061557
|
||||||
|
|
||||||
|
[sub_resource type="Sky" id="Sky_v64xd"]
|
||||||
|
sky_material = SubResource("ProceduralSkyMaterial_685la")
|
||||||
|
|
||||||
|
[sub_resource type="Environment" id="Environment_3yadi"]
|
||||||
|
background_mode = 2
|
||||||
|
sky = SubResource("Sky_v64xd")
|
||||||
|
tonemap_mode = 2
|
||||||
|
glow_enabled = true
|
||||||
|
|
||||||
|
[sub_resource type="CylinderMesh" id="CylinderMesh_v64xd"]
|
||||||
|
|
||||||
|
[node name="Node3D" type="Node3D"]
|
||||||
|
|
||||||
|
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
|
||||||
|
transform = Transform3D(-0.866025, -0.433013, 0.25, 0, 0.5, 0.866025, -0.5, 0.75, -0.433013, 0, 0, 0)
|
||||||
|
shadow_enabled = true
|
||||||
|
|
||||||
|
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
|
||||||
|
environment = SubResource("Environment_3yadi")
|
||||||
|
|
||||||
|
[node name="Camera3D" type="Camera3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1.43579)
|
||||||
|
|
||||||
|
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
|
||||||
|
transform = Transform3D(0.241843, 0.293863, -0.13001, -0.050818, -0.125693, -0.378636, -0.317295, 0.244115, -0.0384518, 0, 0, 0)
|
||||||
|
mesh = SubResource("CylinderMesh_v64xd")
|
||||||
|
|
||||||
|
[node name="Control" type="Control" parent="."]
|
||||||
|
layout_mode = 3
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
|
||||||
|
[node name="Label" type="Label" parent="Control"]
|
||||||
|
layout_mode = 0
|
||||||
|
offset_right = 40.0
|
||||||
|
offset_bottom = 23.0
|
||||||
|
script = ExtResource("1_685la")
|
||||||
114
export_presets.cfg
Normal file
114
export_presets.cfg
Normal file
@ -0,0 +1,114 @@
|
|||||||
|
[preset.0]
|
||||||
|
|
||||||
|
name="Windows Desktop"
|
||||||
|
platform="Windows Desktop"
|
||||||
|
runnable=true
|
||||||
|
advanced_options=true
|
||||||
|
dedicated_server=false
|
||||||
|
custom_features=""
|
||||||
|
export_filter="all_resources"
|
||||||
|
include_filter=""
|
||||||
|
exclude_filter=""
|
||||||
|
export_path=""
|
||||||
|
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="build/build_dependencies/export_templates/windows_debug_x86_64.exe"
|
||||||
|
custom_template/release="build/build_dependencies/export_templates/windows_release_x86_64.exe"
|
||||||
|
debug/export_console_wrapper=1
|
||||||
|
binary_format/embed_pck=false
|
||||||
|
texture_format/s3tc_bptc=false
|
||||||
|
texture_format/etc2_astc=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=false
|
||||||
|
application/icon=""
|
||||||
|
application/console_wrapper_icon=""
|
||||||
|
application/icon_interpolation=4
|
||||||
|
application/file_version=""
|
||||||
|
application/product_version=""
|
||||||
|
application/company_name=""
|
||||||
|
application/product_name=""
|
||||||
|
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}'"
|
||||||
|
dotnet/include_scripts_content=false
|
||||||
|
dotnet/include_debug_symbols=true
|
||||||
|
dotnet/embed_build_outputs=false
|
||||||
|
|
||||||
|
[preset.1]
|
||||||
|
|
||||||
|
name="Linux"
|
||||||
|
platform="Linux"
|
||||||
|
runnable=true
|
||||||
|
advanced_options=true
|
||||||
|
dedicated_server=false
|
||||||
|
custom_features=""
|
||||||
|
export_filter="all_resources"
|
||||||
|
include_filter=""
|
||||||
|
exclude_filter=""
|
||||||
|
export_path=""
|
||||||
|
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="build/build_dependencies/export_templates/linux_debug.x86_64"
|
||||||
|
custom_template/release="build/build_dependencies/export_templates/linux_release.x86_64"
|
||||||
|
debug/export_console_wrapper=1
|
||||||
|
binary_format/embed_pck=false
|
||||||
|
texture_format/s3tc_bptc=true
|
||||||
|
texture_format/etc2_astc=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}\""
|
||||||
|
dotnet/include_scripts_content=false
|
||||||
|
dotnet/include_debug_symbols=true
|
||||||
|
dotnet/embed_build_outputs=false
|
||||||
8
game/scripts/version_info.gd
Normal file
8
game/scripts/version_info.gd
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
class_name VersionInfo extends Label
|
||||||
|
|
||||||
|
var project_name: String = "X"
|
||||||
|
var commit_number: int = 0
|
||||||
|
var branch_name: String = "X"
|
||||||
|
var short_sha: String = "X"
|
||||||
|
|
||||||
|
var build_override: bool = false
|
||||||
1
game/scripts/version_info.gd.uid
Normal file
1
game/scripts/version_info.gd.uid
Normal file
@ -0,0 +1 @@
|
|||||||
|
uid://b5kpbvxs7exl8
|
||||||
22
game/scripts/version_label.gd
Normal file
22
game/scripts/version_label.gd
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
extends VersionInfo
|
||||||
|
|
||||||
|
@export var show_label_in_editor: bool = true
|
||||||
|
@export_category("Label Settings")
|
||||||
|
@export var major_version: int = 0
|
||||||
|
@export var minor_version: int = 0
|
||||||
|
@export var patch: int = 0
|
||||||
|
|
||||||
|
@export var show_branch_name: bool = true
|
||||||
|
@export var show_sha: bool = true
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
# fill text
|
||||||
|
text = ("%s_%d.%d.%d-%03d" %[project_name, major_version, minor_version, patch, commit_number])
|
||||||
|
|
||||||
|
# extra details
|
||||||
|
if show_branch_name: text += "-%s" %branch_name
|
||||||
|
if show_sha: text += "-%s" %short_sha
|
||||||
|
|
||||||
|
# show text
|
||||||
|
if show_label_in_editor || build_override: show()
|
||||||
|
else: hide()
|
||||||
1
game/scripts/version_label.gd.uid
Normal file
1
game/scripts/version_label.gd.uid
Normal file
@ -0,0 +1 @@
|
|||||||
|
uid://cdfrfskhgawix
|
||||||
@ -11,6 +11,7 @@ config_version=5
|
|||||||
[application]
|
[application]
|
||||||
|
|
||||||
config/name="Actions Demo"
|
config/name="Actions Demo"
|
||||||
|
run/main_scene="uid://8kyydcwkxs4s"
|
||||||
config/features=PackedStringArray("4.4", "Forward Plus")
|
config/features=PackedStringArray("4.4", "Forward Plus")
|
||||||
config/icon="res://icon.svg"
|
config/icon="res://icon.svg"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user