2023-06-23 14:54:47 +03:00
|
|
|
|
package lib
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"flag"
|
|
|
|
|
"fmt"
|
|
|
|
|
"os"
|
|
|
|
|
|
|
|
|
|
"git.ymnuktech.ru/ymnuk/yt-gen-app/structs"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
var AppConfig struct {
|
|
|
|
|
IsYaml bool
|
|
|
|
|
IsJson bool
|
2023-06-26 15:35:24 +03:00
|
|
|
|
IsHelp bool
|
2023-06-23 14:54:47 +03:00
|
|
|
|
|
|
|
|
|
Help bool // Вывести справку на экран
|
|
|
|
|
Filename string // Файл с метоописанием в формате YAML или JSON
|
|
|
|
|
OutdirBackend string // Директория для сохранения кода сервера
|
|
|
|
|
OutdirFrontend string // Директория для сохранения кода клиента
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var Project *structs.Project
|
|
|
|
|
|
|
|
|
|
func PrepareParams() {
|
|
|
|
|
parseArgs()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func parseArgs() {
|
|
|
|
|
flag.StringVar(&AppConfig.Filename, "metafile", "", "Путь к файлу с описанием для генерации кода")
|
|
|
|
|
flag.StringVar(&AppConfig.OutdirBackend, "outdir-backend", "", "Путь к директории для сохранения генерируемого кода сервера")
|
|
|
|
|
flag.StringVar(&AppConfig.OutdirFrontend, "outdir-frontend", "", "Путь к директории для сохранения генерируемого кода клиенат")
|
2023-06-26 15:35:24 +03:00
|
|
|
|
flag.BoolVar(&AppConfig.IsHelp, "help", false, "Справка")
|
2023-06-23 14:54:47 +03:00
|
|
|
|
flag.Parse()
|
|
|
|
|
flag.Usage = func() {
|
|
|
|
|
fmt.Fprintf(flag.CommandLine.Output(), "Usage of %s:\n", os.Args[0])
|
|
|
|
|
flag.PrintDefaults()
|
|
|
|
|
}
|
2023-06-26 15:35:24 +03:00
|
|
|
|
|
2023-06-23 14:54:47 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func HelpPrint() {
|
|
|
|
|
fmt.Println(`Утилита предназначена для генерирования некоторых частей кода на основе файла с описанием для облегчения и ускорения написания приложений. Использование:
|
|
|
|
|
yt-gen-app --metafile <Файл yaml> [--outdir <Директория для сохранения>]`)
|
|
|
|
|
}
|