Skip to content

[INFRA] Automate standards sync from canonical docs repo to downstream repositories #27

@kristopherjturner

Description

@kristopherjturner

Summary

Create automation that syncs canonical standards from azurelocal.github.io/standards/ into subscribed AzureLocal repositories.

Background

Phase 1 standardized repository structure by:

  • moving standards out of docs/standards/ into root-level standards/
  • renaming project-management / project_management to repo-management

The next phase is to automate downstream standards synchronization so the docs repo remains the canonical source and other repos stay aligned.

Goals

  • Treat azurelocal.github.io/standards/ as the canonical standards source
  • Sync standards into downstream repos using pull requests or equivalent non-destructive updates
  • Preserve a clear boundary between org-wide standards and repo-local exceptions
  • Detect drift in downstream repos

Requirements

  • Source of truth is azurelocal.github.io/standards/
  • Target path in downstream repos is root-level standards/
  • Automation must support at least these repos:
    • azurelocal-avd
    • azurelocal-sofs-fslogix
    • azurelocal-loadtools
    • azurelocal-vm-conversion-toolkit
    • azurelocal-toolkit
    • azurelocal-copilot
    • azurelocal-training
    • azurelocal-nutanix-migration
    • demo-repository as needed
  • Prefer PR-based updates over direct pushes
  • Include drift detection/reporting
  • Define how repo-local standards extensions are handled
  • Define which standards are mandatory versus optional

Acceptance Criteria

  • A documented sync design exists
  • Automation can detect changes under azurelocal.github.io/standards/
  • Automation can open update PRs against subscribed repos
  • Automation does not overwrite approved repo-local extensions without explicit rules
  • A validation/reporting mechanism identifies downstream drift
  • Repo onboarding documentation explains how a new repo opts into standards sync

Suggested Implementation Areas

  • GitHub Actions workflow in azurelocal.github.io
  • Repo subscription manifest for downstream targets
  • File allowlist/denylist or policy-based sync rules
  • Dry-run mode for previewing proposed changes
  • PR template or issue comment summarizing synced files

Notes

This should treat published docs as presentation and root-level standards as the canonical operational source.

Metadata

Metadata

Assignees

No one assigned

    Labels

    ado-trackedIssue has a linked ADO work item

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions