Repository navigation
75 lines (68 loc) · 2.27 KB
/
Copy pathlint.yml
File metadata and controls
75 lines (68 loc) · 2.27 KB
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
name: lint
on:
push:
pull_request:
permissions:
contents: read
jobs:
shellcheck:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: bash syntax check (bash -n)
run: |
set -e
for f in $(git ls-files '*.sh') extras/bin/luks-fetch-cache; do
bash -n "$f"
echo "syntax OK: $f"
done
- name: shellcheck (warning severity)
run: |
sudo apt-get update -q
sudo apt-get install -y -q shellcheck
shellcheck -S warning \
$(git ls-files '*.sh') \
extras/bin/luks-fetch-cache
loopback:
# Real cryptsetup reencrypt + hard-kill/repair/resume against a throwaway
# file-backed loop device — no real disk is ever touched or modified.
strategy:
fail-fast: false
matrix:
runner: [ubuntu-latest, ubuntu-24.04-arm]
runs-on: ${{ matrix.runner }}
steps:
- uses: actions/checkout@v4
- name: install cryptsetup + btrfs-progs
run: |
sudo apt-get update -q
sudo apt-get install -y -q cryptsetup-bin btrfs-progs
- name: loopback core test
run: sudo bash tests/loopback-core-test.sh
uki-fixtures:
# UKI / systemd-boot / Secure Boot detection against synthetic target
# trees. No disk, no root, no network — pure logic, so it runs everywhere.
strategy:
fail-fast: false
matrix:
runner: [ubuntu-latest, ubuntu-24.04-arm]
runs-on: ${{ matrix.runner }}
steps:
- uses: actions/checkout@v4
- name: install binutils (objcopy, for .cmdline extraction)
run: sudo apt-get update -q && sudo apt-get install -y -q binutils
- name: UKI fixture test
run: bash tests/uki-fixture-test.sh
cmdline-fixtures:
# Kernel command-line carriers (BLS/systemd-boot entries, extlinux, rEFInd,
# Limine, GRUB drop-ins, cmdline.d) and the encrypted-/boot recogniser in
# bin/lib-boot.sh, against synthetic files. No disk, no root, no network.
strategy:
fail-fast: false
matrix:
runner: [ubuntu-latest, ubuntu-24.04-arm]
runs-on: ${{ matrix.runner }}
steps:
- uses: actions/checkout@v4
- name: command-line carrier fixture test
run: bash tests/cmdline-fixture-test.sh