diff --git a/application/source/command.go b/application/source/command.go index 405a53fd05552e385aa555de7e2cd1627ab7bc93..829d1e33187cc4583d8a34bce8a3ddf745056c7e 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 48433a389bae8c8517ab41c265337cd4f74de90a..06be5ebd02a1e2664760235eb916ffee6e75af35 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()