Commit Graph

815 Commits

Author SHA1 Message Date
Chris Ross (ASP.NET) 1e360cbb36 #1244 Disable restore on publish for integration tests 2017-10-27 12:20:13 -07:00
Ryan Brandenburg bc4a514d9e Better message for integration tests 2017-10-20 10:49:41 -07:00
Chris Ross (ASP.NET) 4f3fdaebee #1208 Default timeout for IHost.StopAsync. Create Host with DI. 2017-10-17 10:37:20 -07:00
Javier Calvarro Nelson cda9ec6fe4 Remove the implicit hosting dependency on WebHostBuilderFactory shared sources 2017-10-11 15:16:03 -07:00
Justin Kotalik 36bede16e9 Remove check for using ANCM with Win7. (#1235) 2017-10-03 16:43:12 -07:00
John Luo a63932a492 Add option to suppress writing startup messages 2017-10-02 14:08:54 -07:00
Javier Calvarro Nelson 6687f4eefc Update API check baselines to 2.0 2017-09-22 17:52:20 -07:00
KPixel 27a3a89b60 Simplifying ApplicationLifetime.ExecuteHandlers() (#1228) 2017-09-22 06:16:48 -07:00
Chris Ross 253be73b6f Misc generic host pr feedback (#1222) 2017-09-21 15:09:52 -07:00
David Fowler 37e122a0c6 Added overloads without the HostingContext (#1220)
* Added overloads without the HostingContext
2017-09-18 14:48:45 -07:00
David Fowler 712c992ca8 Add BackgroundService, a base class for long running HostedServices (#1215)
* Add BackgroundService, a base class for long running HostedServices
- Today the IHostedService pattern is a StartAsync/StopAsync pattern. Neither of these
methods are supposed to return a long running task that represents an execution. If
you wanted to have some logic run on a timer every 5 minutes, it's unnatural to do so
with simple async idioms. This base class implements IHostedService and exposes
a pattern where a long running async Task can be returned.
- The token passed into ExecuteAsync represents the lifetime of the execution.
- StartAsync and StopAsync were made virtual to allow the derived type to
indicate Start failures.
- Added tests
2017-09-18 12:55:54 -07:00
Justin Kotalik 500668619f Detect duplicate startups in HostingStartupAssemblies (#1183) 2017-09-18 11:47:34 -07:00
Javier Calvarro Nelson c24c717eee Add extension methods in our test host package to streamline setup of apps.
* Create a sources package to encode the convention followed in our templates to create a WebHost.
* Add an extension method to setup the content root relative to the solution folder.
* Add a factory method to create a WebHostBuilder based on the pattern followed in our template.
2017-09-15 15:08:35 -07:00
Julian Dominguez 1c3fa82908 Preserve state in HostBuilder.Properties (#1212) 2017-09-15 02:00:44 -07:00
Chris Ross (ASP.NET) ae9da9290e #1163 Implement the generic host 2017-09-14 14:48:06 -07:00
John Luo 8b30efbe75 Use chained configuration 2017-09-05 12:54:00 -07:00
Nate McMaster 5ca9f8928f Use PackageLineup to manage PackageReference versions 2017-08-29 09:55:55 -07:00
Nate McMaster 9a4a43cc6a Use Directory.Build.props/targets 2017-08-29 09:52:04 -07:00
Eric 9b1cbedffc WebSocketClient.ConnectAsync throws when the provided CancellationToken is cancelled. 2017-08-24 15:14:59 -07:00
John Luo b187c1adc4 Add fallback when resolving application name
- Use the name of the EntryAssembly when application name is not specified
2017-08-24 11:00:01 -07:00
Javier Calvarro Nelson 964b671288 [Fixes #1012] Make it possible to override services when using UseStartup.
* Add IStartupConfigureServicesFilter to wrap ConfigureServices.
* Add IStartupConfigureContainerFilter<TContainerBuilder> to wrap
  ConfigureContainer.
* Make StartupLoader build a thunk for configure services that
  resolves all instances of IStartupConfigureServicesFilter and
  IStartupConfigureContainerFilter<TContainerBuilder> and wraps
  invocations to ConfigureServices and ConfigureContainer respectively.
* Refactor building the ConfigureServices callback into a private
  builder class due to the increased complexity in the process.
2017-08-23 14:32:51 -07:00
Justin Kotalik 1ea0647ae2 Update comments to reflect code behavior (#1182) 2017-08-22 16:46:00 -07:00
Justin Kotalik 312e0da556 Fix case sensitivity on Startup classes and methods (#1166) 2017-08-18 09:45:12 -07:00
Justin Kotalik c74d0e7458 Adds .Value to logger calls to avoid calling .ToUriComponents on a bad header. (#1169)
* Add .Value to request properties in HostingRequestStartLog
2017-08-18 09:43:04 -07:00
Henk Mollema 456957bf57 Use dictionary for deployment parameters (#1126) 2017-08-10 10:56:21 -07:00
Christian Weiss 07f96a444e Always log startup exceptions 2017-08-08 09:55:30 -07:00
John Luo a49db63f06 Increment M.H.Server.IntegrationTesting version 2017-08-07 15:28:45 -07:00
Mike Harder 266736764c Rename to DiagnosticSourceVersion (#1143)
- Matches other repos
2017-07-19 09:37:37 -07:00
David Fowler e4350945c5 Attach the correlation id to the request scope if logging is on (#1138)
- Add the correlation id to the request scope as well as setting
it as the parent id of the activity
2017-07-11 10:03:15 -07:00
Ryan Brandenburg 7ca5002b4c Remove NETSTandard.Library.NETFramework 2017-07-07 10:27:25 -07:00
John Luo 15008b0b7f Add WaitForShutdown to WebHostExtensions 2017-07-01 23:13:52 -07:00
David Fowler b0a70aeef7 Add synchronous Start back to IWebHost (#1125)
* Add synchronous Start back to IWebHost
- Fixed extension methods to have a default(CancellationToken)
- Removed extension methods for Start, StartAsync and StopAsync
2017-07-01 15:00:54 -07:00
David Fowler 5fa9fc9458 Updated breaking changes file 2017-06-23 09:33:58 -07:00
Kristian Hellang 513f6ac816 Avoid having to return anything in StartupBase.ConfigureServices (#957)
* Implement IStartup explicitly so we don't have to return a service provider
* Inherit StartupBase and override CreateServiceProvider
2017-06-23 08:48:06 -07:00
Pranav K acb96ec971 Preapre for StackTrace.Sources changes 2017-06-22 11:18:43 -07:00
Pranav K d14b453c33 Allow publishing rid specific desktop applications 2017-06-21 12:16:01 -07:00
David Fowler e88ad84a72 Create a scoped service provider for the call to Configure (#1106)
* Create a scoped service provider for the call to Configure
- This allows scoped dependencies to be injected into the Configure method.
It means you can resolve the DbContext or any other scoped service without
the hassle of the CreateScope boiler plate. As a side effect, it also makes
Startup.Configure a bit more testable.
2017-06-19 14:14:20 -07:00
David Fowler 70a3017b12 Add overload that takes an IConfigurationBuilder (#1107) 2017-06-19 12:41:43 -07:00
Kiran Challa 21be9922c2 Merge branch 'rel/2.0.0-preview2' into dev-gate 2017-06-15 04:01:23 -07:00
Kiran Challa 53128bca0e Revert "Add "--no-restore" parameter to "dotnet publish" (#1101)"
This reverts commit 007e3b6b51.
2017-06-14 20:06:11 -07:00
Kiran Challa 0b90376bbf Revert "Add "--no-restore" parameter to "dotnet run" (#1104)"
This reverts commit 78877b6ba2.
2017-06-14 20:06:03 -07:00
Kiran Challa 9f49d34c17 Revert "Workaround: On xplat machines, provided executable permission to published standalone application executable"
This reverts commit 51f77ea7f3.
2017-06-14 19:52:54 -07:00
Mike Harder 3763aba85c Merge remote-tracking branch 'origin/rel/2.0.0-preview2' into dev 2017-06-13 10:40:19 -07:00
Mike Harder 78877b6ba2 Add "--no-restore" parameter to "dotnet run" (#1104)
- Workaround for "Publish fails on app with project reference to netstandard2.0 class library" (https://github.com/dotnet/cli/issues/6843)
2017-06-13 10:39:58 -07:00
Mike Harder 86c31c5dc3 Merge remote-tracking branch 'origin/rel/2.0.0-preview2' into dev 2017-06-12 16:59:57 -07:00
Mike Harder 007e3b6b51 Add "--no-restore" parameter to "dotnet publish" (#1101)
- Workaround for "dotnet publish fails on app with project reference to netstandard2.0 class library" (https://github.com/dotnet/cli/issues/6843)
2017-06-12 16:59:34 -07:00
Chris R a2962d54f1 Merge branch 'rel/2.0.0-preview2' into dev 2017-06-02 12:23:47 -07:00
Chris R 5e2bb55be0 Change Certificates.Configuration to a Sources package 2017-06-02 12:21:43 -07:00
Pavel Krymets 0f0c88b8cd React to logging in DI changes (#1089) 2017-06-02 08:33:37 -07:00
Nate McMaster 5bcc76d32c Remove dependency on DataProtection
Reverse changes made in #1064
2017-06-01 16:26:54 -07:00
Chris R 44ccbee9ba Moving CertificateLoader from MetaPackages to Hosting. 2017-05-30 16:26:33 -07:00
Chris R 0177ab8424 Change SelfHostDepoyer to use net461 2017-05-30 09:56:23 -07:00
John Luo 3b488c470a Make IHostedServiceAsync 2017-05-26 10:52:08 -07:00
Nate McMaster 75ba58bac2 Re-add some code that was removed during TFM churn 2017-05-26 09:51:38 -07:00
BrennanConroy 03bdb40f8a Add UseShutdownTimeout Extension (#1086) 2017-05-23 16:20:41 -07:00
Chris R 419ec53d07 React to StringSegment changes 2017-05-23 10:38:21 -07:00
Chris R 7ac6842d18 #1075 Suppress exceptions from failing to load HostingStartup assemblies 2017-05-23 10:36:57 -07:00
John Luo 68d1d4ce12 Remove TestProjectHelpers from Server.IntegrationTesting 2017-05-22 15:55:24 -07:00
BrennanConroy c7bac3133f Chain hosting timeout to StopAsync cancellation token (#1078) 2017-05-19 16:32:45 -07:00
John Luo 62cd07d0a6 Target NETStandard2.0 and add WindowsServices back 2017-05-19 14:17:02 -07:00
John Luo 906af6de30 Update API check exceptions 2017-05-12 11:57:41 -07:00
Hisham Bin Ateya cf23aedb55 Use EnvironmentName instead of magic string (#1065) 2017-05-10 15:20:40 -07:00
Pavel Krymets f8779ee377 Remove unnecessary package references (#1068) 2017-05-10 11:30:40 -07:00
BrennanConroy 9a931554d5 Replace RuntimeEnvironment (#1066) 2017-05-09 14:15:36 -07:00
John Luo 9b80f2a635 Migration 2017-05-05 17:12:36 -07:00
Chris Ross (ASP.NET) 13ea876ca1 Register IApplicationDiscriminator service 2017-05-05 17:07:22 -07:00
John Luo c812e9ae6f Doc comments: Add period at the end of the sentence. 2017-05-03 15:13:00 -07:00
John Luo 781fa1944e Fix ConfigureLogging doc comments 2017-05-03 10:37:45 -07:00
Chris Ross (ASP.NET) d74040786c #1053 Prevent IISExpressDeployer.Dispose nullref if the process failed to start 2017-05-03 09:40:07 -07:00
John Luo 3c358e9028 Replace ConfigureLogging(Action<ILoggerFactory>) with ConfigureLogging(Action<LoggerFactory>) extension 2017-05-02 13:01:07 -07:00
BrennanConroy 3936bf64f6 Remove configuration from LoggerFactory constructor 2017-05-01 10:18:16 -07:00
Kiran Challa a67bbab6b3 Changing the RID back from win-x64 to win7-x64 to workaround SQL issue 2017-04-27 12:30:45 -07:00
Kiran Challa ccad1b62b4 Updated runtime identifier names 2017-04-27 10:55:20 -07:00
Pavel Krymets ba2bca4a96 Run IHostingStartup's before materializing IConfiguration (#1052) 2017-04-27 08:14:09 -07:00
Chris R 285d62b312 Move IHostedService to new Microsoft.Extensions.Hosting.Abstractions package. 2017-04-26 14:06:11 -07:00
Andrew Stanton-Nurse 6527001b3f remove test logging (#1040) 2017-04-25 15:18:58 -07:00
John Luo a64940a1f7 Remove PreferHostingUrls from options 2017-04-25 10:56:08 -07:00
Pavel Krymets 6d42b2fe86 Expose WebHostBuilderContext in UseDefaultServiceProvider (#1043) 2017-04-25 10:08:44 -07:00
Smit Patel a7221ca766 Update API Check related files
React to aspnet/BuildTools#238
2017-04-25 08:18:37 -07:00
Chris R 8377d226f1 Execute IHostingStart instances in the primary assembly (#1033)
* #1000 Execute IHostingStart instances in the primary assembly
Also make the sample app runnable.
Add an opt-out flag, more tests
2017-04-25 07:30:11 -07:00
John Luo d2816d14ab Make WebHost internal
To avoid conflict with WebHost defined in Microsoft.AspNetCore in MetaPackages
2017-04-24 14:46:35 -07:00
Kiran Challa 7d0770b0e4 Revert "Temporarily remove `dotnet run` argument separator"
This reverts commit 5f9fa5c009.
2017-04-23 08:32:58 -07:00
David Fowler 58cc0bc3f9 Fix the configuration key name for PreferHostingUrls (#1034) 2017-04-22 10:12:16 -07:00
David Fowler 383a13f1f9 Remove unused dependency (#1032) 2017-04-21 10:37:35 -07:00
Kiran Challa 51f77ea7f3 Workaround: On xplat machines, provided executable permission to published standalone application executable 2017-04-20 23:56:29 -07:00
Andrew Stanton-Nurse ce650eee7f react to removal of PlatformAbstractions (#1023) 2017-04-20 09:30:40 -07:00
= 853b3847ad Updates for WebHostBuilderContext overloads 2017-04-19 14:02:23 -07:00
glennc 2b07e88a58 Add overloads to ConfigureServices to accept the WebHostBuilderContext and make the context accessible in more locations. 2017-04-19 14:00:17 -07:00
Kiran Challa f1a59d030e Supply runtime identifier on publishing standalone apps 2017-04-13 14:19:18 -07:00
Chris R a8c61b5abc Add ConfigureAwait to prevent xunit hangs 2017-04-13 07:46:51 -07:00
Chris R 62f74d5be0 #947 Add IServer.StopAsyc, IWebHost.StopAsync, and make Start async 2017-04-12 21:56:19 -07:00
Mike Harder 5f9fa5c009 Temporarily remove `dotnet run` argument separator
- Workaround for "dotnet run no longer passes additional arguments to application" (https://github.com/dotnet/sdk/issues/1118)
2017-04-12 14:22:18 -07:00
BrennanConroy ad1d0cc67d Pass configuration section to LoggerFactory 2017-04-06 15:27:19 -07:00
Andrew Stanton-Nurse 1ae1ff01a3 Add test logging helpers to Hosting (#1005) 2017-04-06 15:19:26 -07:00
Andrew Stanton-Nurse ad79cdd123 fix hangs due to uncleared TCS in IntegrationTesting (#1008) 2017-04-06 11:15:45 -07:00
glennc 0ab882b6d3 Allow configuration and logging to be configured on WebHostBuilder, setting up for the removal of AddProvider from ILoggerFactory. 2017-04-04 14:43:13 -07:00
Pranav K 6a5f7dec10 Investigate System.Reflection.TypeExtensions added to unbreak tests
Fixes #987
2017-04-03 11:55:18 -07:00
Andrew Stanton-Nurse 11de3fd384 Fix issue with remote deployer wait 2017-04-03 08:48:58 -07:00
Andrew Stanton-Nurse 915e984f32 increase timeout for remote deployer (#1001)
Turns out it takes a while to deploy to nano server
2017-03-31 14:34:14 -07:00
Andrew Stanton-Nurse b4b671556a fix nginx deployer (#998)
* fix nginx deployer

* pr feedback
2017-03-30 15:31:07 -07:00
Andrew Stanton-Nurse 7774ed50fa additional checks and logging for iisx shutdown (#997) 2017-03-30 11:48:24 -07:00
John Luo 4cdc970055 Server addresses configuration enhancements
Add PreferHostingUrls to IServerAdressesFeature

Add extension to IWebHostBuilder to set this flag
2017-03-30 10:16:47 -07:00
Andrew Stanton-Nurse f15c99c980 more logging and more resiliant port selection (#996) 2017-03-30 09:46:50 -07:00
Pavel Krymets 7890fdbf94 Add Activity tracking to HostingApplication (#964) 2017-03-29 15:36:48 -07:00
Nate McMaster 1c1681c26f
Revert "Log status of port before starting server with SelfHostDeployer (#993)"
This reverts commit f79904404e.
2017-03-29 09:22:11 -07:00
David Fowler c1487bf93d Fix some style nits 2017-03-28 11:53:35 -07:00
Vance Morrison 8165609f4e Logging optimization.2 14 (#944)
* Trivial change to avoid an allocation when logging is off (normal case).
2017-03-28 11:43:58 -07:00
Nate McMaster f79904404e Log status of port before starting server with SelfHostDeployer (#993) 2017-03-28 10:48:46 -07:00
John Luo 10cdfd9fa2 Remove redundant SkipIfCurrentRuntimeIsCoreClrAttribute 2017-03-25 21:31:49 -07:00
Pranav K 2df3639535 Add System.Reflection.TypeExtensions to workaround test failures 2017-03-24 11:45:47 -07:00
Pranav K 31a2bdffce Remove net451 as a cross-compile target 2017-03-24 11:45:47 -07:00
David Fowler d5cbdb8ac6 Update WebHost.cs (#986) 2017-03-23 21:52:55 -07:00
David Fowler 32bed162a8 Always log the hosting startup assemblies (#982) 2017-03-22 20:57:01 -07:00
David Fowler ddb1bfeb20 Add support for executing IHostingStartup in specified assemblies (#961)
* Add support for executing IHostingStartup in specified assemblies
- Assemblies that are specified in the "hostingStartupAssemblies" configuration (; delimited)
  setting can specify assemblies that use an assembly level attribute (HostingStartupAttribute)
  to specify a type that implements IHostingStartup. This allows hosting environments to
  extend the IWebHostBuilder with platform specific behavior before the application runs.
- Added tests
- Log errors that occur during load and execution of the IHostingStartup
when capture startup errors is off. This happens on start of the application.
- Added debug logging on startup to print out the hosted startup assemblies hosting
processed

#951
2017-03-22 20:23:04 -07:00
Doug Bunting 387e2d8ad1 Disable API Check in projects with untracked breaking changes 2017-03-22 08:33:46 -07:00
Matt Mazzola 120fec741d Add new constructor to TestSever which allows providing preconfigured FeatureCollection to use before Build / Start is invoked. (#967) 2017-03-21 10:21:01 -07:00
Kiran Challa 95de690acd Log error when selfhostdeployer is unable to start the process 2017-03-17 15:03:11 -07:00
Nate McMaster 45874704a9 Unify dependency version to one file and remove workarounds 2017-03-15 11:01:09 -07:00
John Luo 9021999c32 Fix deployer for Win7 and Win2008 2017-03-14 15:17:14 -07:00
Kiran Challa 0846e13b06 RemoteWindowsDeployer: Changing current working directory to the app output folder 2017-03-08 21:58:48 -08:00
John Luo c8003c0305 Remove addition of default address to IServerAddressesFeature when none is specified 2017-03-02 15:12:52 -08:00
Chris R 60c45c382b #896 Have TestHost populate features before calling IHttpContextFactory.Create 2017-03-01 10:10:04 -08:00
Cesar Blum Silveira af953b4883 Bump Microsoft.AspNetCore.Server.IntegrationTesting to net452. 2017-02-22 13:46:47 -08:00
Ben Adams d5ec0859e5 Disabled logging fast-path (#937) 2017-02-17 08:43:25 -08:00
Pranav K c4ea355ddf Allow for an alternate application name to be used as part of deployment. (#945)
This lets us test applications that are compiled with a different assembly name
2017-02-15 17:20:16 -08:00
Nate McMaster 75a0b9889a Downgrade to stable packages 2017-02-15 12:28:55 -08:00
David Fowler d57d729d13 Enable configuring the default service provider (#943)
* Enable configuring the default service provider
- Added UseDefaultServiceProvider method
- Made DelegateStartup use the IServiceProviderFactory. One downside
here is that we can't use 3rd party DI containers with the Configure
delegate since it's hardcoded to the the specific Startup type but that's
not a regression.
2017-02-14 21:25:43 -08:00
David Fowler ce5838ac57 Added default MiddlewareFactory service as scoped (#940)
- This is a follow up to changes made in HttpAbstractions to
support a new IMiddleware interface
2017-02-14 15:58:18 -08:00
Ben Adams 2697ad9a37 Faster RequestServices (#941)
* Faster RequestServices
2017-02-14 08:37:38 -08:00
Ben Adams 1b01da7a05 Check hostingLog enabled (#933) 2017-02-08 10:48:19 -08:00
Pranav K 056a251b8c Fix tests broken during conversion 2017-02-02 10:41:28 -08:00
Nate McMaster 2a50762008 Upgrade to VS 2017 2017-02-01 10:35:51 -08:00
Ryan Brandenburg 51b3e82701 OnStarting throws when Response.HasStarted 2017-01-26 10:21:29 -08:00
Nate McMaster e312552edd Add setting to extend dotnet-publish arguments in ApplicationDeployer 2017-01-12 11:24:19 -08:00
Pranav K ac8a86ff3f Skip specifying the project argument when running dotnet commands
Workaround for https://github.com/dotnet/cli/issues/5168 and https://github.com/dotnet/cli/issues/5211
2017-01-06 10:52:03 -08:00
Andrew Stanton-Nurse 2aff751547 fix reference issues in net46 by removing framework assembly refs
part of Coherence-Signed/#395
2017-01-05 15:47:23 -08:00
Chris R 2f26170dbf React to WebListener rename. 2017-01-03 15:51:54 -08:00
Pranav K 7ea92f08fc Updating to 4.4 CoreFx packages 2016-12-14 14:47:29 -08:00
David Fowler 2c5dc9a75c CR feedback
- Added license to file
- Removed extra space
2016-12-13 21:30:08 -08:00
David Fowler c6346cbde5 Review feedback for IApplicationLifetimeEvents
- Renamed the type to IHostedService and added Start and Stop.
- Split up the IHostedService execution and IApplicationLifetime to avoid
circular references
- Trigger IHostedService.Start after starting the server
- Trigger IHostedService.Stop before disposing the service provider

#895 #894
2016-12-13 21:22:33 -08:00
Kiran Challa 4abb48e1aa Added EventSource to Hosting 2016-11-30 14:22:46 -08:00
David Fowler 42594afd42 Introducing IApplicationLifetimeEvents (#875)
- Introduce a new DI friendly API for handling lifetime events. IApplicationLifetime isn't
isn't replaceable so we introduce a new DI friendly API that can be implemented to handle
lifetime events of an ASP.NET application. It should also make it possible to write up extension
on IWebHostBuilder to wire up to external systems that need to register the state of the application (like systemd).
- Run all handlers even if one throws
- Let both sets of event handlers run before throwing (IApplicationLifetimeEvents and IApplicationLifetime cancellation token callbacks).
2016-11-29 03:38:07 -08:00
Chris Ross (WEB TOOLS) 077bc8104e Fix IIS Express deployer for Win7 2016-11-23 10:58:42 -08:00
Chris R 3003b4c5e6 Bump IntegrationTesting version to 0.3 2016-11-22 14:09:53 -08:00
Kiran Challa 884872b969 Removed the workaround of copying forwarder dlls for remote deployment scenario testing 2016-11-21 19:38:47 -08:00
Chris R b7c9b24193 Update the IIS Express deployer to use the new ANCM package layout. 2016-11-21 16:13:55 -08:00
Chris R 48ca10cffc Merge branch 'rel/1.1.0' into dev 2016-11-10 16:16:12 -08:00
Chris R f8fbb15e14 IISIntegration#292 Test support for bin deployed aspnetcore.dll 2016-11-10 16:06:39 -08:00
Pranav K 21f7c89838 Updating versions to 1.2.0-* 2016-11-09 14:17:46 -08:00
Pavel Krymets 1ee27971a5 Add test for SIGTERM functionality (#878) 2016-11-08 09:58:45 -08:00