Deprecate url and apikey parameters from functions

This commit is contained in:
Petri Asikainen 2021-08-23 17:12:29 +03:00
parent bc0b266339
commit 3446a885dc
79 changed files with 520 additions and 167 deletions

View file

@ -34,12 +34,22 @@ function Invoke-SnipeitMethod {
) )
BEGIN { BEGIN {
if ( $null -eq $SnipeitPSSession.url -or $null -eq $SnipeitPSSession.apiKey ) { #use legacy per command based url and apikey
throw "Cannot connect to Snipe it.Please run Connect-SnipePS to set connection information." if ( $null -ne $SnipeitPSSession.legacyUrl -and $null -ne $SnipeitPSSession.legacyApiKey ) {
[string]$Url = $SnipeitPSSession.legacyrl
Write-Debug "Invoke-SnipeitMethod url: $Url"
$Token = ConvertFrom-SecureString -AsPlainText -SecureString $SnipeitPSSession.legacyApiKey
throw "Cannot connect to Snipe it. Please run Connect-SnipePS to set connection information."
} elseif ($null -ne $SnipeitPSSession.url -and $null -ne $SnipeitPSSession.apiKey) {
} else { } else {
$Url = $SnipeitPSSession.url [string]$Url = $SnipeitPSSession.url
$Token = $SnipeitPSSession.apiKey | ConvertFrom-SecureString -AsPlainText Write-Debug "Invoke-SnipeitMethod url: $Url"
$Token = ConvertFrom-SecureString -AsPlainText -SecureString $SnipeitPSSession.apiKey
} }
# Validation of parameters # Validation of parameters
if (($Method -in ("POST", "PUT", "PATCH")) -and (!($Body))) { if (($Method -in ("POST", "PUT", "PATCH")) -and (!($Body))) {
$message = "The following parameters are required when using the ${Method} parameter: Body." $message = "The following parameters are required when using the ${Method} parameter: Body."
@ -48,7 +58,7 @@ function Invoke-SnipeitMethod {
} }
# Double check those old deprecated -url parameters # Double check those old deprecated -url parameters
$Url = $Url.AbsoluteUri.TrimEnd('/') $Url = $Url.TrimEnd('/')
#Build request uri #Build request uri
$apiUri = "$Url$Api" $apiUri = "$Url$Api"

View file

@ -0,0 +1,15 @@
function Reset-SnipeitPSLegacyApi {
[CmdletBinding(
SupportsShouldProcess = $true,
ConfirmImpact = "Low"
)]
param(
)
process {
if ($PSCmdlet.ShouldProcess("ShouldProcess?")) {
$SnipeitPSSession.legacyUrl = $null
$SnipeitPSSession.legacyApiKey = $null
}
}
}

View file

@ -8,7 +8,7 @@ function Set-SnipeitPSLegacyApiKey {
) )
process { process {
if ($PSCmdlet.ShouldProcess("ShouldProcess?")) { if ($PSCmdlet.ShouldProcess("ShouldProcess?")) {
$SnipeitPSSession.apiKey = $apiKey | ConvertTo-SecureString -AsPlainText $SnipeitPSSession.legacyApiKey = ConvertTo-SecureString -AsPlainText -String $apiKey
} }
} }
} }

View file

@ -8,7 +8,7 @@ function Set-SnipeitPSLegacyUrl {
) )
process { process {
if ($PSCmdlet.ShouldProcess("ShouldProcess?")) { if ($PSCmdlet.ShouldProcess("ShouldProcess?")) {
$SnipeitPSSession.url = $url $SnipeitPSSession.legacyUrl = $url
} }
} }
} }

View file

