diff options
author | Evgeny Danienko <6655321@bk.ru> | 2018-09-25 20:54:47 +0800 |
---|---|---|
committer | Evgeny Danienko <6655321@bk.ru> | 2018-09-25 20:54:47 +0800 |
commit | 09dde380f906b943eb834b7b93c1afa0c2e49b46 (patch) | |
tree | ce90480385b48efdfc8b7c6f6070f4c784d1073f | |
parent | 1f45ba9bb1c19489a6c8bf9caf100e56dcb79788 (diff) | |
download | dexon-09dde380f906b943eb834b7b93c1afa0c2e49b46.tar dexon-09dde380f906b943eb834b7b93c1afa0c2e49b46.tar.gz dexon-09dde380f906b943eb834b7b93c1afa0c2e49b46.tar.bz2 dexon-09dde380f906b943eb834b7b93c1afa0c2e49b46.tar.lz dexon-09dde380f906b943eb834b7b93c1afa0c2e49b46.tar.xz dexon-09dde380f906b943eb834b7b93c1afa0c2e49b46.tar.zst dexon-09dde380f906b943eb834b7b93c1afa0c2e49b46.zip |
cmd/swarm: use expandPath for swarm cli path parameters
-rw-r--r-- | cmd/swarm/config.go | 10 | ||||
-rw-r--r-- | cmd/swarm/upload.go | 6 |
2 files changed, 13 insertions, 3 deletions
diff --git a/cmd/swarm/config.go b/cmd/swarm/config.go index ae4b5816e..c2f885d25 100644 --- a/cmd/swarm/config.go +++ b/cmd/swarm/config.go @@ -124,7 +124,7 @@ func initSwarmNode(config *bzzapi.Config, stack *node.Node, ctx *cli.Context) { //get the account for the provided swarm account prvkey := getAccount(config.BzzAccount, ctx, stack) //set the resolved config path (geth --datadir) - config.Path = stack.InstanceDir() + config.Path = expandPath(stack.InstanceDir()) //finally, initialize the configuration config.Init(prvkey) //configuration phase completed here @@ -182,7 +182,7 @@ func cmdLineOverride(currentConfig *bzzapi.Config, ctx *cli.Context) *bzzapi.Con if ctx.GlobalIsSet(utils.DataDirFlag.Name) { if datadir := ctx.GlobalString(utils.DataDirFlag.Name); datadir != "" { - currentConfig.Path = datadir + currentConfig.Path = expandPath(datadir) } } @@ -226,6 +226,10 @@ func cmdLineOverride(currentConfig *bzzapi.Config, ctx *cli.Context) *bzzapi.Con if len(ensAPIs) == 1 && ensAPIs[0] == "" { ensAPIs = nil } + for i := range ensAPIs { + ensAPIs[i] = expandPath(ensAPIs[i]) + } + currentConfig.EnsAPIs = ensAPIs } @@ -268,7 +272,7 @@ func envVarsOverride(currentConfig *bzzapi.Config) (config *bzzapi.Config) { } if datadir := os.Getenv(GETH_ENV_DATADIR); datadir != "" { - currentConfig.Path = datadir + currentConfig.Path = expandPath(datadir) } bzzport := os.Getenv(SWARM_ENV_PORT) diff --git a/cmd/swarm/upload.go b/cmd/swarm/upload.go index 9eae2a3f8..f76cb1b98 100644 --- a/cmd/swarm/upload.go +++ b/cmd/swarm/upload.go @@ -138,6 +138,12 @@ func upload(ctx *cli.Context) { // 3. cleans the path, e.g. /a/b/../c -> /a/c // Note, it has limitations, e.g. ~someuser/tmp will not be expanded func expandPath(p string) string { + if i := strings.Index(p, ":"); i > 0 { + return p + } + if i := strings.Index(p, "@"); i > 0 { + return p + } if strings.HasPrefix(p, "~/") || strings.HasPrefix(p, "~\\") { if home := homeDir(); home != "" { p = home + p[1:] |