Skip to content

Commit 6f0509b

Browse files
committed
Upgrade to Arcium 0.6.2
Add a workaround for setup-arcium not working on 0.6.2 Remove arcup use 0.6.2 call - binary already installed Fix Node engine warning - use Node 23.6.0 for @noble/hashes 2.0.1 Use Node 22.12.0 LTS instead of unstable 23.x
1 parent a9a061b commit 6f0509b

File tree

24 files changed

+17254
-1306
lines changed

24 files changed

+17254
-1306
lines changed

.github/workflows/test.yml

Lines changed: 25 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,33 @@ jobs:
1212
runs-on: ubuntu-latest
1313
steps:
1414
- uses: actions/checkout@v3
15-
# Install system dependencies for hidapi (needed on GitHub Actions environment)
16-
- name: Install libudev
17-
run: sudo apt-get update && sudo apt-get install -y libudev-dev
18-
# Note this doesn't follow Arcium versions
19-
- uses: arcium-hq/setup-arcium@v0.3.0
15+
16+
# Use setup-arcium@v0.5.4 to install Rust, Solana, Anchor, and arcup
17+
# Then override with Arcium 0.6.2 binary since arcup 0.6.2 has bootstrap bug
18+
- uses: arcium-hq/setup-arcium@v0.5.4
2019
with:
21-
runner-arch-os: x86_64_linux
22-
# TODO: fix for outdated default Solana CLI
23-
# Remove once https://github.com/arcium-hq/setup-arcium/pull/2 is merged
24-
solana-cli-version: 2.3.11
25-
arcium-version: 0.4.0
26-
anchor-version: 0.32.1
20+
runner-arch-os: "x86_64_linux"
21+
arcium-version: "0.5.4"
22+
solana-cli-version: "2.3.11"
23+
anchor-version: "0.32.1"
24+
node-version: "22.12.0"
25+
26+
# Override with Arcium 0.6.2 binary
27+
# arcup 0.6.2 has bootstrap bug (panics with "index not found" at arcup/src/config.rs:29:51)
28+
# so we download the 0.6.2 binary directly instead of using arcup
29+
- name: Override with Arcium CLI 0.6.2
30+
run: |
31+
curl "https://bin.arcium.com/download/arcium_x86_64_linux_0.6.2" -o ~/.cargo/bin/arcium
32+
chmod +x ~/.cargo/bin/arcium
33+
arcium --version
2734
28-
- run: export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH" && solana --version
35+
# Verify Docker is running and can pull images
36+
# Arcium requires Docker to run MPC nodes during tests
37+
- name: Verify Docker
38+
run: |
39+
docker info
40+
docker ps
2941
3042
- run: npm i
3143

32-
- run: export PATH="$HOME/.local/share/solana/install/active_release/bin:$PATH" && bash run-tests.bash
44+
- run: npm test

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,4 @@ encrypted-ixs/arcis_temp_target
99
build
1010
encrypted-ixs/src/main.rs
1111
artifacts/
12+
dist/election-client

Anchor.toml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ resolution = true
88
skip-lint = false
99

1010
[programs.localnet]
11-
election = "26z6tf8ndLVRfQJJBvYsmtMyrLVWaBoUN6RgCXrtsZjD"
11+
election = "3XogG8seGS5mUe8SwJk37xb3g3d55hpFf4df43pgn3pJ"
1212

1313
[registry]
1414
url = "https://api.apr.dev"
@@ -19,3 +19,10 @@ wallet = "~/.config/solana/id.json"
1919

2020
[scripts]
2121
test = "npx tsx tests/election.ts"
22+
23+
[test]
24+
# GitHub Actions environment can be very slow - 300s (5 minutes) allows Solana localnet
25+
# and Arcium MPC nodes enough time to initialize. Local development typically uses ~90s.
26+
startup_wait = 300000
27+
shutdown_wait = 2000
28+
upgradeable = false

0 commit comments

Comments
 (0)