Skip to content

Commit

Permalink
Move command-specific flags into command source file
Browse files Browse the repository at this point in the history
  • Loading branch information
gammazero committed Sep 1, 2023
1 parent 3e2927a commit d680791
Show file tree
Hide file tree
Showing 7 changed files with 77 additions and 80 deletions.
9 changes: 9 additions & 0 deletions cmd/provider/announce.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,22 @@ var AnnounceCmd = &cli.Command{
Action: announceCommand,
}

var announceFlags = []cli.Flag{
adminAPIFlag,
}

var AnnounceHttpCmd = &cli.Command{
Name: "announce-http",
Usage: "Publish an announcement message for the latest advertisement to a specific indexer via http",
Flags: announceHttpFlags,
Action: announceHttpCommand,
}

var announceHttpFlags = []cli.Flag{
adminAPIFlag,
indexerFlag,
}

func announceCommand(cctx *cli.Context) error {
req, err := http.NewRequestWithContext(cctx.Context, http.MethodPost, adminAPIFlagValue+"/admin/announce", nil)
if err != nil {
Expand Down
10 changes: 10 additions & 0 deletions cmd/provider/connect.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,16 @@ var ConnectCmd = &cli.Command{
Action: connectCommand,
}

var connectFlags = []cli.Flag{
&cli.StringFlag{
Name: "indexermaddr",
Usage: "Indexer multiaddr to connect",
Aliases: []string{"imaddr"},
Required: true,
},
adminAPIFlag,
}

func connectCommand(cctx *cli.Context) error {
iaddr := cctx.String("indexermaddr")
req := &adminserver.ConnectReq{Maddr: iaddr}
Expand Down
19 changes: 19 additions & 0 deletions cmd/provider/daemon.go
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,25 @@ var DaemonCmd = &cli.Command{
Action: daemonCommand,
}

var carZeroLengthAsEOFFlagValue bool

var daemonFlags = []cli.Flag{
&cli.BoolFlag{
Name: "carZeroLengthAsEOF",
Aliases: []string{"cz"},
Usage: "Specifies whether zero-length blocks in CAR should be consideted as EOF.",
Value: false, // Default to disabled, consistent with go-car/v2 defaults.
Destination: &carZeroLengthAsEOFFlagValue,
},
&cli.StringFlag{
Name: "log-level",
Usage: "Set the log level",
EnvVars: []string{"GOLOG_LOG_LEVEL"},
Value: "info",
Required: false,
},
}

var tempBootstrapPeersKey = datastore.NewKey("/local/temp_bootstrap_peers")

func daemonCommand(cctx *cli.Context) error {
Expand Down
85 changes: 5 additions & 80 deletions cmd/provider/flags.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,82 +4,18 @@ import (
"github.com/urfave/cli/v2"
)

var announceFlags = []cli.Flag{
adminAPIFlag,
}

var announceHttpFlags = []cli.Flag{
adminAPIFlag,
indexerFlag,
}

var daemonFlags = []cli.Flag{
carZeroLengthAsEOFFlag,
&cli.StringFlag{
Name: "log-level",
Usage: "Set the log level",
EnvVars: []string{"GOLOG_LOG_LEVEL"},
Value: "info",
Required: false,
},
}

var connectFlags = []cli.Flag{
&cli.StringFlag{
Name: "indexermaddr",
Usage: "Indexer multiaddr to connect",
Aliases: []string{"imaddr"},
Required: true,
},
adminAPIFlag,
}

var indexerFlag = &cli.StringFlag{
Name: "indexer",
Usage: "Host or host:port of indexer to use",
Aliases: []string{"i"},
Required: true,
}

var addrFlag = &cli.StringSliceFlag{
Name: "addr",
Usage: `Provider address as multiaddr string, example: "/ip4/127.0.0.1/tcp/3103"`,
Aliases: []string{"a"},
Required: true,
}

var indexFlags = []cli.Flag{
indexerFlag,
addrFlag,
&cli.StringFlag{
Name: "mh",
Usage: "Specify multihash to use as indexer key",
Required: false,
},
&cli.StringFlag{
Name: "cid",
Usage: "Specify CID to use as indexer key",
Required: false,
},
&cli.StringFlag{
Name: "ctxid",
Usage: "Context ID",
Required: true,
},
metadataFlag,
}

var importCarFlags = []cli.Flag{
adminAPIFlag,
carPathFlag,
metadataFlag,
keyFlag,
}

var removeCarFlags = []cli.Flag{
adminAPIFlag,
optionalCarPathFlag,
keyFlag,
var indexerFlag = &cli.StringFlag{
Name: "indexer",
Usage: "Host or host:port of indexer to use",
Aliases: []string{"i"},
Required: true,
}

var (
Expand Down Expand Up @@ -136,14 +72,3 @@ var (
Destination: &adminAPIFlagValue,
}
)

var (
carZeroLengthAsEOFFlagValue bool
carZeroLengthAsEOFFlag = &cli.BoolFlag{
Name: "carZeroLengthAsEOF",
Aliases: []string{"cz"},
Usage: "Specifies whether zero-length blocks in CAR should be consideted as EOF.",
Value: false, // Default to disabled, consistent with go-car/v2 defaults.
Destination: &carZeroLengthAsEOFFlagValue,
}
)
7 changes: 7 additions & 0 deletions cmd/provider/import.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,13 @@ var (
md = metadata.Default.New()
)

var importCarFlags = []cli.Flag{
adminAPIFlag,
carPathFlag,
metadataFlag,
keyFlag,
}

func beforeImportCar(cctx *cli.Context) error {
if cctx.IsSet(keyFlag.Name) {
decoded, err := base64.StdEncoding.DecodeString(keyFlagValue)
Expand Down
21 changes: 21 additions & 0 deletions cmd/provider/index.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,27 @@ var IndexCmd = &cli.Command{
Action: indexCommand,
}

var indexFlags = []cli.Flag{
addrFlag,
indexerFlag,
&cli.StringFlag{
Name: "mh",
Usage: "Specify multihash to use as indexer key",
Required: false,
},
&cli.StringFlag{
Name: "cid",
Usage: "Specify CID to use as indexer key",
Required: false,
},
&cli.StringFlag{
Name: "ctxid",
Usage: "Context ID",
Required: true,
},
metadataFlag,
}

func indexCommand(cctx *cli.Context) error {
mhArg := cctx.String("mh")
cidArg := cctx.String("cid")
Expand Down
6 changes: 6 additions & 0 deletions cmd/provider/remove.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,12 @@ specified, they key is simply calculated as the SHA_256 hash of the given path.`
Before: beforeRemoveCar,
Action: doRemoveCar,
}

removeCarFlags = []cli.Flag{
adminAPIFlag,
optionalCarPathFlag,
keyFlag,
}
)

func beforeRemoveCar(cctx *cli.Context) error {
Expand Down

0 comments on commit d680791

Please sign in to comment.