private static IHostBuilder CreateHostBuilder()

in dotnet-core/AWS.IoT.FleetProvisioning/Program.cs [43:73]


        private static IHostBuilder CreateHostBuilder(string[] args)
        {
            ISettings settings = null;

            return Host.CreateDefaultBuilder(args)
                .ConfigureLogging(loggingBuilder =>
                {
                    loggingBuilder.ClearProviders();
                    loggingBuilder.SetMinimumLevel(LogLevel.None);
                    loggingBuilder.AddConsole();
                })
                .ConfigureAppConfiguration(builder =>
                {
                    var configurationRoot = builder.Build();
                    var configurationSection = configurationRoot.GetSection(nameof(Settings));
                    settings = configurationSection.Get<Settings>();
                })
                .ConfigureServices(services =>
                {
                    // Add settings to our DI container for later uses
                    services.AddSingleton(settings);

                    services.AddTransient<ICertificateLoader, CertificateLoader>();
                    services.AddTransient<IProvisioningClient, ProvisioningClient>();
                    services.AddTransient<IPermanentClient, PermanentClient>();
                    services.AddTransient<IDeviceProvisioningHandler, DeviceProvisioningHandler>();

                    // IMPORTANT! Register our application entry point
                    services.AddTransient<ConsoleApplication>();
                });
        }