public void Initialize(IConsole console) { ActiveConsole = console; if (_initialized.HasValue) { if (_initialized.Value && console.ShowDisclaimerHeader) { DisplayDisclaimerAndHelpText(); } } else { try { Tuple <RunspaceDispatcher, NuGetPSHost> result = _runspaceManager.GetRunspace(console, _name); _runspace = result.Item1; _nugetHost = result.Item2; _initialized = true; if (console.ShowDisclaimerHeader) { DisplayDisclaimerAndHelpText(); } UpdateWorkingDirectory(); ExecuteInitScripts(); // Hook up solution events _solutionManager.SolutionOpened += (o, e) => { Task.Factory.StartNew(() => { UpdateWorkingDirectory(); ExecuteInitScripts(); }, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default); }; _solutionManager.SolutionClosed += (o, e) => UpdateWorkingDirectory(); _solutionManager.NuGetProjectAdded += (o, e) => UpdateWorkingDirectory(); _solutionManager.NuGetProjectRenamed += (o, e) => UpdateWorkingDirectory(); _solutionManager.NuGetProjectRemoved += (o, e) => UpdateWorkingDirectory(); // Set available private data on Host SetPrivateDataOnHost(false); } catch (Exception ex) { // catch all exception as we don't want it to crash VS _initialized = false; IsCommandEnabled = false; ReportError(ex); ExceptionHelper.WriteToActivityLog(ex); } } }
private static void LoadModules(RunspaceDispatcher runspace) { // We store our PS module file at <extension root>\Modules\NuGet\NuGet.psd1 string extensionRoot = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); string modulePath = Path.Combine(extensionRoot, "Modules", "NuGet", "NuGet.psd1"); runspace.ImportModule(modulePath); // provide backdoor to enable function test string functionalTestPath = Environment.GetEnvironmentVariable("NuGetFunctionalTestPath"); if (functionalTestPath != null && File.Exists(functionalTestPath)) { runspace.ImportModule(functionalTestPath); } #if DEBUG else { if (File.Exists(DebugConstants.TestModulePath)) { runspace.ImportModule(DebugConstants.TestModulePath); } } #endif }
private static void LoadModules(RunspaceDispatcher runspace) { // We store our PS module file at <extension root>\Modules\NuGet\NuGet.psd1 string extensionRoot = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); string modulePath = Path.Combine(extensionRoot, "Modules", "NuGet", "NuGet.psd1"); runspace.ImportModule(modulePath); #if DEBUG if (File.Exists(DebugConstants.TestModulePath)) { runspace.ImportModule(DebugConstants.TestModulePath); } #endif }
public void Initialize(IConsole console) { ActiveConsole = console; if (_initialized.HasValue) { if (_initialized.Value && console.ShowDisclaimerHeader) { DisplayDisclaimerAndHelpText(); } } else { try { Tuple <RunspaceDispatcher, NuGetPSHost> result = _runspaceManager.GetRunspace(console, _name); _runspace = result.Item1; _nugetHost = result.Item2; _initialized = true; if (console.ShowDisclaimerHeader) { DisplayDisclaimerAndHelpText(); } UpdateWorkingDirectory(); ExecuteInitScripts(); // Hook up solution events _solutionManager.SolutionOpened += (o, e) => { UpdateWorkingDirectory(); ExecuteInitScripts(); }; _solutionManager.SolutionClosed += (o, e) => UpdateWorkingDirectory(); } catch (Exception ex) { // catch all exception as we don't want it to crash VS _initialized = false; IsCommandEnabled = false; ReportError(ex); ExceptionHelper.WriteToActivityLog(ex); } } }
private static void SetupExecutionPolicy(RunspaceDispatcher runspace) { ExecutionPolicy policy = runspace.GetEffectiveExecutionPolicy(); if (policy != ExecutionPolicy.Unrestricted && policy != ExecutionPolicy.RemoteSigned && policy != ExecutionPolicy.Bypass) { ExecutionPolicy machinePolicy = runspace.GetExecutionPolicy(ExecutionPolicyScope.MachinePolicy); ExecutionPolicy userPolicy = runspace.GetExecutionPolicy(ExecutionPolicyScope.UserPolicy); if (machinePolicy == ExecutionPolicy.Undefined && userPolicy == ExecutionPolicy.Undefined) { runspace.SetExecutionPolicy(ExecutionPolicy.RemoteSigned, ExecutionPolicyScope.Process); } } }
private static void SetupExecutionPolicy(RunspaceDispatcher runspace) { ExecutionPolicy policy = runspace.GetEffectiveExecutionPolicy(); if (policy != ExecutionPolicy.Unrestricted && policy != ExecutionPolicy.RemoteSigned && policy != ExecutionPolicy.Bypass) { ExecutionPolicy machinePolicy = runspace.GetExecutionPolicy(ExecutionPolicyScope.MachinePolicy); ExecutionPolicy userPolicy = runspace.GetExecutionPolicy(ExecutionPolicyScope.UserPolicy); if (machinePolicy == ExecutionPolicy.Undefined && userPolicy == ExecutionPolicy.Undefined) { runspace.SetExecutionPolicy(ExecutionPolicy.RemoteSigned, ExecutionPolicyScope.Process); } } }
private static void LoadProfilesIntoRunspace(RunspaceDispatcher runspace) { PSCommand[] profileCommands = HostUtilities.GetProfileCommands(ProfilePrefix); runspace.InvokeCommands(profileCommands); }
private static void LoadProfilesIntoRunspace(RunspaceDispatcher runspace) { PSCommand[] profileCommands = HostUtilities.GetProfileCommands(ProfilePrefix); runspace.InvokeCommands(profileCommands); }
private static void LoadModules(RunspaceDispatcher runspace) { // We store our PS module file at <extension root>\Modules\NuGet\NuGet.psd1 string extensionRoot = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); string modulePath = Path.Combine(extensionRoot, "Modules", "NuGet", "NuGet.psd1"); runspace.ImportModule(modulePath); #if DEBUG if (File.Exists(DebugConstants.TestModulePath)) { runspace.ImportModule(DebugConstants.TestModulePath); } #endif }
public void Initialize(IConsole console) { ActiveConsole = console; if (_initialized.HasValue) { if (_initialized.Value && console.ShowDisclaimerHeader) { DisplayDisclaimerAndHelpText(); } } else { try { Tuple<RunspaceDispatcher, NuGetPSHost> result = _runspaceManager.GetRunspace(console, _name); _runspace = result.Item1; _nugetHost = result.Item2; _initialized = true; if (console.ShowDisclaimerHeader) { DisplayDisclaimerAndHelpText(); } UpdateWorkingDirectory(); ExecuteInitScripts(); // Hook up solution events _solutionManager.SolutionOpened += (o, e) => { UpdateWorkingDirectory(); ExecuteInitScripts(); }; _solutionManager.SolutionClosed += (o, e) => UpdateWorkingDirectory(); } catch (Exception ex) { // catch all exception as we don't want it to crash VS _initialized = false; IsCommandEnabled = false; ReportError(ex); ExceptionHelper.WriteToActivityLog(ex); } } }
public void Initialize(IConsole console) { ActiveConsole = console; if (_initialized.HasValue) { if (_initialized.Value && console.ShowDisclaimerHeader) { DisplayDisclaimerAndHelpText(); } } else { try { Tuple<RunspaceDispatcher, NuGetPSHost> result = _runspaceManager.GetRunspace(console, _name); _runspace = result.Item1; _nugetHost = result.Item2; _initialized = true; if (console.ShowDisclaimerHeader) { DisplayDisclaimerAndHelpText(); } UpdateWorkingDirectory(); ExecuteInitScripts(); // Hook up solution events _solutionManager.SolutionOpened += (o, e) => { Task.Factory.StartNew(() => { UpdateWorkingDirectory(); ExecuteInitScripts(); }, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default); }; _solutionManager.SolutionClosed += (o, e) => UpdateWorkingDirectory(); _solutionManager.NuGetProjectAdded += (o, e) => UpdateWorkingDirectory(); _solutionManager.NuGetProjectRenamed += (o, e) => UpdateWorkingDirectory(); _solutionManager.NuGetProjectRemoved += (o, e) => UpdateWorkingDirectory(); // Set available private data on Host SetPrivateDataOnHost(false); } catch (Exception ex) { // catch all exception as we don't want it to crash VS _initialized = false; IsCommandEnabled = false; ReportError(ex); ExceptionHelper.WriteToActivityLog(ex); } } }
private static void LoadModules(RunspaceDispatcher runspace) { // We store our PS module file at <extension root>\Modules\NuGet\NuGet.psd1 string extensionRoot = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); string modulePath = Path.Combine(extensionRoot, "Modules", "NuGet", "NuGet.psd1"); runspace.ImportModule(modulePath); // provide backdoor to enable function test string functionalTestPath = Environment.GetEnvironmentVariable("NuGetFunctionalTestPath"); if (functionalTestPath != null && File.Exists(functionalTestPath)) { runspace.ImportModule(functionalTestPath); } #if DEBUG else { if (File.Exists(DebugConstants.TestModulePath)) { runspace.ImportModule(DebugConstants.TestModulePath); } } #endif }