From 50d38c5d6e859c57d0998a79df1229f9b119576e Mon Sep 17 00:00:00 2001 From: Volker Schukai <volker.schukai@schukai.com> Date: Tue, 27 Dec 2022 17:37:14 +0100 Subject: [PATCH] feat: flag for change data name --- application/source/command.go | 12 +++++++++--- application/source/main.go | 5 ++++- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/application/source/command.go b/application/source/command.go index 405a53f..829d1e3 100644 --- a/application/source/command.go +++ b/application/source/command.go @@ -18,8 +18,9 @@ type Definition struct { Verbose bool `short:"v" long:"verbose" description:"Show verbose debug information"` Template struct { Prepare struct { - Input string `short:"i" long:"input" description:"Directory with html files to prepare" required:"true"` - Output string `short:"o" long:"output" description:"Directory to save prepared html files" required:"true"` + Input string `short:"i" long:"input" description:"Directory with html files to prepare" required:"true"` + Output string `short:"o" long:"output" description:"Directory to save prepared html files" required:"true"` + DataFile string `short:"d" long:"data-file" description:"Name of the data file to use, default is data.yaml"` } `command:"prepare" description:"Prepare content from a file" call:"PrepareTemplate"` } `command:"template" description:"Template commands"` HTML struct { @@ -107,7 +108,12 @@ func (d *Definition) PrepareTemplate(s *xflags.Settings[Definition]) { if err != nil { s.AddError(err) } else { - o := path.Join(d.Template.Prepare.Output, "data.yaml") + + if d.Template.Prepare.DataFile == "" { + d.Template.Prepare.DataFile = "data.yaml" + } + + o := path.Join(d.Template.Prepare.Output, d.Template.Prepare.DataFile) os.WriteFile(o, data, os.ModePerm) } diff --git a/application/source/main.go b/application/source/main.go index 48433a3..06be5eb 100644 --- a/application/source/main.go +++ b/application/source/main.go @@ -10,7 +10,10 @@ func main() { var settings *xflags.Settings[Definition] - settings = xflags.New(os.Args[0], Definition{}) + definition := Definition{} + definition.Template.Prepare.DataFile = "data.yaml" + + settings = xflags.New(os.Args[0], definition) settings.Parse(os.Args[1:]) settings.Execute() -- GitLab