@@ -19,41 +19,27 @@ jobs:
1919 with :
2020 repository : ${{ github.repository }}
2121
22- - name : Register PSRepositories
23- shell : pwsh
24- run : |
25- # Register required PSRepositories
26- $moduleRequirements = Import-PowerShellDataFile -Path './requirements.psd1'
27- foreach ($repository in $moduleRequirements.Repositories) {
28- $requestParams = @{
29- Name = $repository.Name
30- SourceLocation = $repository.SourceLocation
31- PublishLocation = $repository.PublishLocation
32- InstallationPolicy = $repository.InstallationPolicy
33- ErrorAction = 'Stop'
34- }
35- [void] (Register-PSRepository @requestParams)
36- }
37-
3822 - name : Resolve module dependencies
3923 id : resolve-dependencies
4024 shell : pwsh
4125 run : |
4226 # Resolve module dependencies from requirements.psd1
4327 $moduleRequirements = Import-PowerShellDataFile -Path './requirements.psd1'
44- $packages = @($moduleRequirements.Packages)
4528 $moduleList = (
46- $packages |
29+ $moduleRequirements.GetEnumerator() |
4730 ForEach-Object {
48- $name = if ($_.Repository) {
49- "$($_.Repository)\$($_.Name)"
31+ $moduleName = $_.Key
32+ $moduleInfo = $_.Value
33+
34+ $name = if ($moduleInfo.Repository -and $moduleInfo.Repository -ne 'PSGallery') {
35+ "$($moduleInfo.Repository)\$moduleName"
5036 }
5137 else {
52- $_.Name
38+ $moduleName
5339 }
5440
55- if ($_ .Version -ne 'latest') {
56- "$($name):$($_ .Version)"
41+ if ($moduleInfo.Version -and $moduleInfo .Version -ne 'latest') {
42+ "$($name):$($moduleInfo .Version)"
5743 }
5844 else {
5945 "$($name)"
7460 run : |
7561 # Verify that required modules are installed
7662 $moduleRequirements = Import-PowerShellDataFile -Path './requirements.psd1'
77- $packages = @($moduleRequirements.Packages)
78- foreach ($package in $packages) {
79- Get-Module -ListAvailable -Name $package.Name -ErrorAction Stop
63+ foreach ($moduleName in $moduleRequirements.Keys) {
64+ Get-Module -ListAvailable -Name $moduleName -ErrorAction Stop
8065 }
0 commit comments