diff --git a/SnipeitPS.build.ps1 b/SnipeitPS.build.ps1 index 03a623d..12627d7 100644 --- a/SnipeitPS.build.ps1 +++ b/SnipeitPS.build.ps1 @@ -88,15 +88,14 @@ task GitStatus -If (Test-Path .git) { } } -task TestVersions TestPS3, TestPS4, TestPS4, TestPS5 -task TestPS3 { - exec {powershell.exe -Version 3 -NoProfile Invoke-Build PesterTests} -} -task TestPS4 { - exec {powershell.exe -Version 4 -NoProfile Invoke-Build PesterTests} -} -task TestPS5 { - exec {powershell.exe -Version 5 -NoProfile Invoke-Build PesterTests} +task TestVersions TestPS + +task TestPS { + if($env:PShell -eq '7') { + exec {pwsh.exe -NoProfile Invoke-Build PesterTests} + }else { + exec {powershell.exe -NoProfile Invoke-Build PesterTests} + } } # Synopsis: Invoke Pester Tests @@ -192,7 +191,9 @@ task Deploy -If ( (-not ($env:APPVEYOR_PULL_REQUEST_NUMBER)) -and # Do not deploy if the commit contains the string "skip-deploy" # Meant for major/minor version publishes with a .0 build/patch version (like 2.1.0) - $env:APPVEYOR_REPO_COMMIT_MESSAGE -notlike '*skip-deploy*' + $env:APPVEYOR_REPO_COMMIT_MESSAGE -notlike '*skip-deploy*' -and + # publish from one powershell version is enought + $env:PShell -eq '5' ) { Remove-Module SnipeitPS -ErrorAction SilentlyContinue }, PublishToGallery diff --git a/SnipeitPS/Public/Set-SnipeitComponent.ps1 b/SnipeitPS/Public/Set-SnipeitComponent.ps1 index 97115d9..cc6363a 100644 --- a/SnipeitPS/Public/Set-SnipeitComponent.ps1 +++ b/SnipeitPS/Public/Set-SnipeitComponent.ps1 @@ -17,6 +17,9 @@ ID number of category .PARAMETER qty Quantity of the components you have +.PARAMETER min_amt +Minimum Quantity of the components before alert is triggered + .PARAMETER location_id ID number of the location the accessory is assigned to @@ -55,6 +58,8 @@ function Set-SnipeitComponent() [parameter(mandatory = $true)] [int]$qty, + [int]$min_amt, + [string]$name, [int]$company_id, diff --git a/SnipeitPS/Public/Set-SnipeitLicenseSeat.ps1 b/SnipeitPS/Public/Set-SnipeitLicenseSeat.ps1 index 78f9525..9dedbae 100644 --- a/SnipeitPS/Public/Set-SnipeitLicenseSeat.ps1 +++ b/SnipeitPS/Public/Set-SnipeitLicenseSeat.ps1 @@ -46,9 +46,9 @@ function Set-SnipeitLicenseSeat() [int]$seat_id, [Alias('assigned_id')] - [int]$assigned_to, + [Nullable[System.Int32]]$assigned_to, - [int]$asset_id, + [Nullable[System.Int32]]$asset_id, [string]$note, diff --git a/SnipeitPS/SnipeitPS.psd1 b/SnipeitPS/SnipeitPS.psd1 index 9b5b712..f5c1113 100644 --- a/SnipeitPS/SnipeitPS.psd1 +++ b/SnipeitPS/SnipeitPS.psd1 @@ -33,7 +33,7 @@ Copyright = '(c) 2017 Stephen Maunder. All rights reserved.' Description = 'Powershell API for Snipeit Asset Management' # Minimum version of the Windows PowerShell engine required by this module -PowerShellVersion = '3.0' +PowerShellVersion = '5.1' # Name of the Windows PowerShell host required by this module # PowerShellHostName = '' diff --git a/appveyor.yml b/appveyor.yml index 228ef4f..0fb5249 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -7,12 +7,15 @@ # ############################################################ -# This tells AppVeyor that we need WMF 5 and PowerShell 5.0 -os: WMF 5 +# powershell core and 5.1 +image: + - Visual Studio 2017 + - Visual Studio 2019 environment: PSGalleryAPIKey: secure: UdM6qhf5B0G8liHhUrwWERCZr44iSqmg4jUq0lwlTjZs4KyeoiwnBzdej0phqIAm + PShell: '5' version: 1.7.{build} @@ -53,15 +56,40 @@ before_build: build_script: - ps: Invoke-Build -Task Build -# after_build: - # - cmd: mdspell %releasePath%\**/*.md --ignore-numbers --ignore-acronyms --report - test_script: - ps: Invoke-Build -Task Test before_deploy: - ps: Invoke-Build -Task Deploy +#Build with powershell core +for: + - + matrix: + only: + - image: Visual Studio 2019 + environment: + PShell: '7' + install: + - pwsh: | + Install-Module InvokeBuild -Scope CurrentUser -Force + Install-Module BuildHelpers -Scope CurrentUser -Force + Install-Module platyPS -Scope CurrentUser -Force + Install-Module Pester -Scope CurrentUser -Force + Install-Module PSScriptAnalyzer -Scope CurrentUser -Force + $env:releasePath = "$($pwd.Path)\Release" + before_build: + - pwsh: Invoke-Build -Task ShowDebug + build_script: + - pwsh: Invoke-Build -Task Build + + test_script: + - pwsh: Invoke-Build -Task Test + + before_deploy: + - pwsh: Invoke-Build -Task Deploy + + deploy: provider: GitHub release: v$(appveyor_build_version) diff --git a/docs/Set-SnipeitComponent.md b/docs/Set-SnipeitComponent.md index cbf0d06..aff4e3b 100644 --- a/docs/Set-SnipeitComponent.md +++ b/docs/Set-SnipeitComponent.md @@ -13,9 +13,9 @@ Updates component ## SYNTAX ``` -Set-SnipeitComponent [-id] [-qty] [[-name] ] [[-company_id] ] - [[-location_id] ] [[-order_number] ] [[-purchase_date] ] [[-purchase_cost] ] - [-url] [-apiKey] [-WhatIf] [-Confirm] [] +Set-SnipeitComponent [-id] [-qty] [[-min_amt] ] [[-name] ] + [[-company_id] ] [[-location_id] ] [[-order_number] ] [[-purchase_date] ] + [[-purchase_cost] ] [-url] [-apiKey] [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION @@ -39,7 +39,7 @@ Parameter Sets: (All) Aliases: Required: True -Position: 10 +Position: 11 Default value: None Accept pipeline input: False Accept wildcard characters: False @@ -54,7 +54,7 @@ Parameter Sets: (All) Aliases: Required: False -Position: 4 +Position: 5 Default value: 0 Accept pipeline input: False Accept wildcard characters: False @@ -64,14 +64,14 @@ Accept wildcard characters: False ID number of name ```yaml -Type: Int32 +Type: Int32[] Parameter Sets: (All) Aliases: Required: True Position: 1 Default value: 0 -Accept pipeline input: False +Accept pipeline input: True (ByPropertyName) Accept wildcard characters: False ``` @@ -84,7 +84,22 @@ Parameter Sets: (All) Aliases: Required: False -Position: 5 +Position: 6 +Default value: 0 +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -min_amt +Minimum Quantity of the components before alert is triggered + +```yaml +Type: Int32 +Parameter Sets: (All) +Aliases: + +Required: False +Position: 3 Default value: 0 Accept pipeline input: False Accept wildcard characters: False @@ -99,7 +114,7 @@ Parameter Sets: (All) Aliases: Required: False -Position: 3 +Position: 4 Default value: None Accept pipeline input: False Accept wildcard characters: False @@ -114,7 +129,7 @@ Parameter Sets: (All) Aliases: Required: False -Position: 6 +Position: 7 Default value: None Accept pipeline input: False Accept wildcard characters: False @@ -129,7 +144,7 @@ Parameter Sets: (All) Aliases: Required: False -Position: 8 +Position: 9 Default value: 0 Accept pipeline input: False Accept wildcard characters: False @@ -144,7 +159,7 @@ Parameter Sets: (All) Aliases: Required: False -Position: 7 +Position: 8 Default value: None Accept pipeline input: False Accept wildcard characters: False @@ -174,7 +189,7 @@ Parameter Sets: (All) Aliases: Required: True -Position: 9 +Position: 10 Default value: None Accept pipeline input: False Accept wildcard characters: False