Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
36 lines
649 B
Go
36 lines
649 B
Go
package sitemap
|
|
|
|
import (
|
|
"os"
|
|
"time"
|
|
"videoweb/pub/common/log"
|
|
)
|
|
|
|
func StartSitemapJob(interval time.Duration, outDir string) {
|
|
if interval <= 0 {
|
|
interval = 6 * time.Hour
|
|
}
|
|
if outDir == "" {
|
|
outDir = OutputDir
|
|
}
|
|
|
|
go func() {
|
|
if mkErr := os.MkdirAll(outDir, 0755); mkErr != nil {
|
|
log.Error("StartSitemapJob mkdir failed", log.E(mkErr))
|
|
return
|
|
}
|
|
if mkErr := os.MkdirAll(PageOutputDir, 0755); mkErr != nil {
|
|
log.Error("StartSitemapJob mkdir page dir failed", log.E(mkErr))
|
|
return
|
|
}
|
|
|
|
GenerateSitemap()
|
|
|
|
ticker := time.NewTicker(interval)
|
|
defer ticker.Stop()
|
|
for range ticker.C {
|
|
GenerateSitemap()
|
|
}
|
|
}()
|
|
}
|