@ -5,11 +5,12 @@ function Test-SnipeitPSConnection {
Method = 'Get' Method = 'Get'
GetParameters = @{'limit'=1} GetParameters = @{'limit'=1}
} }
Write-Verbose "Testing connection to $url." Write-Verbose "Testing connection to $($SnipeitPSSession.url)."
$contest = Invoke-SnipeitMethod @Parameters $contest = Invoke-SnipeitMethod @Parameters
if ( $contest) { if ( $contest) {
Write-Verbose "Connection to $url tested succesfully." Write-Verbose "Connection to $($SnipeitPSSession.url) tested succesfully."
return $true return $true
} else { } else {
return $false return $false

View file

@ -1,85 +0,0 @@
<#
.SYNOPSIS
Sets authetication information
.DESCRIPTION
Set and stores apikey and url user to connect Snipe-It system.
Based on Set-SnipeitInfo command, that's now just combatipility wrapper
and calls Connect-SnipeitPS
.PARAMETER url
URL of Snipeit system.
.PARAMETER apiKey
User's API Key for Snipeit.
.PARAMETER DontStore
Don't store connection information just connect to Url
.EXAMPLE
Connect-SnipeitPS -Url $url -apiKey $myapikey
Connect to Snipe it api.
.EXAMPLE
Connect-SnipeitPS -Url $url -SecureApiKey $myapikey
Connects to Snipe it api with apikey stored to securestring
.EXAMPLE
Connect-SnipeitPS -siteCred (Get-Credential -message "Use site url as username and apikey as password")
Connect to Snipe It with PSCredential object
.EXAMPLE
Build credential with apiakay value from secret vault (Microsoft.PowerShell.SecretManagement)
$siteurl = "https://mysnipeitsite.url"
$apikey = Get-SecretInfo -Name SnipeItApiKey
$siteCred = New-Object -Type PSCredential -Argumentlist $siteurl,$spikey
Connect-SnipeitPS -siteCred $siteCred
#>
function Connect-SnipeitPS {
[CmdletBinding(
DefaultParameterSetName = 'Connect with url and apikey'
)]
[System.Diagnostics.CodeAnalysis.SuppressMessage('PSUseShouldProcessForStateChangingFunctions', '')]
param (
[Parameter(ParameterSetName='Connect with url and apikey',Mandatory=$true)]
[Parameter(ParameterSetName='Connect with url and secure apikey',Mandatory=$true)]
[Uri]$url,
[Parameter(ParameterSetName='Connect with url and apikey',Mandatory=$true)]
[String]$apiKey,
[Parameter(ParameterSetName='Connect with url and secure apikey',Mandatory=$true)]
[SecureString]$secureApiKey,
[Parameter(ParameterSetName='Connect with credential',Mandatory=$true)]
[PSCredertial]$siteCred
)
PROCESS {
switch ($PsCmdlet.ParameterSetName) {
'Connect with url and apikey' {
$SnipeitPSSession.url = $url
$SnipeitPSSession.apiKey = $apiKey | ConvertTo-SecureString -AsPlainText
}
'Connect with url and secure apikey' {
$SnipeitPSSession.url = $url
$SnipeitPSSession.apiKey = $secureApiKey
}
'Connect with credential' {
$SnipeitPSSession.url = $siteCred.Username
$SnipeitPSSession.apiKey = $siteCred.GetNetworkCredential().SecurePassword
}
}
if (-not (Test-SnipeitPSConnection)) {
throw "Cannot verify connection to snipe it. For the start try to check url and provided apikey or credentials"
}
}
}

View file

@ -3,8 +3,8 @@
Sets authetication information Sets authetication information
.DESCRIPTION .DESCRIPTION
Set and stores apikey and url user to connect Snipe-It system. Sets apikey and url to connect Snipe-It system.
Based on Set-SnipeitInfo command, that's now just combatipility wrapper Based on Set-SnipeitInfo command, what is now just combatipility wrapper
and calls Connect-SnipeitPS and calls Connect-SnipeitPS
.PARAMETER url .PARAMETER url
@ -13,78 +13,81 @@
.PARAMETER apiKey .PARAMETER apiKey
User's API Key for Snipeit. User's API Key for Snipeit.
.PARAMETER DontStore .PARAMETER secureApiKey
Don't store connection information just connect to Url Snipe it Api key as securestring
.PARAMETER siteCred
PSCredential where username shoul be snipe it url and password should be
snipe it apikey.
.EXAMPLE .EXAMPLE
Connect-SnipeitPS -Url $url -apiKey $myapikey Connect-SnipeitPS -Url $url -apiKey $myapikey
Connect to Snipe it api and stores connection information. Connect to Snipe it api.
.EXAMPLE .EXAMPLE
Connect-SnipeitPS -Url $url -apiKey $myapikey -DontStore Connect-SnipeitPS -Url $url -SecureApiKey $myapikey
Just connects to Snipe it api, connection information is not stored. Connects to Snipe it api with apikey stored to securestring
.EXAMPLE .EXAMPLE
Connect-SnipeitPS -Url $url Connect-SnipeitPS -siteCred (Get-Credential -message "Use site url as username and apikey as password")
Connects existing Snipe It Url with stored apiKey Connect to Snipe It with PSCredential object.
To use saved creadentials yu can use export-clixml and import-clixml commandlets.
.EXAMPLE .EXAMPLE
Connect-SnipeitPS Build credential with apikey value from secret vault (Microsoft.PowerShell.SecretManagement)
Connects last used Snipe It Url with stored apikey $siteurl = "https://mysnipeitsite.url"
$apikey = Get-SecretInfo -Name SnipeItApiKey
$siteCred = New-Object -Type PSCredential -Argumentlist $siteurl,$spikey
Connect-SnipeitPS -siteCred $siteCred
#> #>
function Connect-SnipeitPS { function Connect-SnipeitPS {
[CmdletBinding( [CmdletBinding(
DefaultParameterSetName = 'Connect to existing connection' DefaultParameterSetName = 'Connect with url and apikey'
)] )]
[System.Diagnostics.CodeAnalysis.SuppressMessage('PSUseShouldProcessForStateChangingFunctions', '')] [System.Diagnostics.CodeAnalysis.SuppressMessage('PSUseShouldProcessForStateChangingFunctions', '')]
param ( param (
[Parameter(ParameterSetName='Connect with url and apikey',Mandatory=$true)]
[Parameter(ParameterSetName='Setup new connection',Mandatory=$true)] [Parameter(ParameterSetName='Connect with url and secure apikey',Mandatory=$true)]
[Parameter(ParameterSetName='Connect to existing connection',Mandatory=$false)]
[Uri]$url, [Uri]$url,
[Parameter(ParameterSetName='Setup new connection',Mandatory=$true)] [Parameter(ParameterSetName='Connect with url and apikey',Mandatory=$true)]
[String]$apiKey, [String]$apiKey,
[Parameter(ParameterSetName='Setup new connection')] [Parameter(ParameterSetName='Connect with url and secure apikey',Mandatory=$true)]
[switch]$DontStore [SecureString]$secureApiKey,
[Parameter(ParameterSetName='Connect with credential',Mandatory=$true)]
[PSCredential]$siteCred
) )
PROCESS { PROCESS {
switch ($PsCmdlet.ParameterSetName) { switch ($PsCmdlet.ParameterSetName) {
'Setup new connection' { 'Connect with url and apikey' {
try { $SnipeitPSSession.url = $url.TrimEnd('/')
$SnipeitPSSession.url = $url $SnipeitPSSession.apiKey = $apiKey | ConvertTo-SecureString -AsPlainText
$SnipeitPSSession.apiKey = $apiKey
#test connection
$Parameters = @{
Api = '/api/v1/statuslabels'
Method = 'Get'
GetParameters = @{'limit'=1}
}
Write-Verbose "Testin connection to $url."
$contest = Invoke-SnipeitMethod @Parameters
if ( $contest) {
Write-Verbose "Connection to $url tested succesfully."
}
}
catch {
throw "Cannot setup connection to $url. To start troubleshooting, check your url, certificates and apiKey"
}
# TODO: Save connection information safely on disk
} }
'Connect to existing connection' { 'Connect with url and secure apikey' {
# TODO: everything $SnipeitPSSession.url = $url.TrimEnd('/')
$SnipeitPSSession.apiKey = $secureApiKey
} }
'Connect with credential' {
$SnipeitPSSession.url = ($siteCred.GetNetworkCredential().UserName).TrimEnd('/')
$SnipeitPSSession.apiKey = $siteCred.GetNetworkCredential().SecurePassword
}
}
Write-Debug "Site-url $($SnipeitPSSession.url)"
Write-Debug "Site apikey: $($SnipeitPSSession.apiKey)"
if (-not (Test-SnipeitPSConnection)) {
throw "Cannot verify connection to snipe it. For the start try to check url and provided apikey or credential parameters"
} }
} }
} }

View file

@ -130,6 +130,11 @@ function Get-SnipeitAccessory() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -52,5 +52,10 @@ function Get-SnipeitAccessoryOwner() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
return $result return $result
} }

