-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
Description
Problem
In hybrid JML workflows an on-prem step may need to complete first, then IdLE must trigger an Entra Connect sync cycle (running on a different server) and optionally wait until the cycle is finished before continuing with Entra ID / EXO steps.
Proposed Solution
Add a provider capability for Entra Connect sync triggering + waiting, implemented via remote session acquisition (ExecutionContext.AcquireSession()), and a new built-in step that orchestrates “wait + trigger + wait”, including a “sync already running → wait + retry” default.
Acceptance Criteria
- New provider contract/capability: DirectorySyncTrigger (name can vary) with:
- GetSchedulerState() (must include SyncCycleInProgress)
- StartSyncCycle(policyType)
- New provider module implementation (remote Entra Connect server):
- imports ADSync module and triggers Start-ADSyncSyncCycle -PolicyType Delta|Initial
- supports polling via Get-ADSyncScheduler
Microsoft Learn
- New built-in step TriggerDirectorySync:
- wait=true default
- if sync already running: wait until idle, then trigger a new cycle (“retry”) by default
- configurable: policyType, timeoutSeconds, pollIntervalSeconds, maxTriggerAttempts
- emits structured events for wait/trigger/complete/timeout
- Pester tests:
- unit tests for step logic (mock provider; test: idle → trigger; running → wait+trigger; timeout; retry)
- provider contract tests
- Documentation:
- update step reference (generator) if needed
- CONTRIBUTING
- add/update provider docs describing remote requirement and host session responsibility