1
0
mirror of https://github.com/bitwarden/server.git synced 2025-02-17 02:01:53 +01:00

admin keep alive job

This commit is contained in:
Kyle Spearrin 2019-08-04 20:37:05 -04:00
parent 379d1b60bd
commit db7d586ee6
2 changed files with 34 additions and 0 deletions

View File

@ -0,0 +1,28 @@
using System.Net.Http;
using System.Threading.Tasks;
using Bit.Core;
using Bit.Core.Jobs;
using Microsoft.Extensions.Logging;
using Quartz;
namespace Bit.Admin.Jobs
{
public class AliveJob : BaseJob
{
private readonly GlobalSettings _globalSettings;
private HttpClient _httpClient = new HttpClient();
public AliveJob(
GlobalSettings globalSettings,
ILogger<AliveJob> logger)
: base(logger)
{
_globalSettings = globalSettings;
}
protected async override Task ExecuteJobAsync(IJobExecutionContext context)
{
await _httpClient.GetAsync(_globalSettings.BaseServiceUri.Admin);
}
}
}

View File

@ -29,6 +29,10 @@ namespace Bit.Admin.Jobs
var timeZone = _globalSettings.SelfHosted ? TimeZoneInfo.Utc :
TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time");
var everyTopOfTheHourTrigger = TriggerBuilder.Create()
.StartNow()
.WithCronSchedule("0 0 * * * ?")
.Build();
var everyFridayAt10pmTrigger = TriggerBuilder.Create()
.StartNow()
.WithCronSchedule("0 0 22 ? * FRI", x => x.InTimeZone(timeZone))
@ -44,6 +48,7 @@ namespace Bit.Admin.Jobs
Jobs = new List<Tuple<Type, ITrigger>>
{
new Tuple<Type, ITrigger>(typeof(AliveJob), everyTopOfTheHourTrigger),
new Tuple<Type, ITrigger>(typeof(DatabaseExpiredGrantsJob), everyFridayAt10pmTrigger),
new Tuple<Type, ITrigger>(typeof(DatabaseUpdateStatisticsJob), everySaturdayAtMidnightTrigger),
new Tuple<Type, ITrigger>(typeof(DatabaseRebuildlIndexesJob), everySundayAtMidnightTrigger)
@ -54,6 +59,7 @@ namespace Bit.Admin.Jobs
public static void AddJobsServices(IServiceCollection services)
{
services.AddTransient<AliveJob>();
services.AddTransient<DatabaseUpdateStatisticsJob>();
services.AddTransient<DatabaseRebuildlIndexesJob>();
services.AddTransient<DatabaseExpiredGrantsJob>();