Init commit.
Add: the initial project structure. Add: root command and a `version` command that print the version string of the app.
This commit is contained in:
		
							
								
								
									
										28
									
								
								cmd/root.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								cmd/root.go
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,28 @@
 | 
			
		||||
package cmd
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"os"
 | 
			
		||||
 | 
			
		||||
	"github.com/spf13/cobra"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// rootCmd represents the base command when called without any subcommands
 | 
			
		||||
var rootCmd = &cobra.Command{
 | 
			
		||||
	Use:   "mygo.server",
 | 
			
		||||
	Short: "MyGO server application",
 | 
			
		||||
	Long: `MyGO is a WebDisk (Cloud Drive) server.
 | 
			
		||||
This is the server (backend) application for MyGO.`,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Execute adds all child commands to the root command and sets flags appropriately.
 | 
			
		||||
// This is called by main.main(). It only needs to happen once to the rootCmd.
 | 
			
		||||
func Execute() {
 | 
			
		||||
	err := rootCmd.Execute()
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		os.Exit(1)
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func init() {
 | 
			
		||||
	cobra.OnInitialize()
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										27
									
								
								cmd/version.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								cmd/version.go
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,27 @@
 | 
			
		||||
/*
 | 
			
		||||
Copyright © 2025 NAME HERE <EMAIL ADDRESS>
 | 
			
		||||
 | 
			
		||||
*/
 | 
			
		||||
package cmd
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
 | 
			
		||||
	"github.com/spf13/cobra"
 | 
			
		||||
 | 
			
		||||
	"github.com/dhao2001/mygo.server/internal/app"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// versionCmd represents the version command
 | 
			
		||||
var versionCmd = &cobra.Command{
 | 
			
		||||
	Use:   "version",
 | 
			
		||||
	Short: "Print version information",
 | 
			
		||||
	Long: "Print app version to stdout.",
 | 
			
		||||
	Run: func(cmd *cobra.Command, args []string) {
 | 
			
		||||
		fmt.Printf("v%s\n", app.Version)
 | 
			
		||||
	},
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func init() {
 | 
			
		||||
	rootCmd.AddCommand(versionCmd)
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user