Skip to content

[pull] master from KelvinTegelaar:master#53

Merged
pull[bot] merged 37 commits intoscheiblingco:masterfrom
KelvinTegelaar:master
Feb 27, 2026
Merged

[pull] master from KelvinTegelaar:master#53
pull[bot] merged 37 commits intoscheiblingco:masterfrom
KelvinTegelaar:master

Conversation

@pull
Copy link

@pull pull bot commented Feb 27, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

TecharyJames and others added 30 commits February 25, 2026 08:43
Replace the New-CippDbRequest call with New-ExoRequest to retrieve the transport configuration.
Update GDAP relationship check to use 15-role recommended group set
FIxes: KelvinTegelaar/CIPP#5457
Fix: Update GDAP relationship check to use 15-role recommended group set
Pass UserPrincipalName to license operations and normalize license inputs. Invoke-EditUser now includes UserPrincipalName when calling Set-CIPPUserLicense. Invoke-ExecBulkLicense normalizes userId values to strings, chunks user ID OData filters to avoid Graph OR limits, issues a bulk Graph lookup request, aggregates chunk results, and handles missing users and lookup errors. Set-CIPPUserLicense coerces AddLicenses/RemoveLicenses to string arrays, filters out empty values, defaults UserPrincipalName to UserId when missing, and sends clean arrays in assignLicense payloads to prevent null/nested skuId issues.
Fix: Normalize licenses and batch user lookups
Read defaultDomainName from request and include it when clearing offboarding defaults: build partition keys from customerId and defaultDomainName, find matching OffboardingDefaults entities, and remove each match (with improved log message). In tenant listing, prefer offboarding defaults by customerId, fall back to initialDomainName, and select the first match; adjust parse-failure logging to reference the tenant domain. These changes ensure defaults are resolved/removed for both customer and domain partition keys and avoid multiple-match ambiguity.
Fix: Handle defaultDomainName when managing defaults
…nfig

Implements standard to enable/disable Windows Backup and Restore for
Organizations (WBfO) enrollment setting in Intune via Graph API.
…p-restore

feat: Add WindowsBackupRestore standard
Improve parsing and comparison of Teams AllowedDomains and BlockedDomains when evaluating/updating tenant federation settings. Handles multiple API return shapes (AllowAllKnownDomains, AllowedDomain arrays, Domain arrays, empty PSObject), normalizes domain lists for comparisons, and correctly decides whether to send AllowedDomains or AllowedDomainsAsAList to Set-CsTenantFederationConfiguration. Also normalizes blocked domains comparisons, adds informational logging for detected structures and update parameters, and adjusts reporting to return consistent Current/Expected values. Minor formatting tweaks to license capability array and try/catch alignment.
Refactor parsing and comparison logic for Teams federation AllowedDomains/BlockedDomains. Handle PSObject and deserialized types, detect AllowAllKnownDomains, extract AllowedDomain/Domain properties, and normalize blocked domains up-front. Add DomainControl-specific validation for allow/block modes and normalize values for reporting. Remove a noisy Update info log and tidy comparison initialization to avoid false mismatches.
Introduce Get-CIPPMailboxesReport to retrieve mailbox records from the reporting DB (supports TenantFilter and 'AllTenants' aggregation, attaches a CacheTimestamp, sorts by displayName and logs errors). Update Invoke-ListMailboxes to accept a UseReportDB query parameter; when set to 'true' it calls the new report function and returns the results (with HTTP status/error handling), otherwise it continues to use the existing live EXO logic.
Stop using Convert-SKUname/convert-skuname and culture-based formatting for license display names. Use the raw SkuPartNumber value (with a fallback of 'Unknown License' when missing) and simplify list output. Also add informational logging of license objects. Changes touch Invoke-HuduExtensionSync.ps1 and Invoke-NinjaOneTenantSync.ps1 to avoid conversion errors and reduce formatting complexity.
Feat: Add RouteMessageOutboundConnector support
fix: Update role in Invoke-ExecDnsConfig.ps1
JohnDuprey and others added 7 commits February 27, 2026 11:26
Update the Invoke-listStandardTemplates function comment to include 'AnyTenant' in the .FUNCTIONALITY tag. This documents that the entrypoint can operate in an any-tenant context; no runtime logic was changed.
Wrap processing of entity.SplitOverProps in a try/catch/finally block to stop and handle ConvertFrom-Json errors (-ErrorAction Stop). On failure, emit a warning including the entity's PartitionKey and RowKey so problematic rows can be identified. Always remove the SplitOverProps property in the finally block to ensure cleanup and prevent leftover properties even when parsing fails.
Capture results from Add-CIPPApplicationPermission/Add-CIPPDelegatedPermission, detect and aggregate permission failures (excluding service principal creation failures), and log success/warn messages accordingly. Persist LastStatus and LastError to the CPV graph row so downstream logic knows whether the update succeeded. Also add an error log in the catch block.

Update the orchestrator selection logic to use LastStatus when deciding retry interval: failed or missing statuses are retried after 1 day, successful tenants after 7 days. This makes retries for failing tenants more aggressive while avoiding unnecessary reprocessing of stable tenants.
@pull pull bot locked and limited conversation to collaborators Feb 27, 2026
@pull pull bot added the ⤵️ pull label Feb 27, 2026
@pull pull bot merged commit 11327c6 into scheiblingco:master Feb 27, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants