diff --git a/stack_orchestrator/data/compose/docker-compose-fixturenet-urbit.yml b/stack_orchestrator/data/compose/docker-compose-fixturenet-urbit.yml index d2dc422c..34038f54 100644 --- a/stack_orchestrator/data/compose/docker-compose-fixturenet-urbit.yml +++ b/stack_orchestrator/data/compose/docker-compose-fixturenet-urbit.yml @@ -8,6 +8,7 @@ services: environment: CERC_SCRIPT_DEBUG: ${CERC_SCRIPT_DEBUG} CERC_URBIT_APP: ${CERC_URBIT_APP} + CERC_ENABLE_APP_INSTALL: ${CERC_ENABLE_APP_INSTALL:-true} CERC_IPFS_GLOB_HOST_ENDPOINT: ${CERC_IPFS_GLOB_HOST_ENDPOINT:-http://ipfs-glob-host:5001} CERC_IPFS_SERVER_ENDPOINT: ${CERC_IPFS_SERVER_ENDPOINT:-http://ipfs-glob-host:8080} entrypoint: ["bash", "-c", "./run-urbit-ship.sh && ./deploy-app.sh && tail -f /dev/null"] diff --git a/stack_orchestrator/data/compose/docker-compose-proxy-server.yml b/stack_orchestrator/data/compose/docker-compose-proxy-server.yml index 607e8d23..dc672e0a 100644 --- a/stack_orchestrator/data/compose/docker-compose-proxy-server.yml +++ b/stack_orchestrator/data/compose/docker-compose-proxy-server.yml @@ -6,7 +6,7 @@ services: restart: on-failure working_dir: /app/packages/cli environment: - ENABLE_PROXY: ${ENABLE_PROXY:-true} + ENABLE_PROXY: ${CERC_ENABLE_PROXY:-true} PROXY_UPSTREAM: ${CERC_PROXY_UPSTREAM} PROXY_ORIGIN_HEADER: ${CERC_PROXY_ORIGIN_HEADER} command: ["sh", "-c", "./run.sh"] diff --git a/stack_orchestrator/data/config/urbit/deploy-app.sh b/stack_orchestrator/data/config/urbit/deploy-app.sh index 0f15138c..bde6cd6f 100755 --- a/stack_orchestrator/data/config/urbit/deploy-app.sh +++ b/stack_orchestrator/data/config/urbit/deploy-app.sh @@ -66,15 +66,25 @@ dojo "-landscape!make-glob %${CERC_URBIT_APP} /build" glob_file=$(ls -1 -c zod/.urb/put | head -1) echo "Created glob file: ${glob_file}" +# Upload the glob file to IPFS +echo "Uploading glob file to ${ipfs_host_endpoint}" upload_response=$(curl -X POST -F file=@./zod/.urb/put/${glob_file} ${ipfs_host_endpoint}/api/v0/add) glob_cid=$(echo "$upload_response" | grep -o '"Hash":"[^"]*' | sed 's/"Hash":"//') +glob_url="${ipfs_server_endpoint}/ipfs/${glob_cid}?filename=${glob_file}" +glob_hash=$(echo "$glob_file" | sed "s/glob-\([a-z0-9\.]*\).glob/\1/") + echo "Glob file uploaded to IFPS:" echo "{ cid: ${glob_cid}, filename: ${glob_file} }" +echo "{ url: ${glob_url}, hash: ${glob_hash} }" + +# Exit if the installation not required +if [ "$CERC_ENABLE_APP_INSTALL" = "false" ]; then + echo "CERC_ENABLE_APP_INSTALL set to false, skipping app installation" + exit 0 +fi # Curl and wait for the glob to be hosted -glob_url="${ipfs_server_endpoint}/ipfs/${glob_cid}?filename=${glob_file}" - echo "Checking if glob file hosted at ${glob_url}" while true; do response=$(curl -sL -w "%{http_code}" -o /dev/null "$glob_url") @@ -88,15 +98,13 @@ while true; do fi done -glob_hash=$(echo "$glob_file" | sed "s/glob-\([a-z0-9\.]*\).glob/\1/") - # Replace the docket file for app # Substitue the glob URL and hash cp ${app_docket_file} ${app_desk_dir}/ sed -i "s|REPLACE_WITH_GLOB_URL|${glob_url}|g; s|REPLACE_WITH_GLOB_HASH|${glob_hash}|g" ${app_desk_dir}/desk.docket-0 # Commit changes and install the app -hood "commit %uniswap" -hood "install our %uniswap" +hood "commit %${CERC_URBIT_APP}" +hood "install our %${CERC_URBIT_APP}" -echo "Uniswap app installed" +echo "${CERC_URBIT_APP} app installed" diff --git a/stack_orchestrator/data/stacks/proxy-server/README.md b/stack_orchestrator/data/stacks/proxy-server/README.md index f0ccdb0f..294b01a9 100644 --- a/stack_orchestrator/data/stacks/proxy-server/README.md +++ b/stack_orchestrator/data/stacks/proxy-server/README.md @@ -47,7 +47,7 @@ laconic-so --stack proxy-server build-containers ```bash # Whether to run the proxy server (Optional) (Default: true) - ENABLE_PROXY= + CERC_ENABLE_PROXY= # Upstream endpoint # (Eg. https://api.example.org) diff --git a/stack_orchestrator/data/stacks/uniswap-urbit-app/README.md b/stack_orchestrator/data/stacks/uniswap-urbit-app/README.md index 8c57a2df..c9727ef3 100644 --- a/stack_orchestrator/data/stacks/uniswap-urbit-app/README.md +++ b/stack_orchestrator/data/stacks/uniswap-urbit-app/README.md @@ -82,9 +82,13 @@ Inside the deployment directory, open the file `config.env` and set the followin # Optional + # Whether to enable app installation on Urbit + # (just builds and uploads the glob file if disabled) (Default: true) + CERC_ENABLE_APP_INSTALL= + # Whether to run the proxy GQL server - # (Disable only if proxy not required to be run) (Default: true) - ENABLE_PROXY= + # (disable only if proxy not required to be run) (Default: true) + CERC_ENABLE_PROXY= # Proxy server configuration # Used only if proxy is enabled