1+ ---
12name : Release
23
34on :
45 push :
56 tags :
6- - " v[0-9]+.[0-9]+.[0-9]+*"
7-
8- permissions :
9- contents : write
7+ - v[0-9]+.[0-9]+.[0-9]+*
108
119jobs :
1210 create-release :
1311 runs-on : ubuntu-latest
12+ permissions :
13+ contents : write
1414 steps :
1515 - name : Checkout Repository
16- uses : actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
16+ uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
1717 with :
1818 fetch-depth : 0
1919 - name : Check Version
@@ -129,9 +129,12 @@ jobs:
129129 publish-docs :
130130 needs : create-release
131131 runs-on : ubuntu-latest
132+ permissions :
133+ contents : write
134+ pages : write
132135 steps :
133136 - name : Checkout Repository
134- uses : actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
137+ uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
135138 with :
136139 ref : ${{ github.event.release.tag_name }}
137140 fetch-depth : 0
@@ -150,9 +153,11 @@ jobs:
150153 publish-module :
151154 needs : [create-release, publish-docs]
152155 runs-on : ubuntu-latest
156+ permissions :
157+ contents : read
153158 steps :
154159 - name : Checkout Repository
155- uses : actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
160+ uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
156161 with :
157162 ref : ${{ github.event.release.tag_name }}
158163 fetch-depth : 0
@@ -185,13 +190,18 @@ jobs:
185190 Write-Output "SUCCESS: Module dependencies were found."
186191 Write-Output "INFO: Required modules are $($requiredModules.ModuleName -join ', ')."
187192 Write-Output "INFO: Setting location to the PowerShell modules location on a Ubuntu-based GitHub runner."
188- Set-Location '/home/runner/.local/share/powershell/Modules/'
193+ Set-Location '/home/runner/.local/share/powershell/Modules/'
189194 foreach ($module in $requiredModules) {
190195 $requiredModuleName = $module.ModuleName
191- New-Item $requiredModuleName -ItemType Directory
192- Write-Output "INFO: Performing workaround for github.com/PowerShell/PowerShell/issues/7722."
193- Write-Output "INFO: Creating placeholder manifest for $requiredModuleName at $((Get-Location).Path)/$requiredModuleName/$requiredModuleName.psd1"
194- New-Item "./$requiredModuleName/$requiredModuleName.psd1" -ItemType File
196+ if ($requiredModuleName -eq 'VMware.PowerCLI') {
197+ Write-Output "INFO: Installing version defined in the manifest from the PowerShell Gallery."
198+ Install-Module -Name VMware.PowerCLI -RequiredVersion $module.RequiredVersion -Force
199+ } else {
200+ New-Item $requiredModuleName -ItemType Directory
201+ Write-Output "INFO: Performing workaround for github.com/PowerShell/PowerShell/issues/7722."
202+ Write-Output "INFO: Creating placeholder manifest for $requiredModuleName at $((Get-Location).Path)/$requiredModuleName/$requiredModuleName.psd1"
203+ New-Item "./$requiredModuleName/$requiredModuleName.psd1" -ItemType File
204+ }
195205 }
196206 } else {
197207 Write-Output "INFO: No module dependencies were found."
@@ -232,4 +242,3 @@ jobs:
232242 } else {
233243 Write-Error "FAILED: Module manifest file not found at path '$moduleManifest'."
234244 }
235-
0 commit comments