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 /cmd/swarm/run_test.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 'cmd/swarm/run_test.go')
-rw-r--r-- | cmd/swarm/run_test.go | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/cmd/swarm/run_test.go b/cmd/swarm/run_test.go index aaaf9e1e5..ed1502868 100644 --- a/cmd/swarm/run_test.go +++ b/cmd/swarm/run_test.go @@ -27,6 +27,7 @@ import ( "time" "github.com/docker/docker/pkg/reexec" + "github.com/ethereum/go-ethereum/accounts" "github.com/ethereum/go-ethereum/accounts/keystore" "github.com/ethereum/go-ethereum/internal/cmdtest" "github.com/ethereum/go-ethereum/node" @@ -156,9 +157,9 @@ type testNode struct { const testPassphrase = "swarm-test-passphrase" -func newTestNode(t *testing.T, dir string) *testNode { +func getTestAccount(t *testing.T, dir string) (conf *node.Config, account accounts.Account) { // create key - conf := &node.Config{ + conf = &node.Config{ DataDir: dir, IPCPath: "bzzd.ipc", NoUSB: true, @@ -167,18 +168,24 @@ func newTestNode(t *testing.T, dir string) *testNode { if err != nil { t.Fatal(err) } - account, err := n.AccountManager().Backends(keystore.KeyStoreType)[0].(*keystore.KeyStore).NewAccount(testPassphrase) + account, err = n.AccountManager().Backends(keystore.KeyStoreType)[0].(*keystore.KeyStore).NewAccount(testPassphrase) if err != nil { t.Fatal(err) } - node := &testNode{Dir: dir} - // use a unique IPCPath when running tests on Windows if runtime.GOOS == "windows" { conf.IPCPath = fmt.Sprintf("bzzd-%s.ipc", account.Address.String()) } + return conf, account +} + +func newTestNode(t *testing.T, dir string) *testNode { + + conf, account := getTestAccount(t, dir) + node := &testNode{Dir: dir} + // assign ports httpPort, err := assignTCPPort() if err != nil { |