/// <summary> /// Initializes a new instance of the <see cref="StopAndUninstallHostBuilder"/> class. /// </summary> /// <param name="environment">The environment.</param> /// <param name="settings">The settings.</param> /// <param name="version">The version.</param> public StopAndUninstallHostBuilder(HostEnvironment environment, HostSettings settings, string version = null) { Environment = environment; var serviceName = settings.Name; if (version != null) { serviceName = $"{serviceName.Split('-')[0]}-{version}"; } var serviceInfo = GetWmiServiceInfo(serviceName); if (serviceInfo != null) { serviceName = Convert.ToString(serviceInfo["Name"].Value); _processId = Convert.ToInt32(serviceInfo["ProcessId"].Value); } Settings = new WindowsHostSettings { Name = serviceName, // squirrel hook wait only 15 seconds // so we can't wait for service stop more that 5 seconds StopTimeOut = TimeSpan.FromSeconds(5), }; _stopBuilder = new StopBuilder(Environment, Settings); _uninstallBuilder = new UninstallBuilder(Environment, Settings); _uninstallBuilder.Sudo(); }
/// <summary> /// Initializes a new instance of the <see cref="UpdateHostBuilder"/> class. /// </summary> /// <param name="environment">The environment.</param> /// <param name="settings">The settings.</param> /// <param name="version">The version.</param> /// <param name="withOverlapping">if set to <c>true</c> [with overlapping].</param> public UpdateHostBuilder(HostEnvironment environment, HostSettings settings, string version, bool withOverlapping = false) { Environment = environment; Settings = settings; WithOverlapping = withOverlapping; var currentService = GetLastWmiServiceInfo(settings.Name, $"{settings.Name}-{version}"); var OldSettings = new WindowsHostSettings { Name = Convert.ToString(currentService["Name"].Value), }; _stopOldHostBuilder = new StopBuilder(Environment, OldSettings); _startOldHostBuilder = new StartBuilder(_stopOldHostBuilder); _uninstallOldHostBuilder = new UninstallBuilder(Environment, OldSettings); _installAndStartNewHostBuilder = new InstallAndStartHostBuilder(Environment, Settings, version); _stopAndUninstallNewHostBuilder = new StopAndUninstallHostBuilder(Environment, Settings, version); }
public void SetUp() { _builder = new StopBuilder(); _builder.ReadEntityMappings("stop_id,stop_code,stop_name,stop_lat,stop_lon"); }