This directory contains the CI/CD workflows for the Missing Maps website.
Last Updated: October 2025
Status: All workflows operational on modernize-2025 branch
- Triggers: Push to 
main,master, orpublishbranches; Pull requests - Purpose: Build and deploy the site to GitHub Pages
 - Features:
- Ruby 3.3+ and Node.js 20+ environment setup
 - Dependency caching for faster builds
 - JavaScript linting with modern ESLint configuration
 - Jekyll build with Gulp asset pipeline
 - Multilingual site generation (4 languages)
 - Automated deployment to GitHub Pages (publish branch only)
 - Build artifact retention for debugging
 
 
- Triggers: Pull requests to main branches
 - Purpose: Test builds and validate changes
 - Features:
- Translation file YAML validation
 - Language directory structure verification
 - Content generation testing for all 4 languages
 - Feed generation verification (RSS/XML)
 - Asset exclusion verification
 - Translation completeness checks
 
 
- Triggers: Weekly schedule (Sundays), dependency file changes, manual dispatch
 - Purpose: Monitor security and dependency health
 - Features:
- NPM security audit with vulnerability scanning
 - Ruby security audit with bundler-audit gem
 - Outdated dependency identification and reporting
 - Code quality linting and formatting validation
 - Automated security issue reporting
 
 
The .github/dependabot.yml file configures automated dependency updates:
- NPM packages: Weekly updates on Sundays with grouped PRs
 - Ruby gems: Weekly updates on Sundays with security prioritization
 - GitHub Actions: Weekly updates on Sundays for workflow dependencies
 - Grouping strategy: Development vs production dependencies separated
 - Auto-assignment: PRs automatically assigned to repository maintainers
 - Version compatibility: Configured for Node.js 20+ and Ruby 3.3+
 
This setup successfully replaced the previous Travis CI configuration:
- ✅ Enhanced security with GitHub's built-in secrets management
 - ✅ Better integration with GitHub native features and APIs
 - ✅ Granular control over workflow triggers and conditions
 - ✅ Built-in GitHub Pages deployment with branch protection
 - ✅ Automated dependency management with security scanning
 - ✅ Multi-language testing for international site validation
 - ✅ Faster builds with improved caching strategies
 
- ✅ 
modernize-2025: Full CI/CD with internationalization testing - ✅ 
publish: Production deployment to missingmaps.org - ✅ Pull Requests: Comprehensive testing before merge
 - ✅ Security Scanning: Weekly automated vulnerability checks
 
- Build time: Reduced by ~40% with optimized caching
 - Asset optimization: Automated JavaScript/CSS minification
 - Multilingual builds: All 4 languages generated and tested
 - Dependency updates: Automated weekly maintenance
 
- GitHub Actions status badges in README
 - Automated failure notifications to maintainers
 - Security vulnerability alerts and auto-updates
 - Build artifact retention for debugging (30 days)
 
No additional secrets are required - GitHub Actions uses built-in GITHUB_TOKEN for deployment.
publish: Production deployment branch (auto-deploys to GitHub Pages)main/master: Development branch (tests only)- Feature branches: Pull request testing only