-
Notifications
You must be signed in to change notification settings - Fork 68
83 lines (73 loc) · 2.19 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
name: Build check
on:
push:
branches:
- master
paths:
- 'bin/**'
- 'zfsbootmenu/**'
- 'dracut/**'
- 'initcpio/**'
pull_request:
paths:
- 'bin/**'
- 'zfsbootmenu/**'
- 'dracut/**'
- 'initcpio/**'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
name: Build boot images
runs-on: ubuntu-latest
container:
image: ghcr.io/zbm-dev/zbm-builder
steps:
- uses: actions/checkout@master
- name: Prepare repository for build
run: |
mkdir -p /build
rm -rf /zbm
ln -s "$(pwd)" /zbm
echo "zfsbootmenu_module_root='/zbm/zfsbootmenu'" > /zbm/etc/zfsbootmenu/dracut.conf.d/zbm_modroot.conf
yq-go e '.Global.DracutFlags += ["--no-early-microcode"]' /zbm/etc/zbm-builder/config.yaml > /build/config.yaml
- name: Build release artifacts
run: |
rm -rf /build/dracut.conf.d
mkdir -p /build/dracut.conf.d
cp /zbm/etc/zfsbootmenu/release.conf.d/*.conf /build/dracut.conf.d/
/zbm/releng/docker/build-init.sh -- --debug
- name: Archive release EFI
uses: actions/upload-artifact@v3
with:
name: Release-EFI
path: /build/build/*.EFI
- name: Archive release components
uses: actions/upload-artifact@v3
with:
name: Release-Components
path: |
/build/build/*
!/build/build/*.EFI
- name: Prune release artifacts
run: |
rm -r /build/build
- name: Build recovery artifacts
run: |
rm -rf /build/dracut.conf.d
mkdir -p /build/dracut.conf.d
cp /zbm/etc/zfsbootmenu/recovery.conf.d/*.conf /build/dracut.conf.d/
/zbm/releng/docker/build-init.sh -- --debug
- name: Archive recovery EFI
uses: actions/upload-artifact@v3
with:
name: Recovery-EFI
path: /build/build/*.EFI
- name: Archive recovery components
uses: actions/upload-artifact@v3
with:
name: Recovery-Components
path: |
/build/build/*
!/build/build/*.EFI