Skip to content

Commit bd34ed3

Browse files
committed
register and run job in quartz scheduler #21
1 parent 9c2e5c2 commit bd34ed3

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

src/NTorSpectator.Observer/Program.cs

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
using NTorSpectator.Observer.TorIntegration;
77
using NTorSpectator.Services;
88
using Prometheus;
9+
using Quartz;
910
using Refit;
1011
using Serilog;
1112
using Serilog.Formatting.Compact;
@@ -39,7 +40,21 @@
3940
.AddBizLogic()
4041
.AddDatabase(builder.Configuration)
4142
.AddTransient<TorControlManager>()
42-
.AddHostedService<Spectator>();
43+
.AddTransient<SpectatorJob>()
44+
.AddHostedService<SitesUpdater>();
45+
46+
builder.Services.AddQuartz(cfg =>
47+
{
48+
cfg.UseMicrosoftDependencyInjectionJobFactory();
49+
50+
var jobDetail = JobBuilder.Create<SpectatorJob>()
51+
.WithDescription("Tor spectator job")
52+
.WithIdentity("tor-spectator")
53+
.Build();
54+
cfg.AddJob<SpectatorJob>(jobKey: jobDetail.Key, configure: j => {});
55+
cfg.AddTrigger(t => t.WithCronSchedule("0 0 * * * ?").ForJob(jobDetail));
56+
});
57+
builder.Services.AddQuartzServer(cfg => cfg.WaitForJobsToComplete = false);
4358

4459
builder.Services
4560
.AddRefitClient<IMastodonClient>(sp =>

0 commit comments

Comments
 (0)