aboutsummaryrefslogtreecommitdiffstats
path: root/swarm/storage
diff options
context:
space:
mode:
authorholisticode <holistic.computing@gmail.com>2017-12-12 05:56:06 +0800
committerFelix Lange <fjl@users.noreply.github.com>2017-12-12 05:56:06 +0800
commit32516c768ec09e2a71cab5983d2c8b8ae5d92fc7 (patch)
tree9f02126fd6f219163776ad1ab8a8b924a32811a4 /swarm/storage
parent1a32bdf92cceb7a42e5636e12d95609e17b8f786 (diff)
downloaddexon-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/storage')
-rw-r--r--swarm/storage/netstore.go10
1 files changed, 8 insertions, 2 deletions
diff --git a/swarm/storage/netstore.go b/swarm/storage/netstore.go
index 7b0612edc..5d4f17deb 100644
--- a/swarm/storage/netstore.go
+++ b/swarm/storage/netstore.go
@@ -57,15 +57,21 @@ type StoreParams struct {
Radius int
}
-func NewStoreParams(path string) (self *StoreParams) {
+//create params with default values
+func NewDefaultStoreParams() (self *StoreParams) {
return &StoreParams{
- ChunkDbPath: filepath.Join(path, "chunks"),
DbCapacity: defaultDbCapacity,
CacheCapacity: defaultCacheCapacity,
Radius: defaultRadius,
}
}
+//this can only finally be set after all config options (file, cmd line, env vars)
+//have been evaluated
+func (self *StoreParams) Init(path string) {
+ self.ChunkDbPath = filepath.Join(path, "chunks")
+}
+
// netstore contructor, takes path argument that is used to initialise dbStore,
// the persistent (disk) storage component of LocalStore
// the second argument is the hive, the connection/logistics manager for the node