Only install PowerShell module if necessary
This commit is contained in:
parent
ea83940e39
commit
9ba134d202
2 changed files with 19 additions and 2 deletions
|
@ -102,3 +102,18 @@ function Test-PSPackage {
|
|||
|
||||
[bool] (Get-Package $Name -ErrorAction SilentlyContinue);
|
||||
}
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Checks whether a module with the specified name is installed.
|
||||
|
||||
.PARAMETER Name
|
||||
The name of the module to check.
|
||||
#>
|
||||
function Test-PSModule {
|
||||
param(
|
||||
[string] $Name
|
||||
)
|
||||
|
||||
[bool](Get-Module -ListAvailable $Name -ErrorAction SilentlyContinue);
|
||||
}
|
||||
|
|
|
@ -182,8 +182,10 @@ $null = New-Module {
|
|||
};
|
||||
}
|
||||
|
||||
Install-Module -Scope AllUsers -AcceptLicense -Force $module[0] @parameters;
|
||||
Import-Module $module[0];
|
||||
if (-not (Test-PSModule $module[0])) {
|
||||
Install-Module -Scope AllUsers -AcceptLicense -Force -AllowClobber $module[0] @parameters;
|
||||
Import-Module $module[0];
|
||||
}
|
||||
}
|
||||
|
||||
. "$PSScriptRoot/../Software/PinnedItem/Manage.ps1";
|
||||
|
|
Loading…
Reference in a new issue