Refactor building to target platform
Refactor artifact output == -> =
This commit is contained in:
parent
4940f3b222
commit
25441faa20
2 changed files with 30 additions and 34 deletions
18
action.yml
18
action.yml
|
@ -1,9 +1,27 @@
|
||||||
name: "Build Godot"
|
name: "Build Godot"
|
||||||
description: "Build a Godot project for multiple platforms"
|
description: "Build a Godot project for multiple platforms"
|
||||||
author: josephbmanley
|
author: josephbmanley
|
||||||
|
inputs:
|
||||||
|
name:
|
||||||
|
description: 'Name of the exported binary'
|
||||||
|
required: true
|
||||||
|
preset:
|
||||||
|
description: 'Name of the preset in `export_presets.cfg` to use'
|
||||||
|
required: true
|
||||||
|
subdirectory:
|
||||||
|
description: 'Optional name of the subdirectory to put exported project in'
|
||||||
|
required: false
|
||||||
|
package:
|
||||||
|
description: 'Set true to output an artifact zip file'
|
||||||
|
required: false
|
||||||
runs:
|
runs:
|
||||||
using: docker
|
using: docker
|
||||||
image: Dockerfile
|
image: Dockerfile
|
||||||
|
args:
|
||||||
|
- ${{ inputs.name }}
|
||||||
|
- ${{ inputs.preset }}
|
||||||
|
- ${{ inputs.subdirectory }}
|
||||||
|
- ${{ inputs.package }}
|
||||||
branding:
|
branding:
|
||||||
icon: loader
|
icon: loader
|
||||||
color: blue
|
color: blue
|
|
@ -2,8 +2,8 @@
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
workDir=`pwd`
|
workDir=`pwd`
|
||||||
platforms="linux windows mac html5"
|
|
||||||
|
|
||||||
|
# Install export templates
|
||||||
wget https://downloads.tuxfamily.org/godotengine/3.1.1/Godot_v3.1.1-stable_export_templates.tpz --quiet
|
wget https://downloads.tuxfamily.org/godotengine/3.1.1/Godot_v3.1.1-stable_export_templates.tpz --quiet
|
||||||
mkdir ~/.cache
|
mkdir ~/.cache
|
||||||
mkdir -p ~/.config/godot
|
mkdir -p ~/.config/godot
|
||||||
|
@ -12,44 +12,22 @@ unzip Godot_v3.1.1-stable_export_templates.tpz
|
||||||
mv templates/* ~/.local/share/godot/templates/3.1.1.stable
|
mv templates/* ~/.local/share/godot/templates/3.1.1.stable
|
||||||
rm -f Godot_v3.1.1-stable_export_templates.tpz
|
rm -f Godot_v3.1.1-stable_export_templates.tpz
|
||||||
|
|
||||||
if [ "${SUBDIRECTORY}" != "" ]
|
if [ "$3" != "" ]
|
||||||
then
|
then
|
||||||
SubDirectoryLocation="${SUBDIRECTORY}/"
|
SubDirectoryLocation="$3/"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Export for Linux
|
# Export for project
|
||||||
echo "Building ${PROJECT} for Linux"
|
echo "Building ${PROJECT} for Linux"
|
||||||
mkdir -p ./build/linux/${SubDirectoryLocation:-""}
|
mkdir -p `pwd`/build/${SubDirectoryLocation:-""}
|
||||||
godot --export Linux/X11 ./build/linux/${SubDirectoryLocation:-""}${PROJECT}
|
godot --export $2 `pwd`/build/${SubDirectoryLocation:-""}$1
|
||||||
|
|
||||||
# Export for Windows
|
echo ::set-output name=build::`pwd`/build/${SubDirectoryLocation:-""}
|
||||||
echo "Building ${PROJECT} for Windows"
|
|
||||||
mkdir -p ./build/windows/${SubDirectoryLocation:-""}
|
|
||||||
godot --export "Windows Desktop" ./build/windows/${SubDirectoryLocation:-""}${PROJECT}.exe
|
|
||||||
|
|
||||||
# Export for OSX
|
if [ "$4" = "true" ]
|
||||||
echo "Building ${PROJECT} for OSX"
|
|
||||||
mkdir -p ./build/mac/${SubDirectoryLocation:-""}
|
|
||||||
godot --export "Mac OSX" ./build/mac/${SubDirectoryLocation:-""}${PROJECT}
|
|
||||||
|
|
||||||
# Export for HTML5
|
|
||||||
echo "Building ${PROJECT} for HTML5"
|
|
||||||
mkdir -p ./build/html5/${SubDirectoryLocation:-""}
|
|
||||||
godot --export "HTML5" ./build/html5/${SubDirectoryLocation:-""}index.html
|
|
||||||
|
|
||||||
mkdir ${workDir}/package
|
|
||||||
if [ ${PACKAGE:-"false"} = "true" ]
|
|
||||||
then
|
then
|
||||||
for platform in $platforms
|
mkdir `pwd`/package
|
||||||
do
|
cd `pwd`/build
|
||||||
if [ "$(ls -A ${workDir}/build/${platform})" ]; then
|
zip `pwd`/package/artifact.zip ${SubDirectoryLocation:-"*"} -r
|
||||||
echo $platform
|
echo ::set-output name=artifact::`pwd`/package/artifact.zip
|
||||||
pwd
|
|
||||||
ls
|
|
||||||
cd ${workDir}/build/${platform}
|
|
||||||
zip ${workDir}/package/${PROJECT}-${platform}.zip ${SUBDIRECTORY:-"*"} -r
|
|
||||||
else
|
|
||||||
echo "${platform} did not build!"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
fi
|
Reference in a new issue