-
-
Notifications
You must be signed in to change notification settings - Fork 115
87 lines (83 loc) · 2.67 KB
/
build.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
name: build
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
workflow_dispatch:
jobs:
build:
strategy:
matrix:
hw_version: [hw1, hw2]
br_config:
[3do, cdi, dreamcast, gamecube, gbahd, genesis, jaguar, jvs_arcade, n64, nes,
parallel_1p, parallel_1p_3v3, parallel_2p, parallel_2p_3v3, pc_engine, pcfx,
playstation, saturn, snes, universal, virtualboy, wii_extension]
include:
- hw_version: dbg
br_config: pad_test
- hw_version: dbg
br_config: qemu
- hw_version: dbg
br_config: qemu_bt_trace_replay
- hw_version: dbg
br_config: qemu_bt_trace_replay_test
runs-on: ubuntu-latest
container:
image: ghcr.io/darthcloud/idf-blueretro:v5.5.0_2024-12-02
outputs:
br_version: ${{ env.br_version }}
steps:
- name: Checkout repo
uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
- name: Build with ESP-IDF
shell: bash
run: |
. $IDF_PATH/export.sh
echo "br_version=$(git describe --always --tags --dirty)" >> $GITHUB_ENV
rm -fr build
echo "$(git describe --always --tags --dirty) ${{ matrix.hw_version }} ${{ matrix.br_config }}" | cut -c -31 > version.txt
cat version.txt
cp configs/${{ matrix.hw_version }}/${{ matrix.br_config }} sdkconfig
BR_HW=_${{ matrix.hw_version }} BR_SYS=_${{ matrix.br_config }} idf.py reconfigure build
- name: Copy OTA initial binary
working-directory: ./build
run: |
mkdir ota
mv ota_data_initial.bin ota/
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.hw_version }}_${{ matrix.br_config }}
path: |
build/partition_table/partition-table.bin
build/bootloader/bootloader.bin
build/ota/ota_data_initial.bin
build/BlueRetro*.bin
if-no-files-found: error
package:
needs: build
runs-on: ubuntu-latest
steps:
- name: Merge Artifacts HW1
uses: actions/upload-artifact/merge@v4
with:
name: ${{ needs.build.outputs.br_version }}_hw1
pattern: hw1*
delete-merged: true
- name: Merge Artifacts HW2
uses: actions/upload-artifact/merge@v4
with:
name: ${{ needs.build.outputs.br_version }}_hw2
pattern: hw2*
delete-merged: true
- name: Merge Artifacts DBG
uses: actions/upload-artifact/merge@v4
with:
name: ${{ needs.build.outputs.br_version }}_dbg
pattern: dbg*
delete-merged: true