difftreelog
Merge branch 'master' of https://github.com/usetech-llc/nft_parachain
in: master
5 files changed
Dockerfile-testnetdiffbeforeafterboth1# ===== BUILD ======23FROM phusion/baseimage:0.10.2 as builder4LABEL maintainer="gz@usetech.com"56ENV WASM_TOOLCHAIN=nightly-2020-06-0178ARG PROFILE=release910RUN apt-get update && \11 apt-get dist-upgrade -y -o Dpkg::Options::="--force-confold" && \12 apt-get install -y cmake pkg-config libssl-dev git clang1314# Get project and run it15#RUN git clone https://github.com/usetech-llc/nft_parachain /nft_parachain16RUN mkdir nft_parachain17WORKDIR /nft_parachain18COPY . .1920RUN curl https://sh.rustup.rs -sSf | sh -s -- -y && \21 export PATH="$PATH:$HOME/.cargo/bin" && \22 rustup toolchain uninstall $(rustup toolchain list) && \23 rustup default 1.44.1 && \24 rustup toolchain install $WASM_TOOLCHAIN && \25 rustup target add wasm32-unknown-unknown --toolchain $WASM_TOOLCHAIN && \26 rustup target list --installed && \27 rustup show2829RUN export PATH="$PATH:$HOME/.cargo/bin" && \30 cargo build "--$PROFILE" 31 # && \32 # cargo test3334RUN cd target/release && ls -la3536# ===== RUN ======3738FROM phusion/baseimage:0.10.239ARG PROFILE=release4041COPY --from=builder /nft_parachain/target/$PROFILE/nft /usr/local/bin4243EXPOSE 994444EXPOSE 994645EXPOSE 993546EXPOSE 993647VOLUME ["/chain-data"]4849# Copy and run start script50COPY ["./run-testnet.sh", "./run.sh"]51COPY ["./nftTestnetSpecRaw.json", "./nftTestnetSpecRaw.json"]52COPY ["./einstein_key_file", "./einstein_key_file"]53RUN chmod +x ./run.sh54CMD ["bash", "-c", "./run.sh"]1# ===== BUILD ======23FROM phusion/baseimage:0.10.2 as builder4LABEL maintainer="gz@usetech.com"56ENV WASM_TOOLCHAIN=nightly-2020-06-0178ARG PROFILE=release910RUN apt-get update && \11 apt-get dist-upgrade -y -o Dpkg::Options::="--force-confold" && \12 apt-get install -y cmake pkg-config libssl-dev git clang1314# Get project and run it15#RUN git clone https://github.com/usetech-llc/nft_parachain /nft_parachain16RUN mkdir nft_parachain17WORKDIR /nft_parachain1819RUN curl https://sh.rustup.rs -sSf | sh -s -- -y && \20 export PATH="$PATH:$HOME/.cargo/bin" && \21 rustup toolchain uninstall $(rustup toolchain list) && \22 rustup default 1.44.1 && \23 rustup toolchain install $WASM_TOOLCHAIN && \24 rustup target add wasm32-unknown-unknown --toolchain $WASM_TOOLCHAIN && \25 rustup target list --installed && \26 rustup show2728COPY . .2930RUN export PATH="$PATH:$HOME/.cargo/bin" && \31 cargo build "--$PROFILE" 32 # && \33 # cargo test3435RUN cd target/release && ls -la3637# ===== RUN ======3839FROM phusion/baseimage:0.10.240ARG PROFILE=release4142COPY --from=builder /nft_parachain/target/$PROFILE/nft /usr/local/bin4344EXPOSE 994445EXPOSE 994646EXPOSE 993547EXPOSE 993648VOLUME ["/chain-data"]4950# Copy and run start script51COPY ["./run-testnet.sh", "./run.sh"]52COPY ["./nftTestnetSpecRaw.json", "./nftTestnetSpecRaw.json"]53COPY ["./einstein_key_file", "./einstein_key_file"]54RUN chmod +x ./run.sh55CMD ["bash", "-c", "./run.sh"]deploy-testnet.shdiffbeforeafterboth--- a/deploy-testnet.sh
+++ b/deploy-testnet.sh
@@ -13,6 +13,8 @@
### Build and run Einstein node (bootnode) and Newton node
docker-compose -f docker-compose-testnet.yml up -d --build
+sleep 30
+
### Deploy aura store keys
# Einstein
curl http://localhost:9935 -H "Content-Type:application/json;charset=utf-8" -d "@./einstein_store_key.json"
@@ -27,9 +29,15 @@
# Newton
curl http://localhost:9936 -H "Content-Type:application/json;charset=utf-8" -d "@./newton_store_key_grandpa.json"
+sleep 30
+
### Stop and restart nodes so that they start finalizing
-docker-compose -f docker-compose-testnet.yml down
-docker-compose -f docker-compose-testnet.yml up -d
+docker stop nft_parachain_node_einstein_1
+docker stop nft_parachain_node_newton_1
+docker stop nft_parachain_node_bohr_1
+docker start nft_parachain_node_einstein_1
+docker start nft_parachain_node_newton_1
+docker start nft_parachain_node_bohr_1
### Cleanup
@@ -39,3 +47,5 @@
# Delete store key files
rm ./einstein_store_key.json
rm ./newton_store_key.json
+rm ./einstein_store_key_grandpa.json
+rm ./newton_store_key_grandpa.json
docker-compose-testnet.ymldiffbeforeafterboth--- a/docker-compose-testnet.yml
+++ b/docker-compose-testnet.yml
@@ -4,7 +4,6 @@
node_einstein:
image: nft-parachain
ports:
- - 9944:9944
- 9935:9935
build:
context: ./
@@ -17,14 +16,14 @@
environment:
- NODE=einstein
- P2PPORT=30335
- - WSPORT=9944
+ - WSPORT=9945
- RPCPORT=9935
- BOOTNODE=True
+ - VALIDATOR=True
node_newton:
image: nft-parachain
ports:
- - 9946:9946
- 9936:9936
build:
context: ./
@@ -41,8 +40,31 @@
- RPCPORT=9936
- BOOTNODE=False
- BOOTPORT=30335
- - BOOTID=12D3KooWRYNrSRQvJ73esUhpyETQNJWGfC2LQ9dW3HJtzHJM28Hc
+ - BOOTID=12D3KooWRLrjXxByPkSCzcsRyf6652brnJT9s4AQHR3uujJ35mxz
+ - VALIDATOR=True
+ node_bohr:
+ image: nft-parachain
+ ports:
+ - 9944:9944
+ build:
+ context: ./
+ dockerfile: Dockerfile-testnet
+ volumes:
+ - ./chain-data-bohr:/chain-data
+ networks:
+ - substrate_network
+ restart: always
+ environment:
+ - NODE=bohr
+ - P2PPORT=30334
+ - WSPORT=9944
+ - RPCPORT=9934
+ - BOOTNODE=False
+ - BOOTPORT=30335
+ - BOOTID=12D3KooWRLrjXxByPkSCzcsRyf6652brnJT9s4AQHR3uujJ35mxz
+ - VALIDATOR=False
+
networks:
substrate_network:
driver: bridge
run-testnet.shdiffbeforeafterboth--- a/run-testnet.sh
+++ b/run-testnet.sh
@@ -8,17 +8,23 @@
echo RPC Port : $RPCPORT
echo Boot = $BOOTNODE
+echo Validator = $VALIDATOR
if [ "$BOOTNODE" = True ];
then
echo This is a Bootnode;
BOOTNODES="";
+NODEKEY="--node-key-file einstein_key_file";
else
-echo Bootnode Port : $BOOTPORT
-echo Bootnode PeerID : $BOOTID
+echo Bootnode Port : $BOOTPORT;
+echo Bootnode PeerID : $BOOTID;
BOOTNODES="--bootnodes /dns4/node_einstein/tcp/$BOOTPORT/p2p/$BOOTID";
+NODEKEY="";
fi
+if [ "$VALIDATOR" = True ];
+then
+echo This is a Validator node;
/usr/local/bin/nft \
--base-path /chain-data \
--chain ./nftTestnetSpecRaw.json \
@@ -31,5 +37,19 @@
--ws-external \
--rpc-external \
-lruntime \
- $BOOTNODES
-
+ $BOOTNODES \
+ $NODEKEY;
+else
+echo This is a Gateway node;
+/usr/local/bin/nft \
+ --base-path /chain-data \
+ --chain ./nftTestnetSpecRaw.json \
+ --port $P2PPORT \
+ --ws-port $WSPORT \
+ --rpc-port $RPCPORT \
+ --name $NODE \
+ --ws-external \
+ --rpc-cors all \
+ -lruntime \
+ $BOOTNODES;
+fi
upload_secrets.shdiffbeforeafterboth--- /dev/null
+++ b/upload_secrets.sh
@@ -0,0 +1,7 @@
+scp -P 8022 ./einstein_key_file developer@212.248.19.53:~/nft_parachain/einstein_key_file
+
+scp -P 8022 ./einstein_store_key.json developer@212.248.19.53:~/nft_parachain/einstein_store_key.json
+scp -P 8022 ./newton_store_key.json developer@212.248.19.53:~/nft_parachain/newton_store_key.json
+
+scp -P 8022 ./einstein_store_key_grandpa.json developer@212.248.19.53:~/nft_parachain/einstein_store_key_grandpa.json
+scp -P 8022 ./newton_store_key_grandpa.json developer@212.248.19.53:~/nft_parachain/newton_store_key_grandpa.json