Skip to content

Commit

Permalink
Merge pull request #274 from jakkulabs/feature-set-fixed-module-versions
Browse files Browse the repository at this point in the history
Set fixed PowerShell module versions
  • Loading branch information
jonathanmedd authored Jun 18, 2021
2 parents fca7ba2 + e03e7b2 commit 2c38cd6
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 4 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ps-module.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
- name: Install GitVersion
uses: gittools/actions/gitversion/[email protected]
with:
versionSpec: '5.x'
versionSpec: '5.6.9'

- name: Determine Version
id: gitversion
Expand Down
13 changes: 10 additions & 3 deletions tools/build.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,11 @@ $Requirements = @(
},
@{
Name = "BuildHelpers"
Version = "2.0.15"
Version = "2.0.16"
},
@{
Name = "Pester"
Version = "5.1.1"
Version = "5.2.1"
},
@{
Name = "platyPS"
Expand All @@ -71,11 +71,19 @@ foreach ($RequiredModule in $Requirements) {

$InstalledModule = Get-Module -Name $RequiredModule.Name -ListAvailable

# Update module if installed version is lower than required version
if ($InstalledModule -and ($InstalledModule[0].Version -lt [Version]$RequiredModule.Version)) {
Write-Host " -> Updating $($RequiredModule.Name)"
Update-Module @ModuleParams
}

# Install module if installed version is greater than required version
if ($InstalledModule -and ($InstalledModule[0].Version -gt [Version]$RequiredModule.Version)) {
Write-Host " -> Installing required version of $($RequiredModule.Name)"
Install-Module @ModuleParams
}

# Install module if not present
if (!$InstalledModule) {
Write-Host " -> Installing $($RequiredModule.Name)"
Install-Module @ModuleParams
Expand All @@ -90,7 +98,6 @@ Set-BuildEnvironment -Force
# --- Set Psake parameters
$PsakeBuildParameters = @{
BuildFile = "$($PSScriptRoot)\build.psake.ps1"

TaskList = $Task
Nologo = $true
}
Expand Down
5 changes: 5 additions & 0 deletions tools/build.psake.ps1
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
using namespace System.Management.Automation.Language
#Requires -Modules @{ModuleName="PSake"; RequiredVersion="4.9.0"},@{ModuleName="PSScriptAnalyzer"; RequiredVersion="1.19.1"},@{ModuleName="BuildHelpers"; RequiredVersion="2.0.16"}
#Requires -Modules @{ModuleName="Pester"; RequiredVersion="5.2.1"},@{ModuleName="platyPS"; RequiredVersion="0.14.1"}

Write-Host "Module versions are:"
Get-Module -Name Psake,PSScriptAnalyzer,BuildHelpers,Pester,platyPS

# --- Dot source build.settings.ps1
. $PSScriptRoot\build.settings.ps1
Expand Down

0 comments on commit 2c38cd6

Please sign in to comment.