forked from cerc-io/stack-orchestrator
		
	Setup mobymask app in the stack
This commit is contained in:
		
							parent
							
								
									2659b87390
								
							
						
					
					
						commit
						7c29b8c36c
					
				| @ -5,27 +5,15 @@ services: | ||||
|   mobymask-v3-app: | ||||
|     restart: unless-stopped | ||||
|     image: cerc/mobymask-ui:local | ||||
|     env_file: | ||||
|       - ../config/watcher-mobymask-v3/mobymask-params.env | ||||
|     environment: | ||||
|       CERC_SCRIPT_DEBUG: ${CERC_SCRIPT_DEBUG} | ||||
|       CERC_CHAIN_ID: ${CERC_CHAIN_ID} | ||||
|       CERC_DEPLOYED_CONTRACT: ${CERC_DEPLOYED_CONTRACT} | ||||
|       CERC_RELAY_NODES: ${CERC_RELAY_NODES} | ||||
|       CERC_DENY_MULTIADDRS: ${CERC_DENY_MULTIADDRS} | ||||
|       CERC_PUBSUB: ${CERC_PUBSUB} | ||||
|       CERC_GOSSIPSUB_DIRECT_PEERS: ${CERC_GOSSIPSUB_DIRECT_PEERS} | ||||
|       CERC_NA_ADDRESS: ${CERC_NA_ADDRESS} | ||||
|       CERC_VPA_ADDRESS: ${CERC_VPA_ADDRESS} | ||||
|       CERC_CA_ADDRESS: ${CERC_CA_ADDRESS} | ||||
|       CERC_APP_WATCHER_URL: ${CERC_APP_WATCHER_URL} | ||||
|       CERC_PAYMENT_NITRO_ADDRESS: ${CERC_PAYMENT_NITRO_ADDRESS:-0xBBB676f9cFF8D242e9eaC39D063848807d3D1D94} | ||||
|       CERC_SNAP_URL: ${CERC_SNAP_URL} | ||||
|     working_dir: /app | ||||
|     command: ["bash", "/scripts/mobymask-app-start.sh"] | ||||
|     volumes: | ||||
|       - ../config/watcher-mobymask-v3/mobymask-app-start.sh:/scripts/mobymask-app-start.sh | ||||
|       - peers_ids:/peers | ||||
|       - ../config/watcher-mobymask-v3-demo/mobymask-app-start.sh:/scripts/mobymask-app-start.sh | ||||
|       - ../config/watcher-mobymask-v3-demo/local/keys:/server/keys | ||||
|       - mobymask_deployment:/server | ||||
|       - nitro_deployment:/nitro | ||||
|     ports: | ||||
| @ -40,6 +28,5 @@ services: | ||||
|       - "host.docker.internal:host-gateway" | ||||
| 
 | ||||
| volumes: | ||||
|   peers_ids: | ||||
|   mobymask_deployment: | ||||
|   nitro_deployment: | ||||
|  | ||||
| @ -29,7 +29,7 @@ services: | ||||
|     working_dir: /app/packages/server | ||||
|     environment: | ||||
|       CERC_SCRIPT_DEBUG: ${CERC_SCRIPT_DEBUG} | ||||
|       # ENV: "PROD" | ||||
|       # ENV: "PROD" # Check if required | ||||
|       CERC_ETH_RPC_ENDPOINT: ${CERC_ETH_RPC_ENDPOINT} | ||||
|       CERC_PRIVATE_KEY_DEPLOYER: ${CERC_PRIVATE_KEY_DEPLOYER} | ||||
|       CERC_MOBYMASK_APP_BASE_URI: ${CERC_MOBYMASK_APP_BASE_URI} | ||||
|  | ||||
| @ -1,7 +1,11 @@ | ||||
| # Watchers | ||||
| CERC_ETH_RPC_ENDPOINT="http://op-geth:8545" | ||||
| CERC_PRIVATE_KEY_DEPLOYER="0xbe4aa664815ea3bc3d63118649a733f6c96b243744310806ecb6d96359ab62cf" # L1 faucet account #4 | ||||
| CERC_PRIVATE_KEY_DEPLOYER="0xbe4aa664815ea3bc3d63118649a733f6c96b243744310806ecb6d96359ab62cf" # L1 faucet account #4, funded on L2 | ||||
| CERC_MOBYMASK_APP_BASE_URI="http://127.0.0.1:3004/#" | ||||
| 
 | ||||
| CERC_ETH_RPC_QUERY_ENDPOINT="http://op-geth:8545" | ||||
| CERC_ETH_RPC_MUTATION_ENDPOINT="http://op-geth:8545" | ||||
| CERC_NITRO_CHAIN_URL="http://op-geth:8546" | ||||
| 
 | ||||
