yt-gen-app/lib/config.go

50 lines
2.9 KiB
Go
Raw Permalink Normal View History

2023-06-23 14:54:47 +03:00
package lib
import (
"fmt"
"git.ymnuktech.ru/ymnuk/yt-gen-app/structs"
"github.com/alexflint/go-arg"
2023-06-23 14:54:47 +03:00
)
var AppConfig struct {
IsYaml bool `arg:"-"`
IsJson bool `arg:"-"`
IsHelp bool `arg:"-"`
Help bool `arg:"-h,--help" help:"Отобразить текущую справку"` // Вывести справку на экран
Filename string `arg:"-m,--metafile" help:"Файл с метоописанием в формате YAML или JSON"` // Файл с метоописанием в формате YAML или JSON
OutdirBackend string `arg:"-b,--outdir-backend" help:"Директория для сохранения кода сервера"` // Директория для сохранения кода сервера
OutdirFrontend string `arg:"-f,--outdir-frontend" help:"Директория для сохранения кода клиента"` // Директория для сохранения кода клиента
OutdirDoc string `arg:"-d,--outdir-doc" help:"Директория для сохранения сгенерированной документации по проекта"`
IsMarkdown bool `arg:"--format-markdown" help:"Выходная документация в формате Markdown"`
IsHtml bool `arg:"--format-html" help:"Выходная документация в формате HTML"`
KrokiAddr string `arg:"--kroki-addr" default:"https://kroki.io" help:"Адрес сервера Kroki."`
IsSingleDoc bool `arg:"--single-doc" help:"Генерировать документацию в одном файле без разделения"`
2023-06-23 14:54:47 +03:00
}
var Project *structs.Project
func PrepareParams() {
//parseArgs()
arg.MustParse(&AppConfig)
2023-06-23 14:54:47 +03:00
}
/*func parseArgs() {
2023-06-23 14:54:47 +03:00
flag.StringVar(&AppConfig.Filename, "metafile", "", "Путь к файлу с описанием для генерации кода")
flag.StringVar(&AppConfig.OutdirBackend, "outdir-backend", "", "Путь к директории для сохранения генерируемого кода сервера")
flag.StringVar(&AppConfig.OutdirFrontend, "outdir-frontend", "", "Путь к директории для сохранения генерируемого кода клиенат")
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-23 14:54:47 +03:00
func HelpPrint() {
fmt.Println(`Утилита предназначена для генерирования некоторых частей кода на основе файла с описанием для облегчения и ускорения написания приложений. Использование:
yt-gen-app --metafile <Файл yaml> [--outdir <Директория для сохранения>]`)
}