feat(baseline): declarative Intune baseline deployer
- Add Deploy-IntuneBaseline.ps1 for YAML-driven policy + assignment deployment - Add ConvertTo-IntuneBaseline.ps1 to convert export folders to baseline manifests - Add example OpenIntuneBaseline YAML in Baselines/ - Supports mutations, group auto-creation, idempotency, and WhatIf mode
This commit is contained in:
@@ -62,3 +62,50 @@ Update `Initialize-IntuneAuth.ps1` to ensure the Entra app registration is grant
|
||||
## Files created in this session
|
||||
- `CHANGELOG_macOS_IntuneToolkit.md`
|
||||
- `OPERATIONS_LOG.md`
|
||||
|
||||
|
||||
## Session: 2026-04-13 (continuation)
|
||||
|
||||
### Task
|
||||
Build a declarative Intune baseline deployment system (YAML manifest + deployer script + converter helper).
|
||||
|
||||
---
|
||||
|
||||
## Operations performed
|
||||
|
||||
1. **ReadFile**
|
||||
- Path: `/Users/avedelphina/Local/IntuneManagement/Scripts/Bulk-AssignmentManager.ps1`
|
||||
- Purpose: Studied auth bootstrap pattern, `$assignableTypes` registry, and assignment payload format.
|
||||
|
||||
2. **ReadFile**
|
||||
- Path: `/Users/avedelphina/Local/IntuneManagement/Extensions/MSGraph.psm1`
|
||||
- Purpose: Verified `Invoke-GraphRequest` parameter names (`Content` alias `Body`, `HttpMethod` alias `Method`).
|
||||
|
||||
3. **WriteFile**
|
||||
- Path: `/Users/avedelphina/Local/IntuneManagement/Baselines/OpenIntuneBaseline.example.yaml`
|
||||
- Content: Example baseline manifest with groups, mutations, and policy assignments.
|
||||
|
||||
4. **WriteFile**
|
||||
- Path: `/Users/avedelphina/Local/IntuneManagement/Scripts/Deploy-IntuneBaseline.ps1`
|
||||
- Content: Main deployer script (~550 lines) with YAML parsing, group creation, policy import/update, mutation, idempotency, and assignment deployment.
|
||||
|
||||
5. **WriteFile**
|
||||
- Path: `/Users/avedelphina/Local/IntuneManagement/Scripts/ConvertTo-IntuneBaseline.ps1`
|
||||
- Content: Helper script that scans an export folder and emits a baseline YAML skeleton.
|
||||
|
||||
6. **Shell**
|
||||
- Commands: Syntax validation (`Get-Command`) on both new scripts.
|
||||
- Result: Both scripts parsed successfully.
|
||||
|
||||
7. **WriteFile (append)**
|
||||
- Path: `/Users/avedelphina/Local/IntuneManagement/CHANGELOG_macOS_IntuneToolkit.md`
|
||||
- Added changelog entry for the baseline deployer feature.
|
||||
|
||||
8. **WriteFile (append)**
|
||||
- Path: `/Users/avedelphina/Local/IntuneManagement/OPERATIONS_LOG.md`
|
||||
- Added this very entry.
|
||||
|
||||
## Files created in this session
|
||||
- `Baselines/OpenIntuneBaseline.example.yaml`
|
||||
- `Scripts/Deploy-IntuneBaseline.ps1`
|
||||
- `Scripts/ConvertTo-IntuneBaseline.ps1`
|
||||
|
||||
Reference in New Issue
Block a user