public async Task <LineEvaluationResult> HandleAsync(Guid lineId, string text, IReplLogger logger) { string package = text.Substring(CommandPrefix.Length).Trim('"'); var assemblies = (await nugetInstaller.Install(package, logger)).ToArray(); if (assemblies.Any()) { await scriptEvaluator.AddReferences(assemblies); workspaceManager.CreateOrUpdateSubmission(lineId, assemblyReferences: assemblies); } return(LineEvaluationResult.NoOutput); }
public async Task Handle(InstallOptions options) { foreach (var fullName in options.PackageFullNames) { var path = fullName; var appInfo = AppInfo.FromPath(path); CheckExistingInstallation(appInfo); Log.Information("Installing application {FullAppName}.", appInfo.ToString()); await _nugetPackageInstaller.Install(appInfo); Log.Information("Application {FullAppName} successfully installed.", appInfo.ToString()); var binPath = _appsManager.GetExecutablePath(appInfo); _systemServiceManager.Create(appInfo, binPath); } }