File tree Expand file tree Collapse file tree 3 files changed +18
-5
lines changed Expand file tree Collapse file tree 3 files changed +18
-5
lines changed Original file line number Diff line number Diff line change @@ -15,6 +15,9 @@ Function Install-DBOSupportLibrary {
15
15
. PARAMETER Scope
16
16
Choose whether to install for CurrentUser or for AllUsers
17
17
18
+ . PARAMETER SkipDependencies
19
+ Skips dependencies of the package with the connectivity libraries, only downloading a single package.
20
+
18
21
. PARAMETER Confirm
19
22
Prompts to confirm certain actions
20
23
@@ -37,6 +40,7 @@ Function Install-DBOSupportLibrary {
37
40
[DBOps.ConnectionType []]$Type ,
38
41
[ValidateSet (' CurrentUser' , ' AllUsers' )]
39
42
[string ]$Scope = ' AllUsers' ,
43
+ [switch ]$SkipDependencies ,
40
44
[switch ]$Force
41
45
)
42
46
begin {
@@ -76,7 +80,7 @@ Function Install-DBOSupportLibrary {
76
80
# Install dependencies
77
81
foreach ($package in $packagesToUpdate ) {
78
82
Write-PSFMessage - Level Verbose - Message " Installing package $ ( $package.Name ) ($ ( $package.Version ) )"
79
- $null = Install-Package - Source $packageSource.Name - Name $package.Name - RequiredVersion $package.Version - Force:$Force - Scope:$Scope
83
+ $null = Install-Package - Source $packageSource.Name - Name $package.Name - RequiredVersion $package.Version - Force:$Force - Scope:$Scope - SkipDependencies: $SkipDependencies
80
84
}
81
85
}
82
86
}
Original file line number Diff line number Diff line change @@ -5,6 +5,15 @@ function Get-ExternalLibrary {
5
5
)
6
6
$jsonFile = Join-PSFPath - Normalize (Get-Item $PSScriptRoot ).Parent.FullName " json\dbops.dependencies.json"
7
7
$d = Get-Content $jsonFile - Raw | ConvertFrom-Json
8
- if ($Type ) { $d .$Type }
9
- else { $d }
8
+ if ($Type ) { $d .$Type | Where-Object { -Not $_.PSEdition -or $_.PSEdition -eq $PSVersionTable.PSEdition } }
9
+ else {
10
+ $rdbms = $d | Get-Member | Where-Object MemberType -eq NoteProperty | Select-Object - ExpandProperty Name
11
+ $output = @ {}
12
+ foreach ($t in $rdbms ) {
13
+ $output += @ {
14
+ $t = $d .$t | Where-Object { -Not $_.PSEdition -or $_.PSEdition -eq $PSVersionTable.PSEdition }
15
+ }
16
+ }
17
+ [pscustomobject ]$output
18
+ }
10
19
}
Original file line number Diff line number Diff line change @@ -16,10 +16,10 @@ else {
16
16
17
17
Describe " Install-DBOSupportLibrary tests" - Tag $commandName , UnitTests {
18
18
Context " Testing support for different RDBMS" {
19
- $dependencies = Get-Content ( Join-PSFPath - Normalize " $here \.. " " internal\json\dbops.dependencies.json " ) - Raw | ConvertFrom-Json
19
+ $dependencies = Get-ExternalLibrary
20
20
foreach ($d in ($dependencies | Get-Member | Where-Object MemberType -eq NoteProperty | Select-Object - ExpandProperty Name)) {
21
21
It " should attempt to install $d support" {
22
- Install-DBOSupportLibrary - Type $d - Scope CurrentUser - Force - Confirm:$false
22
+ Install-DBOSupportLibrary - Type $d - Scope CurrentUser - Force - Confirm:$false - SkipDependencies
23
23
foreach ($package in $dependencies .$d ) {
24
24
$testResult = Get-Package $package.Name - MinimumVersion $package.Version - ProviderName nuget
25
25
$testResult.Name | Should Be $package.Name
You can’t perform that action at this time.
0 commit comments