package seo import ( "context" "git.golem15.com/golem15/sm-seo-plugin/classes" "git.golem15.com/golem15/summercms/modules/conga" "git.golem15.com/golem15/summercms/modules/pact" ) // Jobs registers the entry generation job (D-94) on conga. func (p *Plugin) Jobs() []pact.Job { return []pact.Job{ conga.Job(p.generateEntries, conga.MaxAttempts(3)), } } // generateEntries runs one generation job. func (p *Plugin) generateEntries(ctx context.Context, args classes.GenerateEntriesArgs) error { svc := p.Service() if svc == nil { return classes.ErrNotBooted } res, err := svc.GenerateEntries(ctx, args.Type) if err != nil { return err } pluginLog.Info("golem15.seo: entries generated", "type", args.Type, "created", res.Created, "updated", res.Updated) return nil } var _ pact.HasJobs = (*Plugin)(nil)