| # App | ||||
| CERC_APP_WATCHER_URL="http://localhost:3001" | ||||
| CERC_SNAP_URL=http://localhost:8080 | ||||
|  | ||||
| @ -11,6 +11,7 @@ | ||||
|   }, | ||||
|   "peer": { | ||||
|     "privateKey": "ac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80", | ||||
|     "nitroAddress": "0xAAA6628Ec44A8a742987EF3A114dDFE2D4F7aDCE", | ||||
|     "nitroPrivateKey": "2d999770f7b5d49b694080f987b82bbc9fc9ac2b4dcc10b0f8aba7d700f69c6d" | ||||
|   }, | ||||
|   "consensus": { | ||||
|  | ||||
| @ -11,6 +11,7 @@ | ||||
|   }, | ||||
|   "peer": { | ||||
|     "privateKey": "59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d", | ||||
|     "nitroAddress": "0xBBB676f9cFF8D242e9eaC39D063848807d3D1D94", | ||||
|     "nitroPrivateKey": "0279651921cd800ac560c21ceea27aab0107b67daf436cdd25ce84cad30159b4" | ||||
|   }, | ||||
|   "consensus": { | ||||
|  | ||||
| @ -11,6 +11,7 @@ | ||||
|   }, | ||||
|   "peer": { | ||||
|     "privateKey": "47e179ec197488593b187f80a00eb0da91f1b9d0b13f8733639f19c30a34926a", | ||||
|     "nitroAddress": "0x67D5b55604d1aF90074FcB69b8C51838FFF84f8d", | ||||
|     "nitroPrivateKey": "58368d20ff12f17669c06158c21d885897aa56f9be430edc789614bf9851d53f" | ||||
|   }, | ||||
|   "consensus": { | ||||
|  | ||||
| @ -0,0 +1,68 @@ | ||||
| #!/bin/bash | ||||
| 
 | ||||
| set -e | ||||
| if [ -n "$CERC_SCRIPT_DEBUG" ]; then | ||||
|   set -x | ||||
| fi | ||||
| 
 | ||||
| watcher_keys_dir="/server/keys" | ||||
| 
 | ||||
| # Configure relay nodes to connect to | ||||
| # Note: Assuming host ports for watchers (1-3) relay nodes | ||||
| RELAY_NODES="[\"/ip4/127.0.0.1/tcp/9090/ws/p2p/$(jq -r '.relayPeerId.id' ${watcher_keys_dir}/watcher-1.json)\", \"/ip4/127.0.0.1/tcp/9091/ws/p2p/$(jq -r '.relayPeerId.id' ${watcher_keys_dir}/watcher-2.json)\", \"/ip4/127.0.0.1/tcp/9092/ws/p2p/$(jq -r '.relayPeerId.id' ${watcher_keys_dir}/watcher-3.json)\"]" | ||||
| 
 | ||||
| # Configure watcher (1) Nitro account to make payments to | ||||
| PAYMENT_NITRO_ADDRESS=$(jq -r '.peer.nitroAddress' ${watcher_keys_dir}/watcher-1.json) | ||||
| 
 | ||||
| echo "Using RELAY_NODES $RELAY_NODES" | ||||
| echo "Using PAYMENT_NITRO_ADDRESS $PAYMENT_NITRO_ADDRESS" | ||||
| 
 | ||||
| # Use config from mounted volume | ||||
| echo "Taking config for deployed contracts from mounted volume" | ||||
| while [ ! -f /server/config.json ]; do | ||||
|   echo "Config not found, retrying in 5 seconds..." | ||||
|   sleep 5 | ||||
| done | ||||
| 
 | ||||
| # Get deployed contract address and chain id | ||||
| DEPLOYED_CONTRACT=$(jq -r '.address' /server/config.json | tr -d '"') | ||||
| CHAIN_ID=$(jq -r '.chainId' /server/config.json) | ||||
| 
 | ||||
| echo "Using DEPLOYED_CONTRACT $DEPLOYED_CONTRACT" | ||||
| echo "Using CHAIN_ID $CHAIN_ID" | ||||
| 
 | ||||
| nitro_addresses_file="/nitro/nitro-addresses.json" | ||||
| nitro_addresses_destination_file="/app/src/utils/nitro-addresses.json" | ||||
| if [ -f ${nitro_addresses_file} ]; then | ||||
|   echo "Using Nitro addresses from ${nitro_addresses_file}:" | ||||
|   cat "$nitro_addresses_file" | ||||
|   cat "$nitro_addresses_file" > "$nitro_addresses_destination_file" | ||||
| else | ||||
|   echo "Nitro addresses not available" | ||||
|   exit 1 | ||||
| fi | ||||
| 
 | ||||
| # Export config values in a json file | ||||
| app_config_file="/app/src/utils/config.json" | ||||
| app_config_json=$(jq -n \ | ||||
|   --arg name "MobyMask" \ | ||||
|   --argjson enableDebugInfo true \ | ||||
|   --arg address "$DEPLOYED_CONTRACT" \ | ||||
|   --argjson chainId "$CHAIN_ID" \ | ||||
|   --argjson relayNodes "$RELAY_NODES" \ | ||||
|   --argjson denyMultiaddrs "[]" \ | ||||
|   --arg pubsub "" \ | ||||
|   --argjson directPeers "[]" \ | ||||
|   '.name = $name | .address = $address | .chainId = $chainId | .relayNodes = $relayNodes | .peer.enableDebugInfo = $enableDebugInfo | .peer.denyMultiaddrs = $denyMultiaddrs | .peer.pubsub = $pubsub | .peer.directPeers = $directPeers') | ||||
| echo "$app_config_json" > "${app_config_file}" | ||||
| 
 | ||||
| echo "Using CERC_APP_WATCHER_URL $CERC_APP_WATCHER_URL" | ||||
| echo "Using CERC_SNAP_URL $CERC_SNAP_URL" | ||||
| 
 | ||||
| REACT_APP_DEBUG_PEER=true \ | ||||
| REACT_APP_WATCHER_URI="$CERC_APP_WATCHER_URL/graphql" \ | ||||
| REACT_APP_PAY_TO_NITRO_ADDRESS="$PAYMENT_NITRO_ADDRESS" \ | ||||
| REACT_APP_SNAP_ORIGIN="local:$CERC_SNAP_URL" \ | ||||
| yarn build | ||||
| 
 | ||||
| http-server -p 80 /app/build | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user