forked from cerc-io/stack-orchestrator
Refactor to nitro-auth
This commit is contained in:
parent
7cce68959f
commit
781dd263ab
@ -1,113 +0,0 @@
|
|||||||
version: '3.7'
|
|
||||||
|
|
||||||
services:
|
|
||||||
go-nitro-alice:
|
|
||||||
image: cerc/go-nitro:local
|
|
||||||
hostname: go-nitro-alice
|
|
||||||
restart: on-failure
|
|
||||||
depends_on:
|
|
||||||
- go-nitro-bootnode
|
|
||||||
environment:
|
|
||||||
CERC_NITRO_CHAIN_PK: ${CERC_NITRO_CHAIN_PK_ALICE:-888814df89c4358d7ddb3fa4b0213e7331239a80e1f013eaa7b2deca2a41a218}
|
|
||||||
CERC_NITRO_CHAIN_URL: ${CERC_NITRO_CHAIN_URL:-ws://fixturenet-eth-geth-1:8546}
|
|
||||||
CERC_NA_ADDRESS: ${CERC_NA_ADDRESS}
|
|
||||||
CERC_VPA_ADDRESS: ${CERC_VPA_ADDRESS}
|
|
||||||
CERC_CA_ADDRESS: ${CERC_CA_ADDRESS}
|
|
||||||
env_file:
|
|
||||||
- ../config/go-nitro-auth/alice.env
|
|
||||||
entrypoint: ["bash", "-c", "/app/run-nitro-node.sh"]
|
|
||||||
volumes:
|
|
||||||
- nitro_deployment:/app/deployment
|
|
||||||
- go_nitro_data_alice:/app/data
|
|
||||||
- ../config/go-nitro/run-nitro-node.sh:/app/run-nitro-node.sh
|
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", "nc", "-vz", "localhost", "4006"]
|
|
||||||
interval: 5s
|
|
||||||
timeout: 5s
|
|
||||||
retries: 100
|
|
||||||
start_period: 100s
|
|
||||||
ports:
|
|
||||||
- "3006"
|
|
||||||
- "4006"
|
|
||||||
- "5006"
|
|
||||||
- "4106"
|
|
||||||
- "4206"
|
|
||||||
- "4216"
|
|
||||||
|
|
||||||
go-nitro-bob:
|
|
||||||
image: cerc/go-nitro:local
|
|
||||||
hostname: go-nitro-bob
|
|
||||||
restart: on-failure
|
|
||||||
depends_on:
|
|
||||||
- go-nitro-bootnode
|
|
||||||
environment:
|
|
||||||
CERC_NITRO_CHAIN_PK: ${CERC_NITRO_CHAIN_PK_BOB:-570b909da9669b2f35a0b1ac70b8358516d55ae1b5b3710e95e9a94395090597}
|
|
||||||
CERC_NITRO_CHAIN_URL: ${CERC_NITRO_CHAIN_URL:-ws://fixturenet-eth-geth-1:8546}
|
|
||||||
CERC_NA_ADDRESS: ${CERC_NA_ADDRESS}
|
|
||||||
CERC_VPA_ADDRESS: ${CERC_VPA_ADDRESS}
|
|
||||||
CERC_CA_ADDRESS: ${CERC_CA_ADDRESS}
|
|
||||||
env_file:
|
|
||||||
- ../config/go-nitro-auth/bob.env
|
|
||||||
entrypoint: ["bash", "-c", "/app/run-nitro-node.sh"]
|
|
||||||
volumes:
|
|
||||||
- nitro_deployment:/app/deployment
|
|
||||||
- go_nitro_data_bob:/app/data
|
|
||||||
- ../config/go-nitro/run-nitro-node.sh:/app/run-nitro-node.sh
|
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", "nc", "-vz", "localhost", "4007"]
|
|
||||||
interval: 5s
|
|
||||||
timeout: 5s
|
|
||||||
retries: 100
|
|
||||||
start_period: 100s
|
|
||||||
ports:
|
|
||||||
- "3007"
|
|
||||||
- "4007"
|
|
||||||
- "5007"
|
|
||||||
- "4107"
|
|
||||||
- "4207"
|
|
||||||
- "4217"
|
|
||||||
|
|
||||||
go-nitro-bootnode:
|
|
||||||
image: cerc/go-nitro:local
|
|
||||||
hostname: go-nitro-bootnode
|
|
||||||
restart: on-failure
|
|
||||||
environment:
|
|
||||||
CERC_NITRO_CHAIN_URL: ${CERC_NITRO_CHAIN_URL:-ws://fixturenet-eth-geth-1:8546}
|
|
||||||
CERC_NA_ADDRESS: ${CERC_NA_ADDRESS}
|
|
||||||
CERC_VPA_ADDRESS: ${CERC_VPA_ADDRESS}
|
|
||||||
CERC_CA_ADDRESS: ${CERC_CA_ADDRESS}
|
|
||||||
CERC_NITRO_RELAY_ON: true
|
|
||||||
env_file:
|
|
||||||
- ../config/go-nitro-auth/bootnode.env
|
|
||||||
entrypoint: [ "bash", "-c", "/app/run-nitro-node.sh" ]
|
|
||||||
volumes:
|
|
||||||
- nitro_deployment:/app/deployment
|
|
||||||
- go_nitro_data_bootnode:/app/data
|
|
||||||
- ../config/go-nitro/run-nitro-node.sh:/app/run-nitro-node.sh
|
|
||||||
healthcheck:
|
|
||||||
test: [ "CMD", "nc", "-vz", "localhost", "4008" ]
|
|
||||||
interval: 5s
|
|
||||||
timeout: 5s
|
|
||||||
retries: 100
|
|
||||||
start_period: 100s
|
|
||||||
ports:
|
|
||||||
- "9090"
|
|
||||||
|
|
||||||
nitro-caddy:
|
|
||||||
image: caddy:2-alpine
|
|
||||||
restart: always
|
|
||||||
environment:
|
|
||||||
CERC_ETH_RPC_ENDPOINT: ${CERC_ETH_RPC_ENDPOINT:-http://fixturenet-eth-geth-1:8545}
|
|
||||||
volumes:
|
|
||||||
- ../config/go-nitro-auth/caddy/Caddyfile:/etc/caddy/Caddyfile
|
|
||||||
ports:
|
|
||||||
- "5678"
|
|
||||||
depends_on:
|
|
||||||
- go-nitro-alice
|
|
||||||
- go-nitro-bob
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
go_nitro_data_alice:
|
|
||||||
go_nitro_data_bob:
|
|
||||||
go_nitro_data_bootnode:
|
|
||||||
nitro_deployment:
|
|
19
stack_orchestrator/data/config/nitro-auth/charlie.env
Normal file
19
stack_orchestrator/data/config/nitro-auth/charlie.env
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
# SET ME! Your on-chain private key.
|
||||||
|
#CERC_NITRO_CHAIN_PK=<MY_PK_GOES_HERE>
|
||||||
|
|
||||||
|
# Default is CERC_NITRO_CHAIN_PK.
|
||||||
|
#CERC_NITRO_PK=<MY_PK_GOES_HERE>
|
||||||
|
|
||||||
|
# SET ME! The WebSocket to connect to.
|
||||||
|
#CERC_NITRO_CHAIN_URL=wss://linea-sepolia.infura.io/ws/v3/<MY_API_KEY_GOES_HERE>
|
||||||
|
|
||||||
|
CERC_NITRO_AUTH_ON=false
|
||||||
|
CERC_NITRO_AUTH_RPC_PORT=4009
|
||||||
|
CERC_NITRO_AUTH_UI_PORT=4209
|
||||||
|
CERC_NITRO_BOOT_PEERS="/dns4/go-nitro-bootnode/tcp/3008/p2p/16Uiu2HAmFYz5YPf3GtkfQsAwYJfDsKSm34U9qAiTwxW7RJUVGMRK"
|
||||||
|
CERC_NITRO_DURABLE_STORE_FOLDER=/app/data/nitro-store
|
||||||
|
CERC_NITRO_MSG_PORT=3009
|
||||||
|
CERC_NITRO_RPC_PORT=4009
|
||||||
|
CERC_NITRO_UI_PORT=4109
|
||||||
|
CERC_NITRO_USE_DURABLE_STORE=true
|
||||||
|
CERC_NITRO_WS_MSG_PORT=5009
|
45
stack_orchestrator/data/config/ts-nitro/run.sh
Executable file
45
stack_orchestrator/data/config/ts-nitro/run.sh
Executable file
@ -0,0 +1,45 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ -n "$CERC_SCRIPT_DEBUG" ]; then
|
||||||
|
set -x
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$CERC_NITRO_CHAIN_PK" ] || [ -z "$CERC_NITRO_CHAIN_URL" ]; then
|
||||||
|
echo "You most set both CERC_NITRO_CHAIN_PK and CERC_NITRO_CHAIN_URL." 1>&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
nitro_addresses_file="/app/deployment/nitro-addresses.json"
|
||||||
|
|
||||||
|
# Check if CERC_NA_ADDRESS environment variable is set
|
||||||
|
if [ -n "$CERC_NA_ADDRESS" ]; then
|
||||||
|
echo "CERC_NA_ADDRESS is set to '$CERC_NA_ADDRESS'"
|
||||||
|
echo "CERC_VPA_ADDRESS is set to '$CERC_VPA_ADDRESS'"
|
||||||
|
echo "CERC_CA_ADDRESS is set to '$CERC_CA_ADDRESS'"
|
||||||
|
echo "Using the above Nitro addresses"
|
||||||
|
|
||||||
|
NA_ADDRESS=${CERC_NA_ADDRESS}
|
||||||
|
VPA_ADDRESS=${CERC_VPA_ADDRESS}
|
||||||
|
CA_ADDRESS=${CERC_CA_ADDRESS}
|
||||||
|
elif [ -f ${nitro_addresses_file} ]; then
|
||||||
|
echo "Reading Nitro addresses from ${nitro_addresses_file}"
|
||||||
|
|
||||||
|
NA_ADDRESS=$(jq -r '.nitroAdjudicatorAddress' ${nitro_addresses_file})
|
||||||
|
VPA_ADDRESS=$(jq -r '.virtualPaymentAppAddress' ${nitro_addresses_file})
|
||||||
|
CA_ADDRESS=$(jq -r '.consensusAppAddress' ${nitro_addresses_file})
|
||||||
|
else
|
||||||
|
echo "File ${nitro_addresses_file} not found"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd /app/packages/example-web-app
|
||||||
|
cat > .env <<EOF
|
||||||
|
REACT_APP_RPC_URL=${CERC_RUNTIME_ENV_RPC_URL:-$CERC_NITRO_CHAIN_URL}
|
||||||
|
REACT_APP_TARGET_URL=${CERC_RUNTIME_ENV_TARGET_URL:-$CERC_NITRO_TARGET_URL}
|
||||||
|
REACT_APP_NITRO_PK=${CERC_NITRO_PK:-$CERC_NITRO_CHAIN_PK}
|
||||||
|
REACT_APP_NA_ADDRESS=${NA_ADDRESS}
|
||||||
|
REACT_APP_VPA_ADDRESS=${VPA_ADDRESS}
|
||||||
|
REACT_APP_CA_ADDRESS=${CA_ADDRESS}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
yarn start
|
@ -6,7 +6,7 @@ fi
|
|||||||
|
|
||||||
ETHERBASE=`cat /opt/testnet/build/el/accounts.csv | head -1 | cut -d',' -f2`
|
ETHERBASE=`cat /opt/testnet/build/el/accounts.csv | head -1 | cut -d',' -f2`
|
||||||
NETWORK_ID=`cat /opt/testnet/el/el-config.yaml | grep 'chain_id' | awk '{ print $2 }'`
|
NETWORK_ID=`cat /opt/testnet/el/el-config.yaml | grep 'chain_id' | awk '{ print $2 }'`
|
||||||
NETRESTRICT=`ip addr | grep inet | grep -v '127.0' | awk '{print $2}'`
|
NETRESTRICT=`ip addr | grep 'inet ' | grep -v '127.0' | head -1 | awk '{print $2}'`
|
||||||
CERC_ETH_DATADIR="${CERC_ETH_DATADIR:-$HOME/ethdata}"
|
CERC_ETH_DATADIR="${CERC_ETH_DATADIR:-$HOME/ethdata}"
|
||||||
CERC_PLUGINS_DIR="${CERC_PLUGINS_DIR:-/usr/local/lib/plugeth}"
|
CERC_PLUGINS_DIR="${CERC_PLUGINS_DIR:-/usr/local/lib/plugeth}"
|
||||||
|
|
||||||
|
@ -0,0 +1,12 @@
|
|||||||
|
FROM node:18.17.1-alpine3.18
|
||||||
|
|
||||||
|
RUN apk --update --no-cache add python3 alpine-sdk bash curl jq
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
COPY . .
|
||||||
|
|
||||||
|
RUN echo "Installing dependencies" && \
|
||||||
|
yarn && yarn build:node && yarn build:browser
|
||||||
|
|
||||||
|
WORKDIR /app
|
9
stack_orchestrator/data/container-build/cerc-ts-nitro/build.sh
Executable file
9
stack_orchestrator/data/container-build/cerc-ts-nitro/build.sh
Executable file
@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# Build cerc/ts-nitro
|
||||||
|
|
||||||
|
source ${CERC_CONTAINER_BASE_DIR}/build-base.sh
|
||||||
|
|
||||||
|
# See: https://stackoverflow.com/a/246128/1701505
|
||||||
|
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
||||||
|
|
||||||
|
docker build -t cerc/ts-nitro:local -f ${SCRIPT_DIR}/Dockerfile ${build_command_args} ${CERC_REPO_BASE_DIR}/ts-nitro
|
@ -1,16 +1,17 @@
|
|||||||
version: "1.0"
|
version: "1.0"
|
||||||
name: go-nitro-auth
|
name: nitro-auth
|
||||||
description: "Stack to demonstrate payments between various services"
|
description: "Stack to demonstrate payments between various services"
|
||||||
repos:
|
repos:
|
||||||
# for nitro-contracts
|
# for nitro-contracts and ts-nitro example app
|
||||||
- github.com/cerc-io/ts-nitro@v0.1.15
|
- github.com/cerc-io/ts-nitro@telackey/demo-auth
|
||||||
# for go-nitro and nitro-rpc-client
|
# for go-nitro, nitro-rpc-client, and go-nitro-auth example app
|
||||||
- github.com/cerc-io/go-nitro@telackey/update
|
- github.com/cerc-io/go-nitro@telackey/update
|
||||||
containers:
|
containers:
|
||||||
# nitro
|
# nitro
|
||||||
- cerc/nitro-contracts
|
- cerc/nitro-contracts
|
||||||
|
- cerc/ts-nitro
|
||||||
- cerc/go-nitro
|
- cerc/go-nitro
|
||||||
- cerc/nitro-rpc-client
|
- cerc/nitro-rpc-client
|
||||||
pods:
|
pods:
|
||||||
- nitro-contracts
|
- nitro-contracts
|
||||||
- go-nitro-auth
|
- nitro-auth
|
Loading…
Reference in New Issue
Block a user