- Moved scattered scripts, templates, and documentation into organized directories (applications/, scripts/, assets/). - Updated .gitignore to strictly exclude secrets, state files, and IDE configs. - Added comprehensive README.md outlining repository structure and best practices. - Preserved all existing documentation and technical architecture files. - Prepared infrastructure/ for AWS Org and Proxmox Terraform management.
75 lines
1.9 KiB
YAML
75 lines
1.9 KiB
YAML
name: Documentation Validation
|
|
|
|
on:
|
|
push:
|
|
branches: [ main ]
|
|
paths:
|
|
- 'documentation/**'
|
|
- 'README.md'
|
|
pull_request:
|
|
branches: [ main ]
|
|
paths:
|
|
- 'documentation/**'
|
|
- 'README.md'
|
|
|
|
jobs:
|
|
validate-docs:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Check for broken links
|
|
run: |
|
|
# Install link checker
|
|
pip install linkchecker
|
|
|
|
# Check documentation links
|
|
find documentation/ -name "*.md" -exec linkchecker --check-extern {} \;
|
|
|
|
- name: Validate markdown structure
|
|
run: |
|
|
# Check for required documentation sections
|
|
echo "Validating documentation structure..."
|
|
|
|
# Check root README
|
|
if [ ! -f "README.md" ]; then
|
|
echo "❌ Missing root README.md"
|
|
exit 1
|
|
fi
|
|
|
|
# Check documentation directory exists
|
|
if [ ! -d "documentation/" ]; then
|
|
echo "❌ Missing documentation/ directory"
|
|
exit 1
|
|
fi
|
|
|
|
echo "✅ Documentation structure validation passed"
|
|
|
|
- name: Run markdown lint
|
|
uses: DavidAnson/markdownlint-cli2-action@v9
|
|
with:
|
|
globs: 'documentation/**/*.md README.md'
|
|
|
|
terraform-validation:
|
|
runs-on: ubuntu-latest
|
|
if: contains(github.event.head_commit.message, 'terraform') || contains(github.event.head_commit.message, 'infrastructure')
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Setup Terraform
|
|
uses: hashicorp/setup-terraform@v2
|
|
with:
|
|
terraform_version: 1.5.0
|
|
|
|
- name: Terraform Format
|
|
id: fmt
|
|
run: terraform fmt -check -recursive infrastructure/
|
|
|
|
- name: Terraform Init
|
|
run: terraform init infrastructure/aws-org/
|
|
|
|
- name: Terraform Validate
|
|
run: terraform validate infrastructure/aws-org/
|