remix-project mirror
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
remix-project/apps/remix-ide/ci/downloadsoljson.sh

51 lines
1.7 KiB

#!/usr/bin/env bash
8 months ago
echo "Downloading specified soljson.js version based on defaultVersion in package.json"
set -e
8 months ago
# Check if curl and jq are installed
if ! command -v curl &> /dev/null; then
echo "curl could not be found"
8 months ago
exit 1
fi
if ! command -v jq &> /dev/null; then
echo "jq could not be found"
exit 1
fi
8 months ago
# Read the defaultVersion from package.json
defaultVersion=$(jq -r '.defaultVersion' package.json)
echo "Specified version from package.json: $defaultVersion"
8 months ago
# Download the list.json file containing available versions
2 years ago
curl -s https://binaries.soliditylang.org/wasm/list.json > list.json
8 months ago
# Use jq to extract the path for the specified version from the builds array
path=$(jq -r --arg version "$defaultVersion" '.builds[] | select(.path==$version) | .path' list.json)
if [ -z "$path" ]; then
echo "The specified version $defaultVersion could not be found in the list"
exit 1
fi
echo "Path for the specified version: $path"
fullPath="https://binaries.soliditylang.org/bin/$path"
echo "Download fullPath: $fullPath"
# Ensure the target directory exists
if [ ! -d "./apps/remix-ide/src/assets/js/soljson" ]; then
8 months ago
mkdir -p ./apps/remix-ide/src/assets/js/soljson
fi
8 months ago
# Download the file to ./apps/remix-ide/src/assets/js/soljson.js
echo "Downloading soljson.js from "$fullPath" to ./apps/remix-ide/src/assets/js/soljson.js"
curl -s "$fullPath" > ./apps/remix-ide/src/assets/js/soljson.js
# Copy the downloaded soljson.js to the specific version directory
cp ./apps/remix-ide/src/assets/js/soljson.js "./apps/remix-ide/src/assets/js/soljson/$path"
cp list.json ./apps/remix-ide/src/assets/list.json
8 months ago
# Clean up by removing the list.json
rm list.json