diff options
author | holisticode <holistic.computing@gmail.com> | 2017-12-12 05:56:06 +0800 |
---|---|---|
committer | Felix Lange <fjl@users.noreply.github.com> | 2017-12-12 05:56:06 +0800 |
commit | 32516c768ec09e2a71cab5983d2c8b8ae5d92fc7 (patch) | |
tree | 9f02126fd6f219163776ad1ab8a8b924a32811a4 /swarm/network/syncer.go | |
parent | 1a32bdf92cceb7a42e5636e12d95609e17b8f786 (diff) | |
download | dexon-32516c768ec09e2a71cab5983d2c8b8ae5d92fc7.tar.gz dexon-32516c768ec09e2a71cab5983d2c8b8ae5d92fc7.tar.zst dexon-32516c768ec09e2a71cab5983d2c8b8ae5d92fc7.zip |
cmd/swarm: add config file (#15548)
This commit adds a TOML configuration option to swarm. It reuses
the TOML configuration structure used in geth with swarm
customized items.
The commit:
* Adds a "dumpconfig" command to the swarm executable which
allows printing the (default) configuration to stdout, which
then can be redirected to a file in order to customize it.
* Adds a "--config <file>" option to the swarm executable which will
allow to load a configuration file in TOML format from the
specified location in order to initialize the Swarm node The
override priorities are like follows: environment variables
override command line arguments override config file override
default config.
Diffstat (limited to 'swarm/network/syncer.go')
-rw-r--r-- | swarm/network/syncer.go | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/swarm/network/syncer.go b/swarm/network/syncer.go index d76af022c..6d729fcb9 100644 --- a/swarm/network/syncer.go +++ b/swarm/network/syncer.go @@ -131,9 +131,8 @@ type SyncParams struct { } // constructor with default values -func NewSyncParams(bzzdir string) *SyncParams { +func NewDefaultSyncParams() *SyncParams { return &SyncParams{ - RequestDbPath: filepath.Join(bzzdir, "requests"), RequestDbBatchSize: requestDbBatchSize, KeyBufferSize: keyBufferSize, SyncBufferSize: syncBufferSize, @@ -144,6 +143,12 @@ func NewSyncParams(bzzdir string) *SyncParams { } } +//this can only finally be set after all config options (file, cmd line, env vars) +//have been evaluated +func (self *SyncParams) Init(path string) { + self.RequestDbPath = filepath.Join(path, "requests") +} + // syncer is the agent that manages content distribution/storage replication/chunk storeRequest forwarding type syncer struct { *SyncParams // sync parameters |