aboutsummaryrefslogtreecommitdiffstats
path: root/cmd/swarm/run_test.go
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 /cmd/swarm/run_test.go
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 'cmd/swarm/run_test.go')
-rw-r--r--cmd/swarm/run_test.go17
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 {