9
9
- master
10
10
11
11
env :
12
+ AUTOTESTER_LIBS_GROUP : ${{github.workspace}}/toolchain/clibs.8xg
13
+ AUTOTESTER_PATH : ${{github.workspace}}/CEmu/tests/autotester
14
+ AUTOTESTER_ROM : ${{github.workspace}}/secrets/84pce_515_53.rom
15
+ CEDEV : ${{github.workspace}}/CEdev
16
+ CEDEV_BIN : ${{github.workspace}}/CEdev/bin
17
+ CEDEV_EXAMPLES : ${{github.workspace}}/CEdev/examples
12
18
CEMU_PATH : ${{github.workspace}}/CEmu
13
19
FASMG_DOMAIN : https://flatassembler.net
20
+ FASMG_PATH : ${{github.workspace}}/fasmg
14
21
HOST_DOMAIN : https://jacobly.com
15
- INSTALL_PATH : ${{github.workspace}}/CEdev
16
- ROM_FILE : 84pce_515_53.rom
17
22
SECRETS_PATH : ${{github.workspace}}/secrets
18
23
TOOLCHAIN_PATH : ${{github.workspace}}/toolchain
24
+
19
25
jobs :
20
26
build :
21
27
strategy :
33
39
runs-on : ${{matrix.runs-on}}-latest
34
40
steps :
35
41
- name : Prepare Build Environment
36
- run : cmake -E echo >> $${{matrix.env}}GITHUB_PATH ${{env.INSTALL_PATH}}/bin
42
+ run : cmake -E echo >> $${{matrix.env}}GITHUB_PATH ${{env.CEDEV_BIN}}
37
43
38
44
- name : Download ez80-clang
39
45
id : ez80-clang
44
50
uses : DuckSoft/extract-7z-action@v1.0
45
51
with :
46
52
pathSource : ${{steps.ez80-clang.outputs.file-path}}
47
- pathTarget : ${{env.INSTALL_PATH}}/bin
53
+ pathTarget : ${{env.CEDEV_BIN}}
48
54
49
55
- name : Download Fasmg Download Page
50
56
id : fasmg-download
@@ -68,13 +74,13 @@ jobs:
68
74
uses : DuckSoft/extract-7z-action@v1.0
69
75
with :
70
76
pathSource : ${{steps.fasmg.outputs.file-path}}
71
- pathTarget : ${{github.workspace}}/fasmg
77
+ pathTarget : ${{env.FASMG_PATH}}
72
78
- name : Setup Fasmg
73
- run : cmake -E copy fasmg${{matrix.fasmg}}/fasmg${{matrix.exe}} ${{env.INSTALL_PATH}}/bin
79
+ run : cmake -E copy fasmg${{matrix.fasmg}}/fasmg${{matrix.exe}} ${{env.CEDEV_BIN}}
74
80
75
81
- name : Make Binaries Executable
76
82
if : runner.os != 'Windows'
77
- run : chmod +x ${{env.INSTALL_PATH}}/bin /*
83
+ run : chmod +x ${{env.CEDEV_BIN}} /*
78
84
- name : Test Build Dependencies
79
85
run : |
80
86
ez80-clang --version
@@ -97,12 +103,12 @@ jobs:
97
103
uses : actions/upload-artifact@v2
98
104
with :
99
105
name : CEdev-${{runner.os}}
100
- path : ${{env.INSTALL_PATH }}
106
+ path : ${{env.CEDEV }}
101
107
- name : Upload Libraries
102
108
uses : actions/upload-artifact@v2
103
109
with :
104
110
name : clibs
105
- path : ${{env.TOOLCHAIN_PATH}}/clibs.8xg
111
+ path : ${{env.AUTOTESTER_LIBS_GROUP}}
106
112
- name : Upload Windows Installer
107
113
if : runner.os == 'Windows'
108
114
uses : actions/upload-artifact@v2
@@ -129,45 +135,40 @@ jobs:
129
135
runs-on : ${{matrix.runs-on}}-latest
130
136
steps :
131
137
- name : Prepare Test Environment
132
- run : |
133
- cmake -E echo >> $${{matrix.env}}GITHUB_ENV CEDEV=${{env.INSTALL_PATH}}
134
- cmake -E echo >> $${{matrix.env}}GITHUB_PATH ${{env.INSTALL_PATH}}/bin
135
- cmake -E echo >> $${{matrix.env}}GITHUB_PATH ${{env.CEMU_PATH}}/tests/autotester
138
+ run : cmake -E echo >> $${{matrix.env}}GITHUB_PATH ${{env.CEDEV_BIN}}
136
139
137
140
- name : Download CEdev
138
141
uses : actions/download-artifact@v2
139
142
with :
140
143
name : ${{matrix.installer}}-${{runner.os}}
141
- path : ${{env.INSTALL_PATH }}
144
+ path : ${{env.CEDEV }}
142
145
- name : Install CEdev
143
146
if : matrix.installer == 'installer'
144
- run : ${{env.INSTALL_PATH }}/CEdev.exe /DIR=${{env.INSTALL_PATH }} /VERYSILENT /SUPPRESSMSGBOXES /NORESTART
147
+ run : ${{env.CEDEV }}/CEdev.exe /DIR=${{env.CEDEV }} /VERYSILENT /SUPPRESSMSGBOXES /NORESTART
145
148
146
149
- name : Make Binaries Executable
147
150
if : runner.os != 'Windows'
148
- run : chmod +x ${{env.INSTALL_PATH}}/bin /*
151
+ run : chmod +x ${{env.CEDEV_BIN}} /*
149
152
- name : Build Examples
150
- env :
151
- CEDEV : ${{env.INSTALL_PATH}}
152
- run : make -j4 -C ${{env.INSTALL_PATH}}/examples V=1
153
+ run : make -j4 -C ${{env.CEDEV_EXAMPLES}} V=1
153
154
154
155
- name : Checkout CEmu
155
156
uses : actions/checkout@v2.3.4
156
157
with :
157
- repository : CE-Programming /CEmu
158
+ repository : ${{github.repository_owner}} /CEmu
158
159
ref : latest-stable
159
160
path : ${{env.CEMU_PATH}}
160
161
persist-credentials : false
161
162
- name : Build CEmu
162
163
run : make -j4 -C ${{env.CEMU_PATH}}/core
163
164
- name : Build Autotester CLI
164
- run : make -j4 -C ${{env.CEMU_PATH}}/tests/autotester
165
+ run : make -j4 -C ${{env.AUTOTESTER_PATH}}
165
166
166
167
- name : Download Secrets
167
168
id : download-secrets
168
169
uses : carlosperate/download-file-action@v1.0.3
169
170
with :
170
- file-url : ${{env.HOST_DOMAIN}}/CE-Programming /secrets
171
+ file-url : ${{env.HOST_DOMAIN}}/${{github.repository_owner}} /secrets
171
172
location : ${{env.SECRETS_PATH}}
172
173
- name : Decrypt Secrets
173
174
env :
@@ -183,33 +184,28 @@ jobs:
183
184
uses : actions/download-artifact@v2
184
185
with :
185
186
name : clibs
187
+ path : ${{env.TOOLCHAIN_PATH}}
186
188
- name : Test Examples
187
189
if : runner.os != 'Windows'
188
- env :
189
- AUTOTESTER_LIBS_GROUP : ${{github.workspace}}/clibs.8xg
190
- AUTOTESTER_ROM : ${{env.SECRETS_PATH}}/${{env.ROM_FILE}}
191
- CEDEV : ${{env.INSTALL_PATH}}
192
190
run : |
193
191
failed=0
194
- find ${{env.INSTALL_PATH}}/examples -name autotest.json -print0 | while read -d '' test; do
192
+ find ${{env.CEDEV_EXAMPLES}} -name autotest.json -print0 | while read -d '' test; do
195
193
cmake -E echo "Launching autotester on $test"
196
- autotester "$test"
194
+ ${{env.AUTOTESTER_PATH}}/ autotester "$test"
197
195
cmake -E true $((failed += $?))
198
196
done
197
+ cmake -E echo "$failed tests failed"
199
198
exit $failed
200
199
- name : Test Examples
201
200
if : runner.os == 'Windows'
202
- env :
203
- AUTOTESTER_LIBS_GROUP : ${{github.workspace}}\clibs.8xg
204
- AUTOTESTER_ROM : ${{env.SECRETS_PATH}}\${{env.ROM_FILE}}
205
- CEDEV : ${{env.INSTALL_PATH}}
206
201
run : |
207
202
$failed = 0
208
- foreach ($test in get-childitem "${{env.INSTALL_PATH}}\examples " -recurse -include autotest.json) {
203
+ foreach ($test in get-childitem "${{env.CEDEV_EXAMPLES}} " -recurse -include autotest.json) {
209
204
cmake -E echo "Launching autotester on $test"
210
- autotester "$test"
205
+ ${{env.AUTOTESTER_PATH}}\ autotester.exe "$test"
211
206
$failed += $lastexitcode
212
207
}
208
+ cmake -E echo "$failed tests failed"
213
209
exit $failed
214
210
215
211
- name : Remove Secrets
0 commit comments