Skip to content

Commit fe2cdbd

Browse files
authored
Update CI and signing process (#15)
Updates the CI build deps, bumps to a new PowerShell 7 minimum and start using the Azure Trusted Signing service to sign the module.
1 parent 7c3e614 commit fe2cdbd

File tree

8 files changed

+32
-25
lines changed

8 files changed

+32
-25
lines changed

.github/workflows/ci.yml

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,9 @@ jobs:
3939
shell: pwsh
4040
run: ./build.ps1 -Configuration $env:BUILD_CONFIGURATION -Task Build
4141
env:
42-
AZURE_KEYVAULT_NAME: ${{ env.BUILD_CONFIGURATION == 'Release' && secrets.AZURE_KEYVAULT_NAME || '' }}
43-
AZURE_KEYVAULT_CERT: ${{ env.BUILD_CONFIGURATION == 'Release' && secrets.AZURE_KEYVAULT_CERT || '' }}
42+
AZURE_TS_NAME: ${{ env.BUILD_CONFIGURATION == 'Release' && secrets.AZURE_TS_NAME || '' }}
43+
AZURE_TS_PROFILE: ${{ env.BUILD_CONFIGURATION == 'Release' && secrets.AZURE_TS_PROFILE || '' }}
44+
AZURE_TS_ENDPOINT: ${{ env.BUILD_CONFIGURATION == 'Release' && secrets.AZURE_TS_ENDPOINT || '' }}
4445

4546
- name: Capture PowerShell Module
4647
uses: actions/upload-artifact@v4
@@ -65,14 +66,6 @@ jobs:
6566
psversion: '5.1'
6667
arch: x86
6768
os: windows-latest
68-
- name: PS_7.2_x64_Windows
69-
psversion: '7.2.0'
70-
arch: x64
71-
os: windows-latest
72-
- name: PS_7.3_x64_Windows
73-
psversion: '7.3.0'
74-
arch: x64
75-
os: windows-latest
7669
- name: PS_7.4_x64_Windows
7770
psversion: '7.4.0'
7871
arch: x64
@@ -81,6 +74,10 @@ jobs:
8174
psversion: '7.4.0'
8275
arch: x86
8376
os: windows-latest
77+
- name: PS_7.5_x64_Windows
78+
psversion: '7.5.0'
79+
arch: x64
80+
os: windows-latest
8481

8582
steps:
8683
- uses: actions/checkout@v4

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Changelog for ProcessEx
22

3+
## v0.6.0 - TBD
4+
35
## v0.5.0 - 2024-01-05
46

57
* Added support for `ProcessIntString` parameters accepting `uint` values as returned by WMI/CIM calls

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Documentation for this module and details on the cmdlets included can be found [
1616

1717
These cmdlets have the following requirements
1818

19-
* PowerShell v5.1 or newer
19+
* PowerShell v5.1 or 7.4+
2020
* .NET Framework 4.7.2+ or .NET Core+
2121
* Windows Server 2008 R2/Windows 7 or newer
2222

@@ -29,9 +29,11 @@ You can install this module by running;
2929

3030
```powershell
3131
# Install for only the current user
32+
Install-PSResource -Name ProcessEx -Scope CurrentUser
3233
Install-Module -Name ProcessEx -Scope CurrentUser
3334
3435
# Install for all users
36+
Install-PSResource -Name ProcessEx -Scope AllUsers
3537
Install-Module -Name ProcessEx -Scope AllUsers
3638
```
3739

manifest.psd1

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
@{
2-
InvokeBuildVersion = '5.11.3'
3-
PesterVersion = '5.6.1'
2+
InvokeBuildVersion = '5.14.14'
3+
PesterVersion = '5.7.1'
44
BuildRequirements = @(
55
@{
66
ModuleName = 'Microsoft.PowerShell.PSResourceGet'
7-
ModuleVersion = '1.0.6'
7+
ModuleVersion = '1.1.1'
88
}
99
@{
1010
ModuleName = 'OpenAuthenticode'
11-
RequiredVersion = '0.4.0'
11+
RequiredVersion = '0.6.1'
1212
}
1313
@{
1414
ModuleName = 'platyPS'

module/ProcessEx.psd1

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@
1212

1313
# Script module or binary module file associated with this manifest.
1414
RootModule = if ($PSEdition -eq 'Core') {
15-
'bin/net6.0-windows/ProcessEx.dll'
15+
'bin/net8.0-windows/ProcessEx.dll'
1616
}
1717
else {
1818
'bin/net472/ProcessEx.dll'
1919
}
2020

2121
# Version number of this module.
22-
ModuleVersion = '0.5.0'
22+
ModuleVersion = '0.6.0'
2323

2424
# Supported PSEditions
2525
# CompatiblePSEditions = @()

src/ProcessEx/ProcessEx.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>net6.0-windows;net472</TargetFrameworks>
4+
<TargetFrameworks>net8.0-windows;net472</TargetFrameworks>
55
<LangVersion>12.0</LangVersion>
66
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
77
<Nullable>enable</Nullable>

tools/InvokeBuild.ps1

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -68,17 +68,23 @@ task BuildDocs {
6868
}
6969

7070
task Sign {
71-
$vaultName = $env:AZURE_KEYVAULT_NAME
72-
$vaultCert = $env:AZURE_KEYVAULT_CERT
73-
if (-not $vaultName -or -not $vaultCert) {
71+
$accountName = $env:AZURE_TS_NAME
72+
$profileName = $env:AZURE_TS_PROFILE
73+
$endpoint = $env:AZURE_TS_ENDPOINT
74+
if (-not $accountName -or -not $profileName -or -not $endpoint) {
7475
return
7576
}
7677

77-
Write-Host "Authenticating with Azure KeyVault '$vaultName' for signing" -ForegroundColor Cyan
78-
$key = Get-OpenAuthenticodeAzKey -Vault $vaultName -Certificate $vaultCert
78+
Write-Host "Authenticating with Azure TrustedSigning $accountName $profileName for signing" -ForegroundColor Cyan
79+
$keyParams = @{
80+
AccountName = $accountName
81+
ProfileName = $profileName
82+
Endpoint = $endpoint
83+
}
84+
$key = Get-OpenAuthenticodeAzTrustedSigner @keyParams
7985
$signParams = @{
8086
Key = $key
81-
TimeStampServer = 'http://timestamp.digicert.com'
87+
TimeStampServer = 'http://timestamp.acs.microsoft.com'
8288
}
8389

8490
$toSign = Get-ChildItem -LiteralPath $Manifest.ReleasePath -Recurse -ErrorAction SilentlyContinue |

tools/common.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,7 @@ Function Assert-PowerShell {
183183
ARM64 { 'arm64' }
184184
default {
185185
$err = [ErrorRecord]::new(
186-
[Exception]::new("Unsupported archecture requests '$_'"),
186+
[Exception]::new("Unsupported architecture requests '$_'"),
187187
"UnknownArch",
188188
[ErrorCategory]::InvalidArgument,
189189
$_

0 commit comments

Comments
 (0)