mirror of
https://github.com/QuilibriumNetwork/ceremonyclient.git
synced 2026-02-21 18:37:26 +08:00
79 lines
1.8 KiB
Go
79 lines
1.8 KiB
Go
package node
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
"os/user"
|
|
|
|
"github.com/spf13/cobra"
|
|
"source.quilibrium.com/quilibrium/monorepo/client/utils"
|
|
"source.quilibrium.com/quilibrium/monorepo/node/config"
|
|
)
|
|
|
|
var (
|
|
// Base URL for Quilibrium releases
|
|
baseReleaseURL = "https://releases.quilibrium.com"
|
|
|
|
// Default symlink path for the node binary
|
|
defaultSymlinkPath = "/usr/local/bin/quilibrium-node"
|
|
logPath = "/var/log/quilibrium"
|
|
|
|
// Default user to run the node
|
|
nodeUser = "quilibrium"
|
|
|
|
ServiceName = "quilibrium-node"
|
|
|
|
ConfigDirs = "/home/quilibrium/configs"
|
|
NodeConfigToRun = "/home/quilibrium/configs/default"
|
|
|
|
// Default config file name
|
|
defaultConfigFileName = "node.yaml"
|
|
|
|
osType string
|
|
arch string
|
|
|
|
configDirectory string
|
|
NodeConfig *config.Config
|
|
NodeUser *user.User
|
|
)
|
|
|
|
// NodeCmd represents the node command
|
|
var NodeCmd = &cobra.Command{
|
|
Use: "node",
|
|
Short: "Quilibrium node commands",
|
|
Long: `Run Quilibrium node commands.`,
|
|
PersistentPreRun: func(cmd *cobra.Command, args []string) {
|
|
var userLookup *user.User
|
|
var err error
|
|
userLookup, err = user.Lookup(nodeUser)
|
|
if err != nil {
|
|
userLookup, err = InstallQuilibriumUser()
|
|
if err != nil {
|
|
fmt.Printf("error installing quilibrium user: %s\n", err)
|
|
os.Exit(1)
|
|
}
|
|
}
|
|
NodeUser = userLookup
|
|
},
|
|
Run: func(cmd *cobra.Command, args []string) {
|
|
|
|
},
|
|
}
|
|
|
|
func init() {
|
|
NodeCmd.PersistentFlags().StringVar(&configDirectory, "config", ".config", "config directory (default is .config/)")
|
|
|
|
// Add subcommands
|
|
NodeCmd.AddCommand(installCmd)
|
|
NodeCmd.AddCommand(updateNodeCmd)
|
|
NodeCmd.AddCommand(nodeServiceCmd)
|
|
localOsType, localArch, err := utils.GetSystemInfo()
|
|
if err != nil {
|
|
fmt.Fprintf(os.Stderr, "Error: %v\n", err)
|
|
return
|
|
}
|
|
|
|
osType = localOsType
|
|
arch = localArch
|
|
}
|