txverifier.go 1.5 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package txverifier
  2. import (
  3. "github.com/spf13/cobra"
  4. )
  5. var TransferVerifierCmd = &cobra.Command{
  6. Use: "transfer-verifier",
  7. Short: "Transfer Verifier",
  8. }
  9. var (
  10. // logLevel is a global flag that is used to set the logging level for the TransferVerifierCmd
  11. logLevel *string
  12. // telemetryLokiUrl is a global flag that is used to set the Loki cloud logging URL for the TransferVerifierCmd.
  13. telemetryLokiUrl *string
  14. // telemetryNodeName is a global flag that is used to set the node name used in telemetry for the TransferVerifierCmd.
  15. telemetryNodeName *string
  16. )
  17. // init initializes the global flags and subcommands for the TransferVerifierCmd.
  18. // It sets up a persistent flag for logging level with a default value of "info"
  19. // and adds subcommands for EVM and Sui transfer verification.
  20. func init() {
  21. // Global flags
  22. logLevel = TransferVerifierCmd.PersistentFlags().String("logLevel", "info", "Logging level (debug, info, warn, error, dpanic, panic, fatal)")
  23. telemetryLokiUrl = TransferVerifierCmd.PersistentFlags().String("telemetryLokiUrl", "", "Loki cloud logging URL")
  24. telemetryNodeName = TransferVerifierCmd.PersistentFlags().String("telemetryNodeName", "", "Node name used in telemetry")
  25. // Either both loki flags should be present or neither of them.
  26. TransferVerifierCmd.MarkFlagsRequiredTogether("telemetryLokiUrl", "telemetryNodeName")
  27. // Subcommands corresponding to chains supported by the Transfer Verifier.
  28. TransferVerifierCmd.AddCommand(TransferVerifierCmdEvm)
  29. TransferVerifierCmd.AddCommand(TransferVerifierCmdSui)
  30. }