Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
177 lines (177 sloc) 6.62 KB
services:
- name: gossip-node0
image: "gcr.io/whiteblock/gossipsub:master"
environment:
SELF: 0
volumes:
- name: privKeys
path: /pk-generator/pems/
scope: singleton
- name: topologies
path: /topology/
scope: singleton
resources:
cpus: 1
memory: 4 GB
storage: 20 GiB
input-files:
- source-path: MADDR.txt
destination-path: /go-libp2p-pubsub-benchmark-tools/MADDR.txt
- source-path: start.sh
destination-path: /go-libp2p-pubsub-benchmark-tools/start.sh
script:
inline: cp /pk-generator/pems/pk-1.pem /go-libp2p-pubsub-benchmark-tools/pk.pem && cp /topology/peers_0.txt /go-libp2p-pubsub-benchmark-tools/peers.txt && cp /topology/NODECOUNT.txt /go-libp2p-pubsub-benchmark-tools/NODECOUNT.txt && cp /topology/IP.txt /go-libp2p-pubsub-benchmark-tools/IP.txt && sudo chmod 777 start.sh && ./start.sh
- name: gossip-node1
image: "gcr.io/whiteblock/gossipsub:master"
environment:
SELF: 1
volumes:
- name: privKeys
path: /pk-generator/pems/
scope: singleton
- name: topologies
path: /topology/
scope: singleton
resources:
cpus: 1
memory: 4 GB
storage: 20 GiB
input-files:
- source-path: MADDR.txt
destination-path: /go-libp2p-pubsub-benchmark-tools/MADDR.txt
- source-path: start.sh
destination-path: /go-libp2p-pubsub-benchmark-tools/start.sh
script:
inline: cp /pk-generator/pems/pk-2.pem /go-libp2p-pubsub-benchmark-tools/pk.pem && cp /topology/peers_1.txt /go-libp2p-pubsub-benchmark-tools/peers.txt && cp /topology/NODECOUNT.txt /go-libp2p-pubsub-benchmark-tools/NODECOUNT.txt && cp /topology/IP.txt /go-libp2p-pubsub-benchmark-tools/IP.txt && sudo chmod 777 start.sh && ./start.sh
- name: gossip-node2
image: "gcr.io/whiteblock/gossipsub:master"
environment:
SELF: 2
volumes:
- name: privKeys
path: /pk-generator/pems/
scope: singleton
- name: topologies
path: /topology/
scope: singleton
resources:
cpus: 1
memory: 4 GB
storage: 20 GiB
input-files:
- source-path: MADDR.txt
destination-path: /go-libp2p-pubsub-benchmark-tools/MADDR.txt
- source-path: start.sh
destination-path: /go-libp2p-pubsub-benchmark-tools/start.sh
script:
inline: cp /pk-generator/pems/pk-3.pem /go-libp2p-pubsub-benchmark-tools/pk.pem && cp /topology/peers_2.txt /go-libp2p-pubsub-benchmark-tools/peers.txt && cp /topology/NODECOUNT.txt /go-libp2p-pubsub-benchmark-tools/NODECOUNT.txt && cp /topology/IP.txt /go-libp2p-pubsub-benchmark-tools/IP.txt && sudo chmod 777 start.sh && ./start.sh && sleep 600
- name: gossip-node3
image: "gcr.io/whiteblock/gossipsub:master"
environment:
SELF: 3
volumes:
- name: privKeys
path: /pk-generator/pems/
scope: singleton
- name: topologies
path: /topology/
scope: singleton
resources:
cpus: 1
memory: 4 GB
storage: 20 GiB
input-files:
- source-path: MADDR.txt
destination-path: /go-libp2p-pubsub-benchmark-tools/MADDR.txt
- source-path: start.sh
destination-path: /go-libp2p-pubsub-benchmark-tools/start.sh
script:
inline: cp /pk-generator/pems/pk-4.pem /go-libp2p-pubsub-benchmark-tools/pk.pem && cp /topology/peers_3.txt /go-libp2p-pubsub-benchmark-tools/peers.txt && cp /topology/NODECOUNT.txt /go-libp2p-pubsub-benchmark-tools/NODECOUNT.txt && cp /topology/IP.txt /go-libp2p-pubsub-benchmark-tools/IP.txt && sudo chmod 777 start.sh && ./start.sh && sleep 600
- name: orchestra-node
image: "gcr.io/whiteblock/gossipsub:master"
volumes:
- name: topologies
path: /topology/
scope: singleton
resources:
cpus: 1
memory: 4 GB
storage: 20 GiB
input-files:
- source-path: orchestra.sh
destination-path: /go-libp2p-pubsub-benchmark-tools/orchestra.sh
- source-path: ./configs/config.json
destination-path: /go-libp2p-pubsub-benchmark-tools/configs/orchestra/config.json
- source-path: config_orchestra.sh
destination-path: /go-libp2p-pubsub-benchmark-tools/config_orchestra.sh
script:
inline: sleep 15 && cp /topology/NODECOUNT.txt /go-libp2p-pubsub-benchmark-tools/NODECOUNT.txt && cp /topology/IP.txt /go-libp2p-pubsub-benchmark-tools/IP.txt && sudo chmod 777 ./config_orchestra.sh && ./config_orchestra.sh && sudo chmod 777 ./orchestra.sh && ./orchestra.sh && sleep 120
task-runners:
- name: priv-key-gen
image: "gcr.io/whiteblock/helpers/pk-generator/keygen:master"
volumes:
- name: privKeys
path: /pk-generator/pems/
scope: singleton
script:
inline: ./pk-generator generate --numKeys 4
- name: topology-generator
# image has to include and build the packages that will be necessary to run the helper
image: "gcr.io/whiteblock/helpers/topologygen:master"
volumes: # stores files peers_*.txt
- name: topologies
path: /topology/
scope: singleton
input-files:
- source-path: getIP.sh
destination-path: /topologyGen/getIP.sh
resources:
cpus: 1
memory: 2 GB
storage: 512 MB
script: # need to edit this to output the correct number of files for every node in the network
inline: python topo.py 42 4 2 true && cp topology/* /topology && bash getIP.sh && sleep 15
tests:
- name: gossip-load-test
description: run a gossip network and send messages
phases:
- name: generate-topology-and-keys # generate topologies
tasks:
- type: topology-generator
- type: priv-key-gen
- name: gossiping # spin up gossip nodes
duration: 15 s
system:
- name: gossip-node0
type: gossip-node0
count: 1
resources:
networks:
- name: gossip-network
- name: gossip-node1
type: gossip-node1
count: 1
resources:
networks:
- name: gossip-network
- name: gossip-node2
type: gossip-node2
count: 1
resources:
networks:
- name: gossip-network
- name: gossip-node3
type: gossip-node3
count: 1
resources:
networks:
- name: gossip-network
- name: start-orchestra # add in orchestra node
duration: 15 m
system:
- name: orchestra-node
type: orchestra-node
count: 1
resources:
networks:
- name: gossip-network
You can’t perform that action at this time.