diff --git a/samples/SampleStartups/StartupBlockingOnStart.cs b/samples/SampleStartups/StartupBlockingOnStart.cs index f6250b7676..1bdecf438a 100644 --- a/samples/SampleStartups/StartupBlockingOnStart.cs +++ b/samples/SampleStartups/StartupBlockingOnStart.cs @@ -2,6 +2,7 @@ using System; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Http; +using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; // Note that this sample will not run. It is only here to illustrate usage patterns. @@ -29,8 +30,10 @@ namespace SampleStartups // Entry point for the application. public static void Main(string[] args) { + var config = new ConfigurationBuilder().AddCommandLine(args).Build(); + var host = new WebHostBuilder() - .UseDefaultHostingConfiguration(args) + .UseConfiguration(config) .UseStartup() .Build(); diff --git a/samples/SampleStartups/StartupConfigureAddresses.cs b/samples/SampleStartups/StartupConfigureAddresses.cs index 1cea80e951..3fe6c20d0b 100644 --- a/samples/SampleStartups/StartupConfigureAddresses.cs +++ b/samples/SampleStartups/StartupConfigureAddresses.cs @@ -1,6 +1,7 @@ using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Http; +using Microsoft.Extensions.Configuration; // Note that this sample will not run. It is only here to illustrate usage patterns. @@ -20,8 +21,10 @@ namespace SampleStartups // Entry point for the application. public static void Main(string[] args) { + var config = new ConfigurationBuilder().AddCommandLine(args).Build(); + var host = new WebHostBuilder() - .UseDefaultHostingConfiguration(args) + .UseConfiguration(config) .UseStartup() .UseUrls("http://localhost:5000", "http://localhost:5001") .Build(); diff --git a/samples/SampleStartups/StartupExternallyControlled.cs b/samples/SampleStartups/StartupExternallyControlled.cs index 571167a893..0f91856701 100644 --- a/samples/SampleStartups/StartupExternallyControlled.cs +++ b/samples/SampleStartups/StartupExternallyControlled.cs @@ -29,8 +29,9 @@ namespace SampleStartups public void Start() { _host = new WebHostBuilder() - .UseStartup() - .Start(_urls.ToArray()); + .UseServer("Microsoft.AspNetCore.Server.Kestrel") + .UseStartup() + .Start(_urls.ToArray()); } public void Stop() diff --git a/samples/SampleStartups/StartupFullControl.cs b/samples/SampleStartups/StartupFullControl.cs index 186313444c..200d7c932d 100644 --- a/samples/SampleStartups/StartupFullControl.cs +++ b/samples/SampleStartups/StartupFullControl.cs @@ -2,6 +2,7 @@ using System; using System.IO; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; +using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; @@ -13,7 +14,14 @@ namespace SampleStartups { public static void Main(string[] args) { + var config = new ConfigurationBuilder() + .AddCommandLine(args) + .AddEnvironmentVariables(prefix: "ASPNETCORE_") + .AddJsonFile("hosting.json", optional: true) + .Build(); + var host = new WebHostBuilder() + .UseConfiguration(config) // Default set of configurations to use, may be subsequently overridden .UseServer("Microsoft.AspNetCore.Server.Kestrel") // Set the server manually .UseContentRoot(Directory.GetCurrentDirectory()) // Override the content root with the current directory .UseUrls("http://*:1000", "https://*:902") diff --git a/samples/SampleStartups/StartupHelloWorld.cs b/samples/SampleStartups/StartupHelloWorld.cs index 2983742ca0..3ac09bcb63 100644 --- a/samples/SampleStartups/StartupHelloWorld.cs +++ b/samples/SampleStartups/StartupHelloWorld.cs @@ -21,7 +21,7 @@ namespace SampleStartups public static void Main(string[] args) { var host = new WebHostBuilder() - .UseDefaultHostingConfiguration(args) + .UseServer("Microsoft.AspNetCore.Server.Kestrel") .UseStartup() .Build(); diff --git a/samples/SampleStartups/project.json b/samples/SampleStartups/project.json index 42057409b1..b58d4773df 100644 --- a/samples/SampleStartups/project.json +++ b/samples/SampleStartups/project.json @@ -1,7 +1,10 @@ { "version": "1.0.0-*", "dependencies": { - "Microsoft.AspNetCore.Hosting": "1.0.0-*" + "Microsoft.AspNetCore.Hosting": "1.0.0-*", + "Microsoft.Extensions.Configuration.CommandLine": "1.0.0-*", + "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0-*", + "Microsoft.Extensions.Configuration.Json": "1.0.0-*" }, "frameworks": { "net451": {}, diff --git a/src/Microsoft.AspNetCore.Hosting.Abstractions/WebHostDefaults.cs b/src/Microsoft.AspNetCore.Hosting.Abstractions/WebHostDefaults.cs index 2823c4c116..9fd517159a 100644 --- a/src/Microsoft.AspNetCore.Hosting.Abstractions/WebHostDefaults.cs +++ b/src/Microsoft.AspNetCore.Hosting.Abstractions/WebHostDefaults.cs @@ -15,8 +15,5 @@ namespace Microsoft.AspNetCore.Hosting public static readonly string CaptureStartupErrorsKey = "captureStartupErrors"; public static readonly string ServerUrlsKey = "server.urls"; public static readonly string ContentRootKey = "contentRoot"; - - public static readonly string HostingJsonFile = "hosting.json"; - public static readonly string EnvironmentVariablesPrefix = "ASPNETCORE_"; } } diff --git a/src/Microsoft.AspNetCore.Hosting/Internal/HostingEnvironmentExtensions.cs b/src/Microsoft.AspNetCore.Hosting/Internal/HostingEnvironmentExtensions.cs index 7bfc0a7d0d..c4ecca6fa0 100644 --- a/src/Microsoft.AspNetCore.Hosting/Internal/HostingEnvironmentExtensions.cs +++ b/src/Microsoft.AspNetCore.Hosting/Internal/HostingEnvironmentExtensions.cs @@ -60,9 +60,11 @@ namespace Microsoft.AspNetCore.Hosting.Internal { hostingEnvironment.WebRootFileProvider = new NullFileProvider(); } - - var environmentName = options.Environment; - hostingEnvironment.EnvironmentName = environmentName ?? hostingEnvironment.EnvironmentName; + + hostingEnvironment.EnvironmentName = + options.Environment ?? + Environment.GetEnvironmentVariable($"ASPNETCORE_{WebHostDefaults.EnvironmentKey}") ?? + hostingEnvironment.EnvironmentName; } } } \ No newline at end of file diff --git a/src/Microsoft.AspNetCore.Hosting/Internal/WebHostConfiguration.cs b/src/Microsoft.AspNetCore.Hosting/Internal/WebHostConfiguration.cs deleted file mode 100644 index 72f400f3ea..0000000000 --- a/src/Microsoft.AspNetCore.Hosting/Internal/WebHostConfiguration.cs +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System.Collections.Generic; -using Microsoft.Extensions.Configuration; - -namespace Microsoft.AspNetCore.Hosting.Internal -{ - public class WebHostConfiguration - { - public static IConfiguration GetDefault() - { - return GetDefault(args: null); - } - - public static IConfiguration GetDefault(string[] args) - { - // Setup the default locations for finding hosting configuration options - // hosting.json, ASPNETCORE_ prefixed env variables and command line arguments - var configBuilder = new ConfigurationBuilder() - .AddJsonFile(WebHostDefaults.HostingJsonFile, optional: true) - .AddEnvironmentVariables(prefix: WebHostDefaults.EnvironmentVariablesPrefix); - - if (args != null) - { - configBuilder.AddCommandLine(args); - } - - return configBuilder.Build(); - } - } - -} diff --git a/src/Microsoft.AspNetCore.Hosting/Startup/ConventionBasedStartup.cs b/src/Microsoft.AspNetCore.Hosting/Startup/ConventionBasedStartup.cs index ea83f2f578..87f05881e8 100644 --- a/src/Microsoft.AspNetCore.Hosting/Startup/ConventionBasedStartup.cs +++ b/src/Microsoft.AspNetCore.Hosting/Startup/ConventionBasedStartup.cs @@ -3,11 +3,10 @@ using System; using Microsoft.AspNetCore.Builder; -using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Hosting.Internal; using Microsoft.Extensions.DependencyInjection; -namespace Microsoft.AspNet.Hosting +namespace Microsoft.AspNetCore.Hosting { public class ConventionBasedStartup : IStartup { diff --git a/src/Microsoft.AspNetCore.Hosting/Startup/DelegateStartup.cs b/src/Microsoft.AspNetCore.Hosting/Startup/DelegateStartup.cs index a121c9b4e2..843a8f6c6f 100644 --- a/src/Microsoft.AspNetCore.Hosting/Startup/DelegateStartup.cs +++ b/src/Microsoft.AspNetCore.Hosting/Startup/DelegateStartup.cs @@ -3,9 +3,8 @@ using System; using Microsoft.AspNetCore.Builder; -using Microsoft.AspNetCore.Hosting; -namespace Microsoft.AspNet.Hosting +namespace Microsoft.AspNetCore.Hosting { public class DelegateStartup : StartupBase { diff --git a/src/Microsoft.AspNetCore.Hosting/WebHostBuilder.cs b/src/Microsoft.AspNetCore.Hosting/WebHostBuilder.cs index 5d2216d919..a58f96f3ac 100644 --- a/src/Microsoft.AspNetCore.Hosting/WebHostBuilder.cs +++ b/src/Microsoft.AspNetCore.Hosting/WebHostBuilder.cs @@ -7,7 +7,6 @@ using System.Diagnostics; using System.IO; using System.Reflection; using System.Runtime.ExceptionServices; -using Microsoft.AspNet.Hosting; using Microsoft.AspNetCore.Hosting.Builder; using Microsoft.AspNetCore.Hosting.Internal; using Microsoft.AspNetCore.Hosting.Server; diff --git a/src/Microsoft.AspNetCore.Hosting/WebHostBuilderExtensions.cs b/src/Microsoft.AspNetCore.Hosting/WebHostBuilderExtensions.cs index d40a861bcf..3f9adfae4f 100644 --- a/src/Microsoft.AspNetCore.Hosting/WebHostBuilderExtensions.cs +++ b/src/Microsoft.AspNetCore.Hosting/WebHostBuilderExtensions.cs @@ -4,7 +4,6 @@ using System; using System.Linq; using System.Reflection; -using Microsoft.AspNet.Hosting; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting.Internal; using Microsoft.AspNetCore.Hosting.Server; @@ -17,27 +16,6 @@ namespace Microsoft.AspNetCore.Hosting { private static readonly string ServerUrlsSeparator = ";"; - /// - /// Use the default hosting configuration settings on the web host. - /// - /// The to configure. - /// The . - public static IWebHostBuilder UseDefaultHostingConfiguration(this IWebHostBuilder hostBuilder) - { - return hostBuilder.UseDefaultHostingConfiguration(args: null); - } - - /// - /// Use the default hosting configuration settings on the web host and allow for override by command line arguments. - /// - /// The to configure. - /// The command line arguments used to override default settings. - /// The . - public static IWebHostBuilder UseDefaultHostingConfiguration(this IWebHostBuilder hostBuilder, string[] args) - { - return hostBuilder.UseConfiguration(WebHostConfiguration.GetDefault(args)); - } - /// /// Use the given configuration settings on the web host. /// diff --git a/src/Microsoft.AspNetCore.Hosting/project.json b/src/Microsoft.AspNetCore.Hosting/project.json index 3c605ec0f0..9d2f40cf32 100644 --- a/src/Microsoft.AspNetCore.Hosting/project.json +++ b/src/Microsoft.AspNetCore.Hosting/project.json @@ -21,9 +21,6 @@ "Microsoft.Extensions.FileProviders.Physical": "1.0.0-*", "Microsoft.Extensions.Options": "1.0.0-*", "Microsoft.Extensions.Configuration": "1.0.0-*", - "Microsoft.Extensions.Configuration.CommandLine": "1.0.0-*", - "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0-*", - "Microsoft.Extensions.Configuration.Json": "1.0.0-*", "Microsoft.Extensions.DependencyInjection": "1.0.0-*", "Microsoft.Extensions.Logging": "1.0.0-*", "Microsoft.Extensions.PlatformAbstractions": "1.0.0-*", diff --git a/test/Microsoft.AspNetCore.Hosting.Tests/WebHostBuilderTests.cs b/test/Microsoft.AspNetCore.Hosting.Tests/WebHostBuilderTests.cs index c503eeb3a1..50520936f9 100644 --- a/test/Microsoft.AspNetCore.Hosting.Tests/WebHostBuilderTests.cs +++ b/test/Microsoft.AspNetCore.Hosting.Tests/WebHostBuilderTests.cs @@ -191,10 +191,9 @@ namespace Microsoft.AspNetCore.Hosting } [Fact] - public void DefaultHostingConfigurationDoesNotCaptureStartupErrors() + public void DoNotCaptureStartupErrorsByDefault() { var hostBuilder = new WebHostBuilder() - .UseDefaultHostingConfiguration() .UseServer(new TestServer()) .UseStartup(); diff --git a/test/Microsoft.AspNetCore.Hosting.Tests/WebHostConfigurationsTests.cs b/test/Microsoft.AspNetCore.Hosting.Tests/WebHostConfigurationsTests.cs index 3092cf9865..1c4d3c9cf7 100644 --- a/test/Microsoft.AspNetCore.Hosting.Tests/WebHostConfigurationsTests.cs +++ b/test/Microsoft.AspNetCore.Hosting.Tests/WebHostConfigurationsTests.cs @@ -10,14 +10,6 @@ namespace Microsoft.AspNetCore.Hosting.Tests { public class WebHostConfigurationTests { - [Fact] - public void DefaultDoesNotCaptureStartupErrors() - { - var config = new WebHostOptions(WebHostConfiguration.GetDefault()); - - Assert.False(config.CaptureStartupErrors); - } - [Fact] public void ReadsParametersCorrectly() {