1
0
mirror of https://git.sr.ht/~adnano/kiln synced 2024-09-19 01:31:36 +02:00
kiln/main.go

45 lines
729 B
Go
Raw Normal View History

2020-09-22 22:42:14 +02:00
package main
import (
"log"
2020-09-29 01:54:48 +02:00
)
2020-09-22 22:42:14 +02:00
func main() {
2020-10-01 03:57:59 +02:00
if err := run(); err != nil {
2020-09-22 22:42:14 +02:00
log.Fatal(err)
}
}
2020-11-20 18:07:38 +01:00
func run() error {
// Load config
2021-03-20 07:02:36 +01:00
cfg, err := LoadConfig("config.toml")
if err != nil {
2020-11-20 18:07:38 +01:00
return err
}
2021-03-20 07:18:15 +01:00
if err := cfg.LoadTemplates("templates"); err != nil {
2020-11-20 18:07:38 +01:00
return err
2020-10-01 04:14:10 +02:00
}
for _, task := range cfg.Tasks {
// Load content
dir := NewDir("")
dir.inputExt = task.Input
dir.outputExt = task.Output
dir.templateExt = task.Template
if err := dir.read("content", ""); err != nil {
return err
}
dir.sort()
// Manipulate content
if err := dir.manipulate(cfg); err != nil {
return err
}
// Write content
if err := dir.write(task.Destination, task); err != nil {
return err
}
2021-02-28 03:53:16 +01:00
}
2020-09-22 22:42:14 +02:00
return nil
}