diff --git a/output/PSOPNSenseAPI/PSOPNSenseAPI.psd1 b/output/PSOPNSenseAPI/PSOPNSenseAPI.psd1 index fe68dcd..dcc1e13 100644 --- a/output/PSOPNSenseAPI/PSOPNSenseAPI.psd1 +++ b/output/PSOPNSenseAPI/PSOPNSenseAPI.psd1 @@ -102,10 +102,12 @@ 'Set-OPNSenseVLAN', 'Uninstall-OPNSensePlugin', 'Update-OPNSenseFirmware', - 'Upgrade-OPNSenseFirmware' + 'Start-OPNSenseFirmwareUpgrade' ) VariablesToExport = @() AliasesToExport = @() + RequiredAssemblies = @('lib\System.Net.IPNetwork.dll', 'lib\Newtonsoft.Json.dll') + NestedModules = @('lib\PSOPNSenseAPI.dll') PrivateData = @{ PSData = @{ Tags = @('PowerShell', 'OPNSense', 'Firewall', 'API') diff --git a/output/PSOPNSenseAPI/PSOPNSenseAPI.psm1 b/output/PSOPNSenseAPI/PSOPNSenseAPI.psm1 index d4b84da..0fe4fb0 100644 --- a/output/PSOPNSenseAPI/PSOPNSenseAPI.psm1 +++ b/output/PSOPNSenseAPI/PSOPNSenseAPI.psm1 @@ -1,13 +1,2 @@ -# Load the main assembly directly -$mainDllPath = Join-Path $PSScriptRoot "lib\PSOPNSenseAPI.dll" - -Write-Verbose "Loading assembly from $mainDllPath" - -try { - Add-Type -Path $mainDllPath - Write-Verbose "Successfully loaded assembly from $mainDllPath" -} catch { - $errorMessage = $_.Exception.Message - Write-Error "Failed to load assembly from $($mainDllPath): $($errorMessage)" - throw -} +# This file is intentionally empty. +# The module uses NestedModules in the PSD1 file to load the assemblies. diff --git a/output/PSOPNSenseAPI/lib/PSOPNSenseAPI.dll b/output/PSOPNSenseAPI/lib/PSOPNSenseAPI.dll index dd1d394..9fa133f 100644 Binary files a/output/PSOPNSenseAPI/lib/PSOPNSenseAPI.dll and b/output/PSOPNSenseAPI/lib/PSOPNSenseAPI.dll differ diff --git a/src/PSOPNSenseAPI/Cmdlets/UpgradeOPNSenseFirmwareCmdlet.cs b/src/PSOPNSenseAPI/Cmdlets/UpgradeOPNSenseFirmwareCmdlet.cs index e9488a6..5b02747 100644 --- a/src/PSOPNSenseAPI/Cmdlets/UpgradeOPNSenseFirmwareCmdlet.cs +++ b/src/PSOPNSenseAPI/Cmdlets/UpgradeOPNSenseFirmwareCmdlet.cs @@ -1,5 +1,6 @@ using System; using System.Management.Automation; +using System.Management.Automation.Runspaces; using System.Threading; using System.Threading.Tasks; using PSOPNSenseAPI.Services; @@ -20,7 +21,7 @@ namespace PSOPNSenseAPI.Cmdlets /// This example upgrades the firmware on the OPNSense firewall and waits for the upgrade to complete. /// /// - [Cmdlet(VerbsData.Update, "OPNSenseFirmware", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)] + [Cmdlet(VerbsLifecycle.Start, "OPNSenseFirmwareUpgrade", SupportsShouldProcess = true, ConfirmImpact = ConfirmImpact.High)] [OutputType(typeof(void))] public class UpgradeOPNSenseFirmwareCmdlet : OPNSenseBaseCmdlet { diff --git a/src/PSOPNSenseAPI/PSOPNSenseAPI.psd1 b/src/PSOPNSenseAPI/PSOPNSenseAPI.psd1 index b5741fb..5a2a196 100644 --- a/src/PSOPNSenseAPI/PSOPNSenseAPI.psd1 +++ b/src/PSOPNSenseAPI/PSOPNSenseAPI.psd1 @@ -154,7 +154,7 @@ 'Set-OPNSenseVLAN', 'Uninstall-OPNSensePlugin', 'Update-OPNSenseFirmware', - 'Upgrade-OPNSenseFirmware' + 'Start-OPNSenseFirmwareUpgrade' ) # Variables to export from this module