Configuration reference
Configuration Reference
Complete reference for all configuration files used in the Edge AI Accelerator project's build and CI/CD processes.
In this guide
- CI/CD pipeline configuration
- Code quality and linting
- Security and compliance
- Build and deployment tools
- Documentation generation
CI/CD pipeline configuration
Azure DevOps pipelines
| File | Purpose | Location |
|---|---|---|
azure-pipelines.yml | Main Azure DevOps pipeline definition | Repository root |
| Template files | Reusable pipeline templates for validation, deployment, and utilities | .azdo/templates/ |
Key templates:
matrix-folder-check-template.yml- Dynamic component detectionapplication-build-template.yaml- Multi-language application build orchestrationcluster-test-terraform-template.yml- Terraform validationdocs-check-bicep-template.yml- Bicep documentation validationdocs-validation-template.yml- Comprehensive documentation validationcheckov-template.yml- Security scanning- Dedicated lint templates - Code quality validation (shell, YAML, Terraform, Bicep, Python, PowerShell, docs, security)
aio-version-checker-template.yml- Azure IoT Operations version validationresource-provider-pwsh-tests-template.yml- Azure resource provider testswiki-update-template.yml- Documentation synchronization
GitHub Actions workflows
| File | Purpose | Location |
|---|---|---|
| Workflow files | GitHub Actions workflow definitions | .github/workflows/ |
| Composite actions | Reusable action components | .github/actions/ |
Key workflows:
cluster-test-terraform.yml- Terraform component testingdocs-check-terraform.yml- Terraform documentation validationdocs-check-bicep.yml- Bicep documentation validationaio-version-checker.yml- Azure IoT Operations version validation
Code quality and linting
Dedicated lint templates
Code quality validation is handled through individual Azure DevOps lint templates in .azdo/templates/:
- Shell linting (ShellCheck, shell formatting)
- YAML linting (yamllint validation)
- Terraform linting (TFLint, terraform fmt)
- Bicep linting (Bicep linter, PSRule)
- Python linting (Ruff)
- PowerShell linting (PSScriptAnalyzer)
- Documentation linting (markdownlint, cspell)
- Code quality linting (ESLint, general formatting)
- Security scanning (GitLeaks, Grype, SecretLint, dependency audits)
Language-specific linting
| File | Purpose | Location |
|---|---|---|
PSScriptAnalyzerSettings.psd1 | PowerShell script analysis rules | Repository root |
.cspell.json | Spell checking configuration | Repository root |
Security and compliance
Security scanning
| File | Purpose | Documentation |
|---|---|---|
.checkov.yml | Checkov security scanning configuration | Security Scanning Guide |
Invoke-ContainerSecurityScan.ps1 | Container image vulnerability scanning with Grype | Security Scanning Guide |
Invoke-SecurityGate.ps1 | Centralized security gate enforcement | Security Scanning Guide |
Invoke-SecurityReportCompression.ps1 | Security report compression and artifact optimization | Security Scanning Guide |
| Security templates | Azure DevOps security validation templates | Template Documentation |
Compliance validation
| File | Purpose | Location |
|---|---|---|
| Variable compliance templates | Terraform and Bicep variable validation | .azdo/templates/ |
| Resource provider tests | PowerShell-based compliance testing | .azdo/templates/ |
Build and deployment tools
Infrastructure as Code
| File | Purpose | Location |
|---|---|---|
bicepconfig.json | Bicep CLI configuration and linting rules | Repository root |
.terraform-docs.yml | Terraform documentation generation | Repository root |
Package management
| File | Purpose | Location |
|---|---|---|
package.json | Node.js dependencies and npm scripts | Repository root |
requirements.txt | Python dependencies for build scripts | Repository root |
Cargo.toml | Rust dependencies (if applicable) | Repository root |
Documentation generation
Configuration files
| File | Purpose | Documentation |
|---|---|---|
docsify-url-config.js | Docsify documentation site configuration | Build Scripts Guide |
GitVersion.yml | Semantic versioning configuration | Build Scripts Guide |
Build automation
| File | Purpose | Location |
|---|---|---|
| Documentation build scripts | Automated documentation generation and validation | scripts/ |
| Sidebar generation scripts | Dynamic navigation generation | scripts/ |
Usage patterns
Local development
Most configuration files support local development workflows:
# Run linters locally
npm run tflint-fix-all
# Validate Bicep templates
az bicep build --file template.bicep
# Generate Terraform docs
terraform-docs markdown table . > README.md
CI/CD integration
Configuration files are automatically used by:
- Azure DevOps: Reads
azure-pipelines.ymland template files - GitHub Actions: Uses workflow files and composite actions
- Dedicated lint templates: Run individual linting and code quality checks
- Checkov: Applies
.checkov.ymlsecurity policies
Related documentation
- Build Scripts Guide - Automated build processes
- CI/CD Best Practices - Implementation guidelines
- Security Scanning Guide - Security validation processes
- Azure DevOps Guide - Azure pipeline documentation
- GitHub Actions Guide - GitHub workflow documentation
🤖 Crafted with precision by ✨Copilot following brilliant human instruction, then carefully refined by our team of discerning human reviewers.