feat: add scheduler

This commit is contained in:
Viktor Varland 2025-04-14 12:35:53 +02:00
parent 26ddc8ac66
commit 8eb2193f3c
Signed by: varl
GPG key ID: 7459F0B410115EE8

46
main.go
View file

@ -10,8 +10,32 @@ import (
"git.meatbag.se/varl/subsyt/internal/dl" "git.meatbag.se/varl/subsyt/internal/dl"
"git.meatbag.se/varl/subsyt/internal/metadata" "git.meatbag.se/varl/subsyt/internal/metadata"
"git.meatbag.se/varl/subsyt/internal/opml" "git.meatbag.se/varl/subsyt/internal/opml"
"git.meatbag.se/varl/subsyt/internal/scheduler"
) )
func run(cfg config.Config) {
provider := cfg.Provider["youtube"]
opml, err := opml.Load(provider.Opml_file)
if err != nil {
panic(err)
}
for _, outlines := range opml.Body.Outline {
log.Printf("Archiving videos from OPML: %s\n", outlines.Title)
for _, outline := range outlines.Outlines {
dl.Youtube(dl.Download{
Url: outline.XmlUrl,
OutDir: filepath.Join(cfg.Out_dir, outline.Title),
DryRun: cfg.Dry_run,
}, provider)
metadata.Generate(cfg.Out_dir, outline.Title, cfg.Dry_run)
}
}
}
func main() { func main() {
configPtr := flag.String("config", "", "path to config file") configPtr := flag.String("config", "", "path to config file")
flag.Parse() flag.Parse()
@ -34,24 +58,6 @@ func main() {
panic(err) panic(err)
} }
provider := cfg.Provider["youtube"] s := scheduler.Scheduler{}
s.Start(run, cfg)
opml, err := opml.Load(provider.Opml_file)
if err != nil {
panic(err)
}
for _, outlines := range opml.Body.Outline {
log.Printf("Archiving videos from OPML: %s\n", outlines.Title)
for _, outline := range outlines.Outlines {
dl.Youtube(dl.Download{
Url: outline.XmlUrl,
OutDir: filepath.Join(cfg.Out_dir, outline.Title),
DryRun: cfg.Dry_run,
}, provider)
metadata.Generate(cfg.Out_dir, outline.Title, cfg.Dry_run)
}
}
} }