Skip to content

[INFRA] Standardize variable management (issue #15)#6

Closed
kristopherjturner wants to merge 3 commits into
mainfrom
feature/issue-15-variable-standardization
Closed

[INFRA] Standardize variable management (issue #15)#6
kristopherjturner wants to merge 3 commits into
mainfrom
feature/issue-15-variable-standardization

Conversation

@kristopherjturner
Copy link
Copy Markdown
Contributor

Summary

Adds central variables.example.yml and schema validation as part of the org-wide variable management standardization initiative.

Changes

  • Created \config/variables.example.yml\ with consolidated settings and IIC example values
  • Updated .gitignore\ to exclude \config/variables.yml\
  • Added \config/schema/variables.schema.json\
  • Updated \�alidate-config.yml\ CI workflow to use Python jsonschema

Related

…issue #15)

- Create config/variables.example.yml with IIC example values
- Consolidates cluster, credential, and testing config into single entry point
- Uses keyvault:// URI format for all secrets
- Follows org-wide snake_case naming convention
- Subdirectory configs (clusters/, credentials/, profiles/) remain for detailed configs

Resolves AzureLocal/azurelocal.github.io#15
Add config/schema/variables.schema.json for validating variables.example.yml.
Replace old ajv-cli workflow with standardized Python-based validation.

Part of AzureLocal/azurelocal.github.io#15
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR standardizes variable management by introducing a central variables.example.yml template, a JSON Schema for validation, and a simplified CI workflow. It's part of issue #15 for org-wide variable management standardization.

Changes:

  • Added config/variables.example.yml as a single-source-of-truth configuration template with IIC example values and Key Vault references for secrets.
  • Added config/schema/variables.schema.json for schema validation and updated .gitignore to exclude the real config/variables.yml.
  • Replaced the Node.js-based (ajv-cli + yamllint) CI validation workflow with a simpler Python-based (pyyaml + jsonschema) approach that validates the example file against the schema.

Reviewed changes

Copilot reviewed 3 out of 4 changed files in this pull request and generated 2 comments.

File Description
config/variables.example.yml New central configuration template with Azure, cluster, storage, networking, credentials, testing, monitoring, reporting, WinRM, and tags sections
config/schema/variables.schema.json New JSON Schema (draft-07) to validate the structure of the variables YAML
.gitignore Excludes config/variables.yml (user-specific config with real values)
.github/workflows/validate-config.yml Simplified from Node.js/ajv to Python/jsonschema; now only validates variables.example.yml

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment on lines +4 to +5
# Triggered on PRs and pushes that touch config/ or this workflow.
# Validates YAML syntax and JSON Schema compliance.
# =============================================================================
# Validates YAML configs against JSON Schema and checks for syntax errors.
# Triggered on PRs and pushes that touch config/ or this workflow.
# Validates YAML syntax and JSON Schema compliance.
…es.md

- Rename variable-reference.md to variables.md (standard naming)
- Rewrite content to match sectioned YAML format from config/variables.example.yml
- Add all sections: azure, keyvault, azure_local, storage, networking, credentials, testing, monitoring, reporting, winrm, tags
- Add naming rules table and Key Vault resolution docs
- Update mkdocs.yml nav entry

Part of: AzureLocal/azurelocal.github.io#15
@kristopherjturner
Copy link
Copy Markdown
Contributor Author

Superseded by #7 which now includes all issue-15 variable standardization changes merged with issue-14 unified standards.

@kristopherjturner kristopherjturner deleted the feature/issue-15-variable-standardization branch March 22, 2026 14:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

priority/medium Planned solution/loadtools Load and performance testing type/infra CI/CD, workflows, repo config

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants