elsa-core/src/samples/worker/Elsa.Samples.DistributedLock/Program.cs

29 lines
1.2 KiB
C#
Raw Normal View History

using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using System.Threading.Tasks;
using Elsa.Extensions;
namespace Elsa.Samples.DistributedLock
{
/// <summary>
/// Demonstrates the use of a distributed locking provider.
/// Make sure that you have a Redis host installed or use the docker-compose.yaml file to run it on Docker.
/// </summary>
internal static class Program
{
private static async Task Main() => await CreateHostBuilder().UseConsoleLifetime().Build().RunAsync();
2020-12-12 13:07:17 +00:00
private static IHostBuilder CreateHostBuilder() =>
Host.CreateDefaultBuilder()
.ConfigureServices(
2020-12-12 13:07:17 +00:00
(_, services) =>
{
services
.AddRedis("localhost:6379,abortConnect=false")
.AddElsa(elsa => elsa.ConfigureDistributedLockProvider(options => options.UseRedisLockProvider())
.AddConsoleActivities()
.AddQuartzTemporalActivities()
.AddWorkflow<RecurringWorkflow>());
});
}
}