View file

@ -126,6 +126,11 @@ function Get-SnipeitActivity() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -258,6 +258,10 @@ function Get-SnipeitAsset() {
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -100,6 +100,11 @@ function Get-SnipeitAssetMaintenance() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -108,4 +108,9 @@ function Get-SnipeitCategory() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -110,4 +110,9 @@ function Get-SnipeitCompany() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -127,4 +127,9 @@ function Get-SnipeitComponent() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -105,6 +105,16 @@ function Get-SnipeitConsumable() {
begin { begin {
$SearchParameter = . Get-ParameterValue -Parameters $MyInvocation.MyCommand.Parameters -BoundParameters $PSBoundParameters $SearchParameter = . Get-ParameterValue -Parameters $MyInvocation.MyCommand.Parameters -BoundParameters $PSBoundParameters
if ($PSBoundParameters.ContainsKey('apiKey')) {
Write-Warning "-apiKey parameter is deprecated, please use Connect-SnipeitPS instead."
Set-SnipeitPSLegacyApiKey -apiKey $apikey
}
if ($PSBoundParameters.ContainsKey('url')) {
Write-Warning "-url parameter is deprecated, please use Connect-SnipeitPS instead."
Set-SnipeitPSLegacyUrl -url $url
}
} }
process { process {
@ -116,16 +126,6 @@ function Get-SnipeitConsumable() {
GetParameters = $SearchParameter GetParameters = $SearchParameter
} }
if ($PSBoundParameters.ContainsKey('apiKey')) {
Write-Warning "-apiKey parameter is deprecated, please use Connect-SnipeitPS instead."
Set-SnipeitPSLegacyApiKey -apiKey $apikey
}
if ($PSBoundParameters.ContainsKey('url')) {
Write-Warning "-url parameter is deprecated, please use Connect-SnipeitPS instead."
Set-SnipeitPSLegacyUrl -url $url
}
if ($all) { if ($all) {
$offstart = $(if ($offset) {$offset} Else {0}) $offstart = $(if ($offset) {$offset} Else {0})
$callargs = $SearchParameter $callargs = $SearchParameter
@ -155,21 +155,18 @@ function Get-SnipeitConsumable() {
GetParameters = $SearchParameter GetParameters = $SearchParameter
} }
if ($PSBoundParameters.ContainsKey('apiKey')) {
Write-Warning "-apiKey parameter is deprecated, please use Connect-SnipeitPS instead."
Set-SnipeitPSLegacyApiKey -apiKey $apikey
}
if ($PSBoundParameters.ContainsKey('url')) {
Write-Warning "-url parameter is deprecated, please use Connect-SnipeitPS instead."
Set-SnipeitPSLegacyUrl -url $url
}
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
} }
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -61,4 +61,9 @@ function Get-SnipeitCustomField() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -116,5 +116,10 @@ function Get-SnipeitDepartment() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -58,4 +58,9 @@ function Get-SnipeitFieldset() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -151,5 +151,10 @@ function Get-SnipeitLicense() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -100,5 +100,10 @@ function Get-SnipeitLicenseSeat() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -109,5 +109,10 @@ function Get-SnipeitLocation() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -110,4 +110,9 @@ function Get-SnipeitManufacturer() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -109,4 +109,9 @@ function Get-SnipeitModel() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -109,4 +109,9 @@ function Get-SnipeitStatus() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -108,5 +108,10 @@ function Get-SnipeitSupplier() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -141,4 +141,9 @@ function Get-SnipeitUser() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
$result $result
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -145,5 +145,10 @@ function New-SnipeitAccessory() {
} }
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -190,4 +190,9 @@ function New-SnipeitAsset() {
} }
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -111,4 +111,9 @@ function New-SnipeitAssetMaintenance() {
} }
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -67,4 +67,9 @@ function New-SnipeitAudit() {
} }
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -99,4 +99,11 @@ function New-SnipeitCategory() {
$result $result
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -67,6 +67,10 @@ function New-SnipeitCompany() {
} }
$result $result
$result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -106,5 +106,10 @@ function New-SnipeitComponent() {
} }
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -147,4 +147,11 @@ function New-SnipeitConsumable() {
$result $result
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -104,5 +104,12 @@ function New-SnipeitCustomField() {
$result $result
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -86,5 +86,10 @@ function New-SnipeitDepartment() {
} }
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -161,5 +161,10 @@ function New-SnipeitLicense() {
} }
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -118,4 +118,9 @@ function New-SnipeitLocation() {
} }
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -73,4 +73,9 @@ function New-SnipeitManufacturer() {
} }
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -100,4 +100,9 @@ function New-SnipeitModel() {
} }
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -122,5 +122,10 @@ function New-SnipeitSupplier() {
} }
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -146,4 +146,9 @@ function New-SnipeitUser() {
} }
$result $result
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }

