@@ -13,6 +13,11 @@ inputs:
1313 description : " Additional luthier options"
1414 required : false
1515 default : " "
16+ use-python-luthier :
17+ description : " Builds with the python version of luthier"
18+ type : boolean
19+ required : false
20+ default : false
1621 token :
1722 description : " Token for foreman"
1823 required : true
@@ -25,6 +30,24 @@ outputs:
2530runs :
2631 using : " composite"
2732 steps :
33+ - name : Set runtime variables
34+ id : run
35+ shell : bash
36+ run : |
37+ if [ "${{ inputs.use-python-luthier }}" = "true" ]; then
38+ echo "runtime=python" >> "$GITHUB_OUTPUT"
39+ echo "ext=py" >> "$GITHUB_OUTPUT"
40+ else
41+ echo "runtime=lute" >> "$GITHUB_OUTPUT"
42+ echo "ext=luau" >> "$GITHUB_OUTPUT"
43+ fi
44+
45+ - name : Set up Python
46+ if : inputs.use-python-luthier
47+ uses : actions/setup-python@v5
48+ with :
49+ python-version : " 3.11"
50+
2851 - name : Install tools
2952 uses : Roblox/setup-foreman@v3
3053 with :
@@ -63,20 +86,20 @@ runs:
6386 - name : Fetch ${{ inputs.target }}
6487 if : steps.cache-extern.outputs.cache-hit != 'true'
6588 shell : bash
66- run : lute . /tools/luthier.luau fetch ${{ inputs.target }}
89+ run : ${{ steps.run.outputs.runtime }} . /tools/luthier.${{ steps.run.outputs.ext }} fetch ${{ inputs.target }}
6790
6891 - name : Configure ${{ inputs.target }}
6992 shell : bash
70- run : lute . /tools/luthier.luau configure ${{ inputs.target }} --config ${{ inputs.config }} ${{ inputs.options }}
93+ run : ${{ steps.run.outputs.runtime }} . /tools/luthier.${{ steps.run.outputs.ext }} configure ${{ inputs.target }} --config ${{ inputs.config }} ${{ inputs.options }}
7194
7295 - name : Build ${{ inputs.target }}
7396 shell : bash
74- run : lute . /tools/luthier.luau build ${{ inputs.target }} --config ${{ inputs.config }} ${{ inputs.options }}
97+ run : ${{ steps.run.outputs.runtime }} . /tools/luthier.${{ steps.run.outputs.ext }} build ${{ inputs.target }} --config ${{ inputs.config }} ${{ inputs.options }}
7598
7699 - name : Get Artifact Path
77100 id : artifact_path
78101 shell : bash
79102 run : |
80- exe_path=$(lute . /tools/luthier.luau build ${{ inputs.target }} --config ${{ inputs.config }} --which)
103+ exe_path=$(${{ steps.run.outputs.runtime }} . /tools/luthier.${{ steps.run.outputs.ext }} build ${{ inputs.target }} --config ${{ inputs.config }} --which)
81104 echo "Executable path: $exe_path" # Debug print
82105 echo "exe_path=$exe_path" >> "$GITHUB_OUTPUT"
0 commit comments