GitHub Actions Workflows: - docker-compose-validation.yml: Validates all compose files - Syntax validation - Network configuration checks - Traefik label validation - Port exposure warnings - Domain consistency checks - File naming convention enforcement - security-checks.yml: Security scanning and validation - Gitleaks secret detection - Environment file validation - Placeholder password checks - Container image vulnerability scanning with Trivy - Dependency review for pull requests - Security report generation - yaml-lint.yml: YAML formatting and validation - yamllint with custom configuration - File extension consistency checks - YAML structure validation - Service naming convention checks - Docker Compose version validation - documentation.yml: Documentation quality checks - Markdown linting - Link validation - README completeness verification - Service documentation checks - Domain URL validation - auto-label.yml: Automated PR labeling - Category-based labeling (core/media/services) - File type detection - Size-based labeling - Security-related changes detection Configuration Files: - .yamllint.yml: YAML linting rules for Docker Compose - .markdownlint.json: Markdown formatting rules - .markdown-link-check.json: Link checking configuration - .pre-commit-config.yaml: Pre-commit hooks setup - .github/labeler.yml: Auto-labeler configuration - .github/CODEOWNERS: Code ownership definitions Templates: - pull_request_template.md: Comprehensive PR checklist - ISSUE_TEMPLATE/bug-report.md: Bug report template - ISSUE_TEMPLATE/service-request.md: New service request template Documentation: - SECURITY.md: Security policy and best practices - CONTRIBUTING.md: Contribution guidelines Benefits: - Automated validation of all compose files - Security scanning on every PR - Consistent code formatting - Documentation quality assurance - Automated issue/PR management - Pre-commit hooks for local validation - Comprehensive security policy - Clear contribution guidelines
47 lines
835 B
YAML
47 lines
835 B
YAML
# Auto labeler configuration
|
|
|
|
'category: core':
|
|
- compose/core/**/*
|
|
|
|
'category: media':
|
|
- compose/media/**/*
|
|
|
|
'category: services':
|
|
- compose/services/**/*
|
|
|
|
'type: documentation':
|
|
- '**/*.md'
|
|
- docs/**/*
|
|
|
|
'type: configuration':
|
|
- '**/*.yaml'
|
|
- '**/*.yml'
|
|
- '**/*.env'
|
|
|
|
'type: ci/cd':
|
|
- .github/**/*
|
|
- .pre-commit-config.yaml
|
|
|
|
'security':
|
|
- '**/*.env'
|
|
- '**/secrets/**/*'
|
|
|
|
'traefik':
|
|
- compose/core/traefik/**/*
|
|
- any:
|
|
- changed-files:
|
|
- any-glob-to-any-file: 'compose/**/compose.yaml'
|
|
changed-lines:
|
|
- pattern: 'traefik\.'
|
|
|
|
'authentication':
|
|
- compose/core/lldap/**/*
|
|
- compose/core/tinyauth/**/*
|
|
|
|
'dependencies':
|
|
- '**/compose.yaml'
|
|
- any:
|
|
- changed-files:
|
|
- any-glob-to-any-file: 'compose/**/compose.yaml'
|
|
changed-lines:
|
|
- pattern: 'image:'
|