master > master: code - go project hinzugefügt

This commit is contained in:
RD
2021-10-30 10:19:16 +02:00
parent 37dea15b2b
commit f4287dfd8f
12 changed files with 669 additions and 0 deletions

68
code/golang/main.go Normal file
View File

@@ -0,0 +1,68 @@
package main
/* ---------------------------------------------------------------- *
* IMPORTS
* ---------------------------------------------------------------- */
import (
"embed"
"os"
"ads/internal/core/logging"
"ads/internal/endpoints"
"ads/internal/setup"
"ads/internal/setup/cli"
"ads/internal/types"
)
/* ---------------------------------------------------------------- *
* GLOBAL VARIABLES
* ---------------------------------------------------------------- */
var (
// !!! NOTE: do not remove the following "comment", as it is a preprocessing instruction !!!
//go:embed assets/*
res embed.FS
assets = map[string]string{
"version": "assets/VERSION",
"logo": "assets/LOGO",
"help": "assets/HELP",
}
)
/* ---------------------------------------------------------------- *
* METHOD main
* ---------------------------------------------------------------- */
func main() {
var err error
var arguments *types.CliArguments
// set assets
setup.Res = res
setup.Assets = assets
// parse cli arguments
arguments, err = cli.ParseCli(os.Args)
// initialise logging options
if err == nil {
logging.SetQuietMode(*arguments.Quiet)
logging.SetDebugMode(*arguments.Debug)
logging.SetAnsiMode(arguments.ShowColour())
}
if err == nil {
if arguments.Version.Happened() {
endpoints.Version()
} else if arguments.Run.Happened() {
err = endpoints.Run(*arguments.ConfigFile)
} else { // } else if arguments.Help.Happened() {
endpoints.Help()
}
}
if err != nil {
logging.LogFatal(err)
}
}