diff --git a/integration/messaging/env-vars.sh b/integration/messaging/env-vars.sh new file mode 100644 index 0000000000..756a09e746 --- /dev/null +++ b/integration/messaging/env-vars.sh @@ -0,0 +1,22 @@ +# This script needs to be `source`d from bash-compatible shell +# E.g. `source ./integration/generic/env-vars.sh` or `. ./integration/generic/env-vars.sh` +export PK_A=$(jq -r ".node.static_public_key" ./integration/generic/nodeA.json) +export RPC_A=$(jq -r ".interfaces.rpc" ./integration/generic/nodeA.json) +export PK_B=$(jq -r ".node.static_public_key" ./integration/intermediary-nodeB.json) +export RPC_B=$(jq -r ".interfaces.rpc" ./integration/intermediary-nodeB.json) +export PK_C=$(jq -r ".node.static_public_key" ./integration/generic/nodeC.json) +export RPC_C=$(jq -r ".interfaces.rpc" ./integration/generic/nodeC.json) + +export CHAT_A=http://localhost:8000/message +export CHAT_C=http://localhost$(jq -r '.apps [] |select(.app=="skychat")| .args[1] ' ./integration/generic/nodeC.json)/message + +alias CLI_A='./bin/skywire-cli --rpc $RPC_A' +alias CLI_B='./bin/skywire-cli --rpc $RPC_B' +alias CLI_C='./bin/skywire-cli --rpc $RPC_C' + +echo PK_A: $PK_A +echo PK_B: $PK_B +echo PK_C: $PK_C + +echo CHAT_A: $CHAT_A +echo CHAT_C: $CHAT_C diff --git a/integration/messaging/nodeA.json b/integration/messaging/nodeA.json new file mode 100644 index 0000000000..4a4a05510b --- /dev/null +++ b/integration/messaging/nodeA.json @@ -0,0 +1,45 @@ +{ + "version": "1.0", + "node": { + "static_public_key": "02072dd1e2ccd761e717096e1a264de1d8917e78e3176ca99dbf7ccf7292969845", + "static_secret_key": "7073e557aa2308b448525397ea2f45d56c9962c4dcdf82c5fdb5cc02fca0481c" + }, + "messaging": { + "discovery": "https://messaging.discovery.skywire.skycoin.net", + "server_count": 1 + }, + "transport": { + "discovery": "https://transport.discovery.skywire.skycoin.net", + "log_store": { + "type": "file", + "location": "./local/nodeA/transport_logs" + } + }, + "routing": { + "setup_nodes": [ + "0324579f003e6b4048bae2def4365e634d8e0e3054a20fc7af49daf2a179658557" + ], + "route_finder": "https://routefinder.skywire.skycoin.net/", + "table": { + "type": "boltdb", + "location": "./local/nodeA/routing.db" + } + }, + "apps": [ + { + "app": "skychat", + "version": "1.0", + "auto_start": true, + "port": 1, + "args": [] + } + ], + "trusted_nodes": [], + "manager_nodes": [], + "apps_path": "./apps", + "local_path": "./local/nodeA", + "log_level": "info", + "interfaces": { + "rpc": "localhost:3436" + } +} diff --git a/integration/messaging/nodeC.json b/integration/messaging/nodeC.json new file mode 100644 index 0000000000..f20300f4a2 --- /dev/null +++ b/integration/messaging/nodeC.json @@ -0,0 +1,45 @@ +{ + "version": "1.0", + "node": { + "static_public_key": "02c9ddf5c2ae6a5a2166028dafbc814eff3ec2352f429fb0aa37d96e1aa668f332", + "static_secret_key": "5ab3744ab56e4d0b82f9a915e07b8f05d51ec0f16ff8496bd92f4e378ca6c1fc" + }, + "messaging": { + "discovery": "https://messaging.discovery.skywire.skycoin.net", + "server_count": 1 + }, + "transport": { + "discovery": "https://transport.discovery.skywire.skycoin.net", + "log_store": { + "type": "file", + "location": "./local/nodeC/transport_logs" + } + }, + "routing": { + "setup_nodes": [ + "0324579f003e6b4048bae2def4365e634d8e0e3054a20fc7af49daf2a179658557" + ], + "route_finder": "https://routefinder.skywire.skycoin.net/", + "table": { + "type": "boltdb", + "location": "./local/nodeC/routing.db" + } + }, + "apps": [ + { + "app": "skychat", + "version": "1.0", + "auto_start": true, + "port": 1, + "args": ["-addr", ":8001"] + } + ], + "trusted_nodes": [], + "manager_nodes": [], + "apps_path": "./apps", + "local_path": "./local/nodeC", + "log_level": "info", + "interfaces": { + "rpc": "localhost:3438" + } +} diff --git a/integration/run-messaging-env.sh b/integration/run-messaging-env.sh new file mode 100755 index 0000000000..53e50f3390 --- /dev/null +++ b/integration/run-messaging-env.sh @@ -0,0 +1,23 @@ +#!/usr/bin/env bash + +## SKYWIRE + +tmux new -s skywire -d + +source ./integration/messaging/env-vars.sh + +echo "Checking transport-discovery is up" +curl --retry 5 --retry-connrefused 1 --connect-timeout 5 https://transport.discovery.skywire.skycoin.net/security/nonces/$PK_A + +tmux rename-window -t skywire NodeA +tmux send-keys -t NodeA './skywire-node ./integration/messaging/nodeA.json --tag NodeA' C-m +tmux new-window -t skywire -n NodeB +tmux send-keys -t NodeB './skywire-node ./integration/intermediary-nodeB.json --tag NodeB' C-m +tmux new-window -t skywire -n NodeC +tmux send-keys -t NodeC './skywire-node ./integration/messaging/nodeC.json --tag NodeC' C-m + +tmux new-window -t skywire -n shell + +tmux send-keys -t shell 'source ./integration/messaging/env-vars.sh' C-m + +tmux attach -t skywire