feat: add scheduler
This commit is contained in:
parent
26ddc8ac66
commit
8eb2193f3c
46
main.go
46
main.go
|
|
@ -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)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue