File tree Expand file tree Collapse file tree 7 files changed +207
-136
lines changed Expand file tree Collapse file tree 7 files changed +207
-136
lines changed Original file line number Diff line number Diff line change
1
+ name : ' Setup Build Dependencies'
2
+ description : ' Install system dependencies required for building OpenMina'
3
+ inputs :
4
+ include-sqlite :
5
+ description : ' Include SQLite3 in the installation'
6
+ required : false
7
+ default : ' false'
8
+ runs :
9
+ using : ' composite'
10
+ steps :
11
+ - name : Setup build dependencies (Ubuntu)
12
+ if : runner.os == 'Linux'
13
+ shell : bash
14
+ run : |
15
+ sudo apt update || true
16
+ if [ "${{ inputs.include-sqlite }}" = "true" ]; then
17
+ sudo apt install -y protobuf-compiler sqlite3 || true
18
+ else
19
+ sudo apt install -y protobuf-compiler || true
20
+ fi
21
+
22
+ - name : Setup build dependencies (macOS)
23
+ if : runner.os == 'macOS'
24
+ shell : bash
25
+ run : |
26
+ brew install protobuf
Original file line number Diff line number Diff line change
1
+ name : ' Download Circuit Files'
2
+ description : ' Download required circuit files for OpenMina'
3
+ runs :
4
+ using : ' composite'
5
+ steps :
6
+ - name : Download circuits files
7
+ shell : bash
8
+ run : |
9
+ make download-circuits
Original file line number Diff line number Diff line change
1
+ name : ' Setup Container Dependencies'
2
+ description : ' Install libssl3 in container for OpenMina binaries'
3
+ runs :
4
+ using : ' composite'
5
+ steps :
6
+ - name : Install libssl3
7
+ shell : bash
8
+ run : |
9
+ echo "deb http://deb.debian.org/debian bookworm main" > /etc/apt/sources.list.d/bookworm.list
10
+ apt-get update && \
11
+ apt-get install -y --no-install-recommends libssl3 curl && \
12
+ apt-get clean && \
13
+ rm -rf /var/lib/apt/lists/*
Original file line number Diff line number Diff line change
1
+ name : ' Setup Rust Toolchain'
2
+ description : ' Setup Rust toolchain with components and caching'
3
+ inputs :
4
+ toolchain :
5
+ description : ' Rust toolchain version'
6
+ required : false
7
+ default : ' 1.84'
8
+ components :
9
+ description : ' Additional Rust components to install'
10
+ required : false
11
+ default : ' rustfmt'
12
+ cache-prefix :
13
+ description : ' Cache prefix key'
14
+ required : false
15
+ default : ' v0'
16
+ enable-cache :
17
+ description : ' Enable Rust cache'
18
+ required : false
19
+ default : ' true'
20
+ runs :
21
+ using : ' composite'
22
+ steps :
23
+ - name : Setup Rust
24
+ uses : dtolnay/rust-toolchain@stable
25
+ with :
26
+ toolchain : ${{ inputs.toolchain }}
27
+ components : ${{ inputs.components }}
28
+
29
+ - name : Setup Rust Cache
30
+ if : inputs.enable-cache == 'true'
31
+ uses : Swatinem/rust-cache@v2
32
+ with :
33
+ prefix-key : ${{ inputs.cache-prefix }}
Original file line number Diff line number Diff line change
1
+ name : ' Setup WebAssembly Build Environment'
2
+ description : ' Setup Rust with WASM target and wasm-bindgen-cli'
3
+ inputs :
4
+ toolchain :
5
+ description : ' Rust toolchain version'
6
+ required : false
7
+ default : ' nightly'
8
+ wasm-bindgen-version :
9
+ description : ' wasm-bindgen-cli version'
10
+ required : false
11
+ default : ' 0.2.99'
12
+ cache-prefix :
13
+ description : ' Cache prefix key'
14
+ required : false
15
+ default : ' v0'
16
+ runs :
17
+ using : ' composite'
18
+ steps :
19
+ - name : Setup Rust
20
+ uses : dtolnay/rust-toolchain@stable
21
+ with :
22
+ toolchain : ${{ inputs.toolchain }}
23
+ components : rustfmt, rust-src
24
+
25
+ - name : Install wasm32 target and wasm-bindgen-cli
26
+ shell : bash
27
+ run : |
28
+ rustup target add wasm32-unknown-unknown
29
+ cargo install -f wasm-bindgen-cli --version ${{ inputs.wasm-bindgen-version }}
30
+
31
+ - name : Setup Rust Cache
32
+ uses : Swatinem/rust-cache@v2
33
+ with :
34
+ prefix-key : ${{ inputs.cache-prefix }}
Original file line number Diff line number Diff line change
1
+ name : ' Wait for Network Debugger'
2
+ description : ' Wait for the network debugger service to be ready'
3
+ inputs :
4
+ timeout :
5
+ description : ' Timeout in seconds'
6
+ required : false
7
+ default : ' 30'
8
+ runs :
9
+ using : ' composite'
10
+ steps :
11
+ - name : Wait for the debugger
12
+ shell : bash
13
+ run : |
14
+ timeout ${{ inputs.timeout }} bash -c 'until curl -f http://localhost/health; do sleep 1; done' || echo "Debugger may not be ready"
You can’t perform that action at this time.
0 commit comments