Skip to content

Commit f29b30c

Browse files
committed
probe: is the bundle the same file on every system (temporary)
1 parent fefc800 commit f29b30c

2 files changed

Lines changed: 53 additions & 4 deletions

File tree

‎.github/workflows/ci.yml‎

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,7 @@
11
name: CI
22

33
on:
4-
push:
5-
branches: [main]
6-
pull_request:
74
workflow_dispatch:
8-
workflow_call:
95

106
concurrency:
117
group: ci-${{ github.workflow }}-${{ github.ref }}

‎.github/workflows/probe-okb.yml‎

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: probe okb reproducible
2+
# Temporary: is the ok-image bundle the same file on Linux, macOS and Windows? (deleted after reading)
3+
on:
4+
push:
5+
branches: ['probe/**']
6+
env:
7+
XLINGS_NON_INTERACTIVE: '1'
8+
jobs:
9+
okb:
10+
strategy:
11+
fail-fast: false
12+
matrix:
13+
include:
14+
- { os: ubuntu-24.04, name: linux-x64, llvm: 'false' }
15+
- { os: macos-14, name: darwin-arm64, llvm: 'true' }
16+
- { os: windows-2022, name: win32-x64, llvm: 'true' }
17+
runs-on: ${{ matrix.os }}
18+
timeout-minutes: 75
19+
defaults:
20+
run:
21+
shell: bash
22+
steps:
23+
- uses: actions/checkout@v5
24+
- uses: ./.github/actions/setup-mcpp
25+
with:
26+
llvm: ${{ matrix.llvm }}
27+
- run: |
28+
set -euo pipefail
29+
mcpp pack mcpp-ide --target x86_64-openkal --pkg-format okb
30+
mcpp pack mcpp-ide --target x86_64-openkal --pkg-format dir -o images
31+
mkdir -p out
32+
cp target/dist/mcpp-ide-0.1.0.okb out/
33+
cp target/dist/images/lib/x86_64/mcpp-ide.oke out/x86_64.oke
34+
cp target/dist/images/lib/aarch64/mcpp-ide.oke out/aarch64.oke
35+
(cd out && sha256sum *)
36+
- uses: actions/upload-artifact@v5
37+
with:
38+
name: probe-${{ matrix.name }}
39+
path: out
40+
compare:
41+
needs: okb
42+
if: always()
43+
runs-on: ubuntu-24.04
44+
steps:
45+
- uses: actions/download-artifact@v5
46+
with:
47+
pattern: probe-*
48+
path: p
49+
- run: |
50+
cd p && sha256sum */* | sort -k2 | sed 's, , ,'
51+
for f in mcpp-ide-0.1.0.okb x86_64.oke aarch64.oke; do
52+
echo "$f: $(sha256sum */$f | awk '{print $1}' | sort -u | wc -l) distinct digest(s) across $(ls -d */ | wc -l) systems"
53+
done

0 commit comments

Comments
 (0)