Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
78 lines (70 loc) · 2.34 KB

File metadata and controls

78 lines (70 loc) · 2.34 KB
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
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
name: reproducible-build-test
on:
workflow_dispatch: {}
schedule:
- cron: "0 1 */2 * *"
jobs:
build:
name: build reproducible binaries
runs-on: ${{ matrix.runner }}
strategy:
matrix:
include:
- runner: warp-ubuntu-2404-x64-32x
machine: machine-1
- runner: warp-ubuntu-2204-x64-32x
machine: machine-2
steps:
- uses: actions/checkout@v5
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Install rust
run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
- name: Build reproducible binary with Docker
run: |
RUST_TOOLCHAIN=$(rustc --version | cut -d' ' -f2)
docker build \
--build-arg "RUST_TOOLCHAIN=${RUST_TOOLCHAIN}" \
-f docker/Dockerfile.reproducible -t rbuilder:release \
--output type=local,dest=./target .
- name: Calculate SHA256
id: sha256
run: |
sha256sum target/reproducible/{rbuilder-operator,rbuilder-rebalancer} > checksums.sha256
echo "Binaries SHA256 on ${{ matrix.machine }}: $(cat checksums.sha256)"
- name: Upload the hash
uses: actions/upload-artifact@v4
with:
name: checksums-${{ matrix.machine }}
path: |
checksums.sha256
retention-days: 1
compare:
name: compare reproducible binaries
needs: build
runs-on: ubuntu-latest
steps:
- name: Download artifacts from machine-1
uses: actions/download-artifact@v4
with:
name: checksums-machine-1
path: machine-1/
- name: Download artifacts from machine-2
uses: actions/download-artifact@v4
with:
name: checksums-machine-2
path: machine-2/
- name: Compare SHA256 hashes
run: |
echo "=== SHA256 Comparison ==="
echo "Machine 1 hashes:"
cat machine-1/checksums.sha256
echo "Machine 2 hashes:"
cat machine-2/checksums.sha256
if cmp -s machine-1/checksums.sha256 machine-2/checksums.sha256; then
echo "✅ SUCCESS: Binaries are identical (reproducible build verified)"
else
echo "❌ FAILURE: Binaries differ (reproducible build failed)"
exit 1
fi
Morty Proxy This is a proxified and sanitized view of the page, visit original site.