protected virtual async Task <IISDeploymentResult> DeployAsync(DeploymentParameters parameters) { if (!parameters.EnvironmentVariables.ContainsKey(DebugEnvironmentVariable)) { parameters.EnvironmentVariables[DebugEnvironmentVariable] = "4"; } // Currently hosting throws if the Servertype = IIS. if (parameters.ServerType == ServerType.IIS) { _deployer = new IISDeployer(parameters, LoggerFactory); } else { _deployer = ApplicationDeployerFactory.Create(parameters, LoggerFactory); } var result = await _deployer.DeployAsync(); return(new IISDeploymentResult(result, Logger)); }
/// <summary> /// Creates a deployer instance based on settings in <see cref="DeploymentParameters"/>. /// </summary> /// <param name="deploymentParameters"></param> /// <param name="loggerFactory"></param> /// <returns></returns> public static ApplicationDeployer Create(DeploymentParameters deploymentParameters, ILoggerFactory loggerFactory) { if (deploymentParameters == null) { throw new ArgumentNullException(nameof(deploymentParameters)); } if (loggerFactory == null) { throw new ArgumentNullException(nameof(loggerFactory)); } switch (deploymentParameters.ServerType) { case ServerType.IISExpress: return(new IIS.IISExpressDeployer(deploymentParameters, loggerFactory)); case ServerType.IIS: return(new IISDeployer(deploymentParameters, loggerFactory)); default: return(ApplicationDeployerFactory.Create(deploymentParameters, loggerFactory)); } }