You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
goal node create --network <network> --destination ./ is incomplete and can be improved.
The ingredients to configure a node for a specific network are:
A compatible release
The correct genesis.json file
The correct DNS Bootstrap URL (used to find a relay)
The --network currently ONLY attempts to properly set the genesis.json file, and even that piece has problems. The main problem is that there is not a consistent way for the --network option to find the genesis file, it searches 3 locations and the files are not always in those locations.
Open Question
Is there an opportunity for consolidation? The genesis.json files are shipped in many ways:
make install places genesis files in the $GOPATH/bin/genesisfiles directory
The update.sh script installs them relative to the binaries
The release tarballs include genesis files in the <archive>/genesis/ directory
The deb/rpm installers include genesis files in /var/lib/algorand
The sandbox includes and manages them internally
Who is actually using goal network create? I see it in a few places and ONLY to install a private network based on a template.
Scope/Requirements
There are two options
Make the "template" field required. This is now a non-issue because goal network create wouldn't need to lookup the genesis.json file.
If we decide we can't remove the install-a-real-network mode we could modify goal node create with the following:
Bake the genesis files into the binary. mainnet/testnet/betanet/devnet are all committed to the go-algorand repository and serve as the source of truth, so they can be included in the goal command.
Alongside the baked in genesis files include the DNS Bootstrap ID configuration.
The network option should ONLY allow using the baked in configurations.
Urgency/Relative Priority
This command is extremely confusing to developers and customers.
The problem of finding genesis files should be something we have an actual design for, currently the design is organic and keeps being redesigned when someone runs into the problem.
The text was updated successfully, but these errors were encountered:
Summary
goal node create --network <network> --destination ./
is incomplete and can be improved.The ingredients to configure a node for a specific network are:
The
--network
currently ONLY attempts to properly set the genesis.json file, and even that piece has problems. The main problem is that there is not a consistent way for the--network
option to find the genesis file, it searches 3 locations and the files are not always in those locations.Open Question
Is there an opportunity for consolidation? The
genesis.json
files are shipped in many ways:make install
places genesis files in the$GOPATH/bin/genesisfiles
directoryupdate.sh
script installs them relative to the binaries<archive>/genesis/
directory/var/lib/algorand
Who is actually using
goal network create
? I see it in a few places and ONLY to install a private network based on a template.Scope/Requirements
There are two options
Make the "template" field required. This is now a non-issue because
goal network create
wouldn't need to lookup the genesis.json file.If we decide we can't remove the install-a-real-network mode we could modify
goal node create
with the following:Urgency/Relative Priority
This command is extremely confusing to developers and customers.
The problem of finding genesis files should be something we have an actual design for, currently the design is organic and keeps being redesigned when someone runs into the problem.
The text was updated successfully, but these errors were encountered: