Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
integration
Manage
Activity
Members
Labels
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Deploy
Releases
Package registry
Model registry
Operate
Terraform modules
Analyze
Contributor analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
elixxir
integration
Commits
9629be6a
Commit
9629be6a
authored
3 years ago
by
Josh Brooks
Browse files
Options
Downloads
Patches
Plain Diff
Update documentation
parent
a8dc2c1e
No related branches found
No related tags found
3 merge requests
!68
Master merge
,
!24
Josh/local env migration
,
!11
Release
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
README.md
+2
-3
2 additions, 3 deletions
README.md
localNetwork/README.md
+70
-5
70 additions, 5 deletions
localNetwork/README.md
with
72 additions
and
8 deletions
README.md
+
2
−
3
View file @
9629be6a
...
...
@@ -28,9 +28,8 @@ is added to this testing suite via the run script (`run.sh`)
The
[
localNetwork package
](
./localNetwork
)
is a more general-use network tool.
This package will run a local version of the xx network on a single machine until a
manually killed by the user. This can be done either via the
`run.sh`
script,
which will run the network with internal IP addresses, or the
`runpublish.sh`
, which runs the network
with remotely accessible IP addresses. With this network established, a developer may,
manually killed by the user. This can be done using either the
`run.sh`
or the
`runpublish.sh`
scripts.
With this network established, a developer may,
for example, test the xxDK.
## How to manually run locally
...
...
This diff is collapsed.
Click to expand it.
localNetwork/README.md
+
70
−
5
View file @
9629be6a
=
Local Continuously Running Network (localNetwork)
#
Local Continuously Running Network (localNetwork)
This tool runs several servers as a local simulation of the xx network.
The basic structure is as follows:
*
3 Nodes, BatchSize of 32
*
3
cMix
Nodes, BatchSize of 32
*
3 Gateways, each connected to its own node
*
User Discovery Bot
*
Scheduling Server
...
...
@@ -12,7 +12,72 @@ The basic structure is as follows:
With these tools you may run the xxDK off of the produced
[
ndf
](
./ndf.json
)
, testing locally without
having to operate on MainNet or any other live network.
##
Configurability
##
Operating the Network
If you wish to operate with a larger local network, you may generate a programmable number of gateways/servers
using the (generate)
To run the local network, you only need to run either
`run.sh`
or
`runpublic.sh`
. The difference
between these two scripts is described below, in the
[
scripts section
](
#scripts
)
. Below is an example of running
`run.sh`
:
```
commandline
./run.sh
rm: cannot remove 'gateway*-knownRound': No such file or directory
rm: cannot remove 'errServer-*': No such file or directory
rm: cannot remove '*.log': No such file or directory
rm: cannot remove 'roundId.txt': No such file or directory
rm: cannot remove '*-knownRound': No such file or directory
rm: cannot remove 'updateId*': No such file or directory
rm: cannot remove 'lastupdateid*': No such file or directory
rm: cannot remove 'udbsession': No such file or directory
STARTING SERVERS...
Permissioning: 112749
Client Registrar: 112750
Server 0: 112757
Server 1: 112762
Server 2: 112763
Gateway 0 -- 112774
Gateway 1 -- 112775
Gateway 2 -- 112776
You can't use the network until rounds run.
If it doesn't happen after 1 minute, please Ctrl+C
and review logs for what went wrong.
Waiting for rounds to run..............STARTING UDB...
UDB: 112937
\nNetwork rounds have run. You may now attempt to connect.
Press enter to exit...
```
This script will run continuously until the user has sent a kill signal. The run script expects
`Enter/Return`
once the network is set up. However, at any point prior of after the network is set
up, the user may kill the script using standard kill signals (
`CTR+C`
,
`CTR+D`
, etc.).
## Scripts
### `run.sh`
The
`run.sh`
script will run the network with internal IP addresses. This will allow the user
to test the xxDK from the machine running the local network.
### runpublish.sh`
The
`runpublish.sh`
runs the network with remotely accessible IP addresses. This
will allow the user to test the xxDK from another machine, provided they have passed the ndf
along.
## Configurability of Local Network
If you wish to test with a larger local network, you may use the
[
config file generation script
](
./configGen/gen.py
)
.
This will generate a programmable number of gateways/servers config files.
The snippet below gives an example on how to run this script:
```
commandline
$ cd configGen/
$ python3 gen.py
Total number of nodes: 9
Minimum number of nodes online to start network: 3
Size of each team: 3
```
This example generates 9 cMix nodes with 9 associated gateways. The rounds will have 3 nodes in a team,
and the network only needs 3 nodes running to start running rounds.
Once config files have been generated, you need only execute the run script to run a network of the desired size
and specifications. Please note that this network does run locally, and as such larger networks
may be resource intensive (depending on the user's machine).
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment