Skip to content

Commit 4ea840a

Browse files
adds removal of package
1 parent 3e081d5 commit 4ea840a

File tree

1 file changed

+28
-6
lines changed

1 file changed

+28
-6
lines changed

Modules/CIPPCore/Public/Entrypoints/HTTP Functions/CIPP/Core/Invoke-ExecSetPackageTag.ps1

Lines changed: 28 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,20 @@ function Invoke-ExecSetPackageTag {
1717

1818
try {
1919
$GUIDS = $Request.body.GUID
20-
$PackageName = $Request.body.Package | Select-Object -First 1
20+
$Remove = $Request.body.Remove
21+
22+
if ($Remove -eq $true) {
23+
# Remove package tag by setting it to null/empty
24+
$PackageValue = $null
25+
$LogMessage = "Successfully removed package tag from template with GUID"
26+
$SuccessMessage = "Successfully removed package tag from template(s)"
27+
} else {
28+
# Add package tag (existing logic)
29+
$PackageValue = $Request.body.Package | Select-Object -First 1
30+
$LogMessage = "Successfully updated template with GUID"
31+
$SuccessMessage = "Successfully updated template(s) with package tag: $PackageValue"
32+
}
33+
2134
foreach ($GUID in $GUIDS) {
2235
$Filter = "RowKey eq '$GUID'"
2336
$Template = Get-CIPPAzDataTableEntity @Table -Filter $Filter
@@ -26,18 +39,27 @@ function Invoke-ExecSetPackageTag {
2639
RowKey = "$GUID"
2740
PartitionKey = $Template.PartitionKey
2841
GUID = "$GUID"
29-
Package = "$PackageName"
42+
Package = $PackageValue
3043
} -Force
3144

32-
Write-LogMessage -headers $Headers -API $APIName -message "Successfully updated template with GUID $GUID with package tag: $PackageName" -Sev 'Info'
45+
if ($Remove -eq $true) {
46+
Write-LogMessage -headers $Headers -API $APIName -message "$LogMessage $GUID" -Sev 'Info'
47+
} else {
48+
Write-LogMessage -headers $Headers -API $APIName -message "$LogMessage $GUID with package tag: $PackageValue" -Sev 'Info'
49+
}
3350
}
3451

35-
$body = [pscustomobject]@{ 'Results' = "Successfully updated template(s) with package tag: $PackageName" }
52+
$body = [pscustomobject]@{ 'Results' = $SuccessMessage }
3653

3754
} catch {
3855
$ErrorMessage = Get-CippException -Exception $_
39-
Write-LogMessage -headers $Headers -API $APIName -message "Failed to set package tag: $($ErrorMessage.NormalizedError)" -Sev 'Error' -LogData $ErrorMessage
40-
$body = [pscustomobject]@{'Results' = "Failed to set package tag: $($ErrorMessage.NormalizedError)" }
56+
if ($Remove -eq $true) {
57+
Write-LogMessage -headers $Headers -API $APIName -message "Failed to remove package tag: $($ErrorMessage.NormalizedError)" -Sev 'Error' -LogData $ErrorMessage
58+
$body = [pscustomobject]@{'Results' = "Failed to remove package tag: $($ErrorMessage.NormalizedError)" }
59+
} else {
60+
Write-LogMessage -headers $Headers -API $APIName -message "Failed to set package tag: $($ErrorMessage.NormalizedError)" -Sev 'Error' -LogData $ErrorMessage
61+
$body = [pscustomobject]@{'Results' = "Failed to set package tag: $($ErrorMessage.NormalizedError)" }
62+
}
4163
}
4264

4365
# Associate values to output bindings by calling 'Push-OutputBinding'.

0 commit comments

Comments
 (0)