mirror of
https://github.com/volodymyrsmirnov/MalwareMultiScan.git
synced 2025-08-23 21:12:22 +00:00
50 lines
1.8 KiB
C#
50 lines
1.8 KiB
C#
using System.Diagnostics.CodeAnalysis;
|
|
using System.Threading.Tasks;
|
|
using MalwareMultiScan.Backends.Extensions;
|
|
using MalwareMultiScan.Backends.Services.Implementations;
|
|
using MalwareMultiScan.Backends.Services.Interfaces;
|
|
using MalwareMultiScan.Scanner.Services;
|
|
using MalwareMultiScan.Shared.Extensions;
|
|
using MalwareMultiScan.Shared.Services.Interfaces;
|
|
using Microsoft.Extensions.Configuration;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using Microsoft.Extensions.Hosting;
|
|
using Microsoft.Extensions.Logging;
|
|
|
|
namespace MalwareMultiScan.Scanner
|
|
{
|
|
[ExcludeFromCodeCoverage]
|
|
internal static class Program
|
|
{
|
|
public static async Task Main(string[] args)
|
|
{
|
|
await Host.CreateDefaultBuilder(args)
|
|
.ConfigureLogging((context, builder) =>
|
|
{
|
|
builder.AddConsole();
|
|
builder.AddConfiguration(context.Configuration);
|
|
})
|
|
.ConfigureAppConfiguration(builder =>
|
|
{
|
|
builder.AddJsonFile("appsettings.json");
|
|
builder.AddEnvironmentVariables();
|
|
})
|
|
.ConfigureServices((context, services) =>
|
|
{
|
|
services.AddConsul(context.Configuration);
|
|
services.AddScanBackend(context.Configuration);
|
|
|
|
services.AddHangfire(context.Configuration,
|
|
context.Configuration.GetValue<string>("BACKEND_ID"));
|
|
|
|
services.AddSingleton<IProcessRunner, ProcessRunner>();
|
|
services.AddSingleton<IScanBackgroundJob, ScanBackgroundJob>();
|
|
|
|
services.AddHostedService<ConsulHostedService>();
|
|
})
|
|
.UseConsoleLifetime()
|
|
.Build()
|
|
.RunAsync();
|
|
}
|
|
}
|
|
} |