flags.go 959 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10
package flags

import (
	"fmt"
	"strings"

	"github.com/ethereum-optimism/optimism/op-node/chaincfg"
	"github.com/ethereum-optimism/optimism/op-node/flags"
	opservice "github.com/ethereum-optimism/optimism/op-service"
	oplog "github.com/ethereum-optimism/optimism/op-service/log"
11
	"github.com/urfave/cli/v2"
12 13 14 15
)

const envVarPrefix = "OP_BOOTNODE"

16
func prefixEnvVars(name string) []string {
17
	return opservice.PrefixEnvVar(envVarPrefix, name)
18 19
}

20
var (
21 22 23 24
	RollupConfig = &cli.StringFlag{
		Name:    flags.RollupConfig.Name,
		Usage:   "Rollup chain parameters",
		EnvVars: prefixEnvVars("ROLLUP_CONFIG"),
25
	}
26 27 28 29
	Network = &cli.StringFlag{
		Name:    flags.Network.Name,
		Usage:   fmt.Sprintf("Predefined network selection. Available networks: %s", strings.Join(chaincfg.AvailableNetworks(), ", ")),
		EnvVars: prefixEnvVars("NETWORK"),
30 31 32 33 34 35 36 37 38 39 40
	}
)

var Flags = []cli.Flag{
	RollupConfig,
	Network,
}

func init() {
	Flags = append(Flags, oplog.CLIFlags(envVarPrefix)...)
}