View file

@ -62,4 +62,11 @@ function Remove-SnipeitAccessory () {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -63,4 +63,11 @@ function Remove-SnipeitAsset () {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -62,4 +62,11 @@ function Remove-SnipeitAssetMaintenance {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -61,4 +61,11 @@ function Remove-SnipeitCategory () {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -61,4 +61,11 @@ function Remove-SnipeitCompany () {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -62,4 +62,11 @@ function Remove-SnipeitComponent () {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -63,4 +63,11 @@ function Remove-SnipeitConsumable () {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -60,4 +60,11 @@ function Remove-SnipeitCustomField () {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -61,4 +61,11 @@ function Remove-SnipeitDepartment () {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -62,4 +62,11 @@ function Remove-SnipeitLicense () {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -62,4 +62,11 @@ function Remove-SnipeitLocation () {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -61,5 +61,13 @@ function Remove-SnipeitManufacturer () {
$result $result
} }
}
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
} }
} }

View file

@ -62,4 +62,11 @@ function Remove-SnipeitModel () {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -62,4 +62,11 @@ function Remove-SnipeitSupplier () {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -61,4 +61,11 @@ function Remove-SnipeitUser () {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -62,5 +62,11 @@ function Reset-SnipeitAccessoryOwner() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
return $result return $result
} }

View file

@ -75,5 +75,10 @@ function Reset-SnipeitAssetOwner() {
$result = Invoke-SnipeitMethod @Parameters $result = Invoke-SnipeitMethod @Parameters
} }
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
return $result return $result
} }

View file

@ -149,5 +149,12 @@ function Set-SnipeitAccessory() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -72,4 +72,11 @@ function Set-SnipeitAccessoryOwner() {
return $result return $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -181,4 +181,11 @@ function Set-SnipeitAsset() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -116,4 +116,11 @@ function Set-SnipeitAssetOwner() {
return $result return $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -109,4 +109,11 @@ function Set-SnipeitCategory() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -89,4 +89,10 @@ function Set-SnipeitCompany() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -129,4 +129,11 @@ function Set-SnipeitComponent() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -169,4 +169,11 @@ function Set-SnipeitConsumable() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -114,5 +114,11 @@ function Set-SnipeitCustomField() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -105,5 +105,11 @@ function Set-SnipeitDepartment() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -178,4 +178,10 @@ function Set-SnipeitLicense() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -98,5 +98,12 @@ function Set-SnipeitLicenseSeat() {
return $result return $result
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }
} }

View file

@ -143,5 +143,12 @@ function Set-SnipeitLocation() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -83,4 +83,11 @@ function Set-SnipeitManufacturer() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -112,4 +112,11 @@ function Set-SnipeitModel() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -93,4 +93,11 @@ function Set-SnipeitStatus() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -139,5 +139,12 @@ function Set-SnipeitSupplier() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -166,4 +166,11 @@ function Set-SnipeitUser() {
$result $result
} }
} }
end {
# reset legacy sessions
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
Reset-SnipeitPSLegacyApi
}
}
} }

