Skip to content

Commit 3985ecd

Browse files
committed
feat(frontend): When launching the frontend image with 'webnode' as env, download the circuit blob files
1 parent d4382fa commit 3985ecd

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed

frontend/docker/startup.sh

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,64 @@
11
#!/bin/bash
22

3+
download_circuit_files() {
4+
CIRCUITS_BASE_URL="https://github.com/openmina/circuit-blobs/releases/download"
5+
CIRCUITS_VERSION="3.0.1devnet"
6+
7+
DEVNET_CIRCUIT_FILES=(
8+
"step-step-proving-key-blockchain-snark-step-0-55f640777b6486a6fd3fdbc3fcffcc60_gates.json"
9+
"step-step-proving-key-blockchain-snark-step-0-55f640777b6486a6fd3fdbc3fcffcc60_internal_vars.bin"
10+
"step-step-proving-key-blockchain-snark-step-0-55f640777b6486a6fd3fdbc3fcffcc60_rows_rev.bin"
11+
"step-step-proving-key-transaction-snark-merge-1-ba1d52dfdc2dd4d2e61f6c66ff2a5b2f_gates.json"
12+
"step-step-proving-key-transaction-snark-merge-1-ba1d52dfdc2dd4d2e61f6c66ff2a5b2f_internal_vars.bin"
13+
"step-step-proving-key-transaction-snark-merge-1-ba1d52dfdc2dd4d2e61f6c66ff2a5b2f_rows_rev.bin"
14+
"step-step-proving-key-transaction-snark-opt_signed-3-9eefed16953d2bfa78a257adece02d47_gates.json"
15+
"step-step-proving-key-transaction-snark-opt_signed-3-9eefed16953d2bfa78a257adece02d47_internal_vars.bin"
16+
"step-step-proving-key-transaction-snark-opt_signed-3-9eefed16953d2bfa78a257adece02d47_rows_rev.bin"
17+
"step-step-proving-key-transaction-snark-opt_signed-opt_signed-2-48925e6a97197028e1a7c1ecec09021d_gates.json"
18+
"step-step-proving-key-transaction-snark-opt_signed-opt_signed-2-48925e6a97197028e1a7c1ecec09021d_internal_vars.bin"
19+
"step-step-proving-key-transaction-snark-opt_signed-opt_signed-2-48925e6a97197028e1a7c1ecec09021d_rows_rev.bin"
20+
"step-step-proving-key-transaction-snark-proved-4-0cafcbc6dffccddbc82f8c2519c16341_gates.json"
21+
"step-step-proving-key-transaction-snark-proved-4-0cafcbc6dffccddbc82f8c2519c16341_internal_vars.bin"
22+
"step-step-proving-key-transaction-snark-proved-4-0cafcbc6dffccddbc82f8c2519c16341_rows_rev.bin"
23+
"step-step-proving-key-transaction-snark-transaction-0-c33ec5211c07928c87e850a63c6a2079_gates.json"
24+
"step-step-proving-key-transaction-snark-transaction-0-c33ec5211c07928c87e850a63c6a2079_internal_vars.bin"
25+
"step-step-proving-key-transaction-snark-transaction-0-c33ec5211c07928c87e850a63c6a2079_rows_rev.bin"
26+
"wrap-wrap-proving-key-blockchain-snark-bbecaf158ca543ec8ac9e7144400e669_gates.json"
27+
"wrap-wrap-proving-key-blockchain-snark-bbecaf158ca543ec8ac9e7144400e669_internal_vars.bin"
28+
"wrap-wrap-proving-key-blockchain-snark-bbecaf158ca543ec8ac9e7144400e669_rows_rev.bin"
29+
"wrap-wrap-proving-key-transaction-snark-b9a01295c8cc9bda6d12142a581cd305_gates.json"
30+
"wrap-wrap-proving-key-transaction-snark-b9a01295c8cc9bda6d12142a581cd305_internal_vars.bin"
31+
"wrap-wrap-proving-key-transaction-snark-b9a01295c8cc9bda6d12142a581cd305_rows_rev.bin"
32+
)
33+
DOWNLOAD_DIR="/usr/local/apache2/htdocs/assets/webnode/circuit-blobs/$CIRCUITS_VERSION"
34+
35+
mkdir -p "$DOWNLOAD_DIR"
36+
37+
for FILE in "${DEVNET_CIRCUIT_FILES[@]}"; do
38+
if [[ -f "$DOWNLOAD_DIR/$FILE" ]]; then
39+
echo "$FILE already exists in $DOWNLOAD_DIR, skipping download."
40+
else
41+
echo "Downloading $FILE to $DOWNLOAD_DIR..."
42+
curl -L --retry 3 --retry-delay 5 -o "$DOWNLOAD_DIR/$FILE" "$CIRCUITS_BASE_URL/$CIRCUITS_VERSION/$FILE"
43+
if [[ $? -ne 0 ]]; then
44+
echo "Failed to download $FILE after 3 attempts, exiting."
45+
exit 1
46+
else
47+
echo "$FILE downloaded successfully to $DOWNLOAD_DIR"
48+
fi
49+
fi
50+
done
51+
}
52+
353
if [ -n "$OPENMINA_FRONTEND_ENVIRONMENT" ]; then
454
echo "Using environment: $OPENMINA_FRONTEND_ENVIRONMENT"
555
cp -f /usr/local/apache2/htdocs/assets/environments/"$OPENMINA_FRONTEND_ENVIRONMENT".js \
656
/usr/local/apache2/htdocs/assets/environments/env.js
57+
58+
if [ "$OPENMINA_FRONTEND_ENVIRONMENT" = "webnode" ]; then
59+
echo "Environment is 'webnode'. Downloading circuits..."
60+
download_circuit_files
61+
fi
762
else
863
echo "No environment specified. Using default."
964
fi

0 commit comments

Comments
 (0)