Files
sm-sitemap-plugin/jobs.go
Jakub Zych 3359f1a196 feat: sitemap index and per-type files from a slot table (tracer)
- contract package: Filter, Listing and their types (D-95)
- golem15_sitemap_urls slot table and the new settings columns
- Rebuild over signpost Records, stable slot assignment, rebuild job
- GET /sitemap.xml index and GET /_sitemap/files/{file} from the table
2026-11-04 10:58:05 +01:00

27 lines
751 B
Go

package sitemap
import (
"context"
"git.golem15.com/golem15/sm-sitemap-plugin/classes"
"git.golem15.com/golem15/summercms/modules/conga"
"git.golem15.com/golem15/summercms/modules/pact"
)
// Jobs registers the rebuild job (classes.RebuildKind) on conga.
func (p *Plugin) Jobs() []pact.Job {
return []pact.Job{
conga.Job(p.rebuild, conga.MaxAttempts(3)),
}
}
// rebuild runs one rebuild of the slot table.
func (p *Plugin) rebuild(ctx context.Context, _ classes.RebuildArgs) error {
res, err := classes.Rebuild(ctx, p.app)
if err != nil {
return err
}
pluginLog.Info("golem15.sitemap: rebuilt", "listed", res.Listed, "files", res.Files, "added", len(res.Added), "changed", len(res.Changed), "removed", len(res.Removed))
return nil
}