View file

@ -5,13 +5,13 @@ Powershell API for Snipeit Asset Management
$scriptRoot = $PSScriptRoot + '\Public' $scriptRoot = $PSScriptRoot + '\Public'
Get-ChildItem $scriptRoot *.ps1 | ForEach-Object { Get-ChildItem $scriptRoot *.ps1 | ForEach-Object {
Import-Module $_.FullName . $_.FullName
} }
$scriptRoot = $PSScriptRoot + '\Private' $scriptRoot = $PSScriptRoot + '\Private'
Get-ChildItem $scriptRoot *.ps1 | ForEach-Object { Get-ChildItem $scriptRoot *.ps1 | ForEach-Object {
Import-Module $_.FullName . $_.FullName
} }
#Create unprefixed aliases #Create unprefixed aliases
@ -24,9 +24,3 @@ $SnipeitPSSession = [ordered]@{
} }
New-Variable -Name SnipeitPSSession -Value $SnipeitPSSession -Scope Script -Force New-Variable -Name SnipeitPSSession -Value $SnipeitPSSession -Scope Script -Force
#Config variable
$SnipeitPSConfig = [ordered]@{
'latest' = $null
'connections' = [ordered]@{}
}
New-Variable -Name SnipeitPSConfig -Value $SnipeitPSConfig -Scope Script -Force