diff --git a/cmd/ipfs/init.go b/cmd/ipfs/init.go index c3a15b97d2b..f9ef237270c 100644 --- a/cmd/ipfs/init.go +++ b/cmd/ipfs/init.go @@ -1,7 +1,6 @@ package main import ( - "encoding/json" "errors" "fmt" "io" @@ -33,9 +32,7 @@ at ~/.ipfs. To change the repo location, set the $IPFS_PATH environment variable export IPFS_PATH=/path/to/ipfsrepo `, }, - Arguments: []cmds.Argument{ - cmds.FileArg("default-config", false, false, "Initialize with the given configuration.").EnableStdin(), - }, + Options: []cmds.Option{ cmds.IntOption("bits", "b", "Number of bits to use in the generated RSA private key.").Default(nBitsForKeypairDefault), cmds.BoolOption("empty-repo", "e", "Don't add and pin help files to the local storage.").Default(false), @@ -78,24 +75,7 @@ at ~/.ipfs. To change the repo location, set the $IPFS_PATH environment variable return } - var conf *config.Config - - f := req.Files() - if f != nil { - confFile, err := f.NextFile() - if err != nil { - res.SetError(err, cmds.ErrNormal) - return - } - - conf = &config.Config{} - if err := json.NewDecoder(confFile).Decode(conf); err != nil { - res.SetError(err, cmds.ErrNormal) - return - } - } - - if err := doInit(os.Stdout, req.InvocContext().ConfigRoot, empty, nBitsForKeypair, conf); err != nil { + if err := doInit(os.Stdout, req.InvocContext().ConfigRoot, empty, nBitsForKeypair); err != nil { res.SetError(err, cmds.ErrNormal) return } @@ -107,10 +87,10 @@ Reinitializing would overwrite your keys. `) func initWithDefaults(out io.Writer, repoRoot string) error { - return doInit(out, repoRoot, false, nBitsForKeypairDefault, nil) + return doInit(out, repoRoot, false, nBitsForKeypairDefault) } -func doInit(out io.Writer, repoRoot string, empty bool, nBitsForKeypair int, conf *config.Config) error { +func doInit(out io.Writer, repoRoot string, empty bool, nBitsForKeypair int) error { if _, err := fmt.Fprintf(out, "initializing ipfs node at %s\n", repoRoot); err != nil { return err } @@ -123,12 +103,9 @@ func doInit(out io.Writer, repoRoot string, empty bool, nBitsForKeypair int, con return errRepoExists } - if conf == nil { - var err error - conf, err = config.Init(out, nBitsForKeypair) - if err != nil { - return err - } + conf, err := config.Init(out, nBitsForKeypair) + if err != nil { + return err } if err := fsrepo.Init(repoRoot, conf); err != nil { diff --git a/test/sharness/t0022-init-default.sh b/test/sharness/t0022-init-default.sh deleted file mode 100755 index a26910f9019..00000000000 --- a/test/sharness/t0022-init-default.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/sh -# -# Copyright (c) 2014 Christian Couder -# MIT Licensed; see the LICENSE file in this repository. -# - -test_description="Test init command with default config" - -. lib/test-lib.sh - -cfg_key="Addresses.API" -cfg_val="/ip4/0.0.0.0/tcp/5001" - -# test that init succeeds -test_expect_success "ipfs init succeeds" ' - export IPFS_PATH="$(pwd)/.ipfs" && - echo "IPFS_PATH: \"$IPFS_PATH\"" && - BITS="2048" && - ipfs init --bits="$BITS" >actual_init || - test_fsh cat actual_init -' - -test_expect_success ".ipfs/config has been created" ' - test -f "$IPFS_PATH"/config || - test_fsh ls -al .ipfs -' - -test_expect_success "ipfs config succeeds" ' - ipfs config $cfg_flags "$cfg_key" "$cfg_val" -' - -test_expect_success "ipfs read config succeeds" ' - IPFS_DEFAULT_CONFIG=$(cat "$IPFS_PATH"/config) -' - -test_expect_success "clean up ipfs dir" ' - rm -rf "$IPFS_PATH" -' - -test_expect_success "ipfs init default config succeeds" ' - echo $IPFS_DEFAULT_CONFIG | ipfs init >actual_init || - test_fsh cat actual_init -' - -test_expect_success "ipfs config output looks good" ' - echo "$cfg_val" >expected && - ipfs config "$cfg_key" >actual && - test_cmp expected actual -' - -test_launch_ipfs_daemon - -test_kill_ipfs_daemon - -test_done