Source/NuGetGallery.Worker/Jobs/BackupPackagesJob.cs (37 lines of code) (raw):
using System;
using System.ComponentModel.Composition;
using System.Data.SqlClient;
using NuGetGallery.Operations;
namespace NuGetGallery.Worker.Jobs
{
[Export(typeof(WorkerJob))]
public class BackupPackagesJob : WorkerJob
{
public override TimeSpan Period
{
get
{
return TimeSpan.FromMinutes(10);
}
}
public override TimeSpan Offset
{
get
{
return TimeSpan.FromMinutes(1);
}
}
public override void RunOnce()
{
Logger.Info("Starting backup packages task.");
ExecuteTask(new BackupPackagesTask
{
ConnectionString = new SqlConnectionStringBuilder(Settings.MainConnectionString),
StorageAccount = Settings.MainStorage,
BackupStorage = Settings.BackupStorage,
WhatIf = Settings.WhatIf
});
Logger.Info("Finished backup packages task.");
}
}
}