Overview
Add a GitHub Actions workflow that deploys KQL analytics rules and Logic App playbook ARM templates to a target Microsoft Sentinel workspace on merge to main.
Workflow steps
- Trigger: push to
main (path filter: detection-rules/**, playbooks/**)
- Validate all KQL rules (
python scripts/validate_kql.py)
- Run pytest (
pytest tests/ -v)
- Authenticate to Azure using OIDC (federated credentials — no stored secrets)
- Deploy ARM templates for analytics rules via Azure CLI
- Deploy Logic App ARM templates
- Post deployment summary as commit status
Secrets required (documented, not stored here)
AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_SUBSCRIPTION_ID (OIDC — no client secret needed)
SENTINEL_WORKSPACE_ID, SENTINEL_RESOURCE_GROUP
Acceptance criteria
Part of
Phase 2 DevOps
Overview
Add a GitHub Actions workflow that deploys KQL analytics rules and Logic App playbook ARM templates to a target Microsoft Sentinel workspace on merge to
main.Workflow steps
main(path filter:detection-rules/**,playbooks/**)python scripts/validate_kql.py)pytest tests/ -v)Secrets required (documented, not stored here)
AZURE_CLIENT_ID,AZURE_TENANT_ID,AZURE_SUBSCRIPTION_ID(OIDC — no client secret needed)SENTINEL_WORKSPACE_ID,SENTINEL_RESOURCE_GROUPAcceptance criteria
.github/workflows/deploy-sentinel.ymldetection-rules/orplaybooks/Part of
Phase 2 DevOps