forked from Leather128/LeatherEngine
-
Notifications
You must be signed in to change notification settings - Fork 8
175 lines (162 loc) · 7.64 KB
/
workflow.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
# This is a basic workflow to help you get started with Actions
name: Build Game
# Controls when the action will run.
on:
# Triggers the workflow on push or pull request events but only for the master branch
push:
branches: [main]
pull_request:
branches: [main]
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
buildLinux:
runs-on: ubuntu-latest
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@main
- uses: krdlab/setup-haxe@master
with:
haxe-version: 4.3.6
# Runs a set of commands using the runners shell
- name: Install libvlc
run: sudo apt-get install -y libvlc-dev libvlccore-dev
- name: Install Haxelib
run: |
haxelib setup ~/haxelib
haxelib git hxcpp https://github.com/HaxeFoundation/hxcpp
haxelib install lime
haxelib install openfl
haxelib git flixel https://github.com/HaxeFlixel/flixel
haxelib run lime setup flixel
haxelib run lime setup
haxelib install flixel-tools
haxelib git flixel-ui https://github.com/HaxeFlixel/flixel-ui
haxelib git flixel-addons https://github.com/HaxeFlixel/flixel-addons
haxelib git linc_luajit https://github.com/Leather128/linc_luajit.git
haxelib git hscript-improved https://github.com/FNF-CNE-Devs/hscript-improved codename-dev
haxelib git scriptless-polymod https://github.com/Vortex2Oblivion/scriptless-polymod
haxelib git thx.core https://github.com/fponticelli/thx.core
haxelib git thx.semver https://github.com/fponticelli/thx.semver.git
haxelib install hxvlc
haxelib git discord_rpc https://github.com/Aidan63/linc_discord-rpc
haxelib git fnf-modcharting-tools https://github.com/Vortex2Oblivion/FNF-Modcharting-Tools
haxelib git flxanimate https://github.com/Vortex2Oblivion/flxanimate
haxelib git hxNoise https://github.com/whuop/hxNoise
haxelib git funkin.vis https://github.com/FunkinCrew/funkVis
haxelib git grig.audio https://gitlab.com/haxe-grig/grig.audio
haxelib git jsonpath https://github.com/EliteMasterEric/jsonpath
haxelib git jsonpatch https://github.com/EliteMasterEric/jsonpatch
haxelib install hxcpp-debug-server
haxelib list
- name: Create Version Tag
run: echo "${{github.run_id}}" > VERSION
- name: Compile Linux
run: |
cd $(haxelib libpath hxcpp)/tools/hxcpp
haxe compile.hxml
cd -
haxelib --always run lime build Project.xml linux --app-version="4.0.0-${{ github.run_id}}"
- name: Publish Linux Artifact
uses: actions/upload-artifact@main
with:
name: linuxBuild
path: "export/release/linux/bin"
buildWindows:
runs-on: windows-latest
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@main
- uses: krdlab/setup-haxe@master
with:
haxe-version: 4.3.6
# Runs a set of commands using the runners shell
- name: Install Haxelib
run: |
haxelib setup C:/haxelib
haxelib git hxcpp https://github.com/Vortex2Oblivion/hxcpp-compiled
haxelib install lime
haxelib install openfl
haxelib git flixel https://github.com/HaxeFlixel/flixel
haxelib run lime setup flixel
haxelib run lime setup
haxelib install flixel-tools
haxelib git flixel-ui https://github.com/HaxeFlixel/flixel-ui
haxelib git flixel-addons https://github.com/HaxeFlixel/flixel-addons
haxelib git linc_luajit https://github.com/Leather128/linc_luajit.git
haxelib git hscript-improved https://github.com/FNF-CNE-Devs/hscript-improved codename-dev
haxelib git scriptless-polymod https://github.com/Vortex2Oblivion/scriptless-polymod
haxelib git hxNoise https://github.com/whuop/hxNoise
haxelib install hxvlc
haxelib git discord_rpc https://github.com/Aidan63/linc_discord-rpc
haxelib git fnf-modcharting-tools https://github.com/Vortex2Oblivion/FNF-Modcharting-Tools
haxelib git flxanimate https://github.com/Vortex2Oblivion/flxanimate
haxelib git thx.core https://github.com/fponticelli/thx.core
haxelib git thx.semver https://github.com/fponticelli/thx.semver.git
haxelib git grig.audio https://gitlab.com/haxe-grig/grig.audio
haxelib git funkin.vis https://github.com/FunkinCrew/funkVis
haxelib git jsonpath https://github.com/EliteMasterEric/jsonpath
haxelib git jsonpatch https://github.com/EliteMasterEric/jsonpatch
haxelib install hxcpp-debug-server
haxelib list
shell: cmd
- name: Create Version Tag
run: echo "${{github.run_id}}" > VERSION
- name: Compile
run: |
haxelib --always run lime build windows --app-version="4.0.0-${{ github.run_id}}"
- name: Publish Artifact
uses: actions/upload-artifact@main
with:
name: windowsBuild
path: export/release/windows/bin
buildMac:
runs-on: macos-12
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@main
- uses: krdlab/setup-haxe@master
with:
haxe-version: 4.3.6
# Runs a set of commands using the runners shell
- name: Install Haxelib
run: |
haxelib setup ~/haxelib
haxelib git hxcpp https://github.com/HaxeFoundation/hxcpp
haxelib install lime
haxelib install openfl
haxelib git flixel https://github.com/HaxeFlixel/flixel
haxelib run lime setup flixel
haxelib run lime setup
haxelib install flixel-tools
haxelib git flixel-ui https://github.com/HaxeFlixel/flixel-ui
haxelib git flixel-addons https://github.com/HaxeFlixel/flixel-addons
haxelib git linc_luajit https://github.com/Leather128/linc_luajit.git
haxelib git hscript-improved https://github.com/FNF-CNE-Devs/hscript-improved codename-dev
haxelib git scriptless-polymod https://github.com/Vortex2Oblivion/scriptless-polymod
haxelib install hxvlc
haxelib git hxNoise https://github.com/whuop/hxNoise
haxelib git discord_rpc https://github.com/Aidan63/linc_discord-rpc
haxelib git fnf-modcharting-tools https://github.com/Vortex2Oblivion/FNF-Modcharting-Tools
haxelib git flxanimate https://github.com/Vortex2Oblivion/flxanimate
haxelib git thx.core https://github.com/fponticelli/thx.core
haxelib git thx.semver https://github.com/fponticelli/thx.semver.git
haxelib git funkin.vis https://github.com/FunkinCrew/funkVis
haxelib git grig.audio https://gitlab.com/haxe-grig/grig.audio
haxelib git jsonpath https://github.com/EliteMasterEric/jsonpath
haxelib git jsonpatch https://github.com/EliteMasterEric/jsonpatch
haxelib install hxcpp-debug-server
haxelib list
- name: Create Version Tag
run: echo "${{github.run_id}}" > VERSION
- name: Compile
run: |
cd $(haxelib libpath hxcpp)/tools/hxcpp
haxe compile.hxml
cd -
haxelib --always run lime build mac --app-version="4.0.0-${{ github.run_id}}"
- name: Publish Artifact
uses: actions/upload-artifact@main
with:
name: macBuild
path: export/release/macos/bin