This directory contains the GitHub Actions workflows for the Copilot Camp repository. These workflows automate documentation deployment and translation processes.
Trigger: Automatic on push to main branch
Purpose: Builds and deploys the MkDocs site to GitHub Pages
- ✅ Checks out the repository
- 🐍 Sets up Python 3.x environment
- 📦 Installs MkDocs Material theme and i18n plugin
- 🚀 Builds and deploys documentation to
gh-pagesbranch - 🌐 Updates the live documentation site
- Automatic deployment - No manual intervention needed
- Multi-language support - Handles internationalization with
mkdocs-static-i18n - Force deployment - Ensures clean updates with
--forceflag
No additional setup required - uses built-in GITHUB_TOKEN.
Documentation automatically deploys when you push to main:
git push origin mainYou can also deploy documentation on-demand:
- Go to Actions tab in GitHub repository
- Select "🚀 Deploy Documentation" workflow
- Click "Run workflow"
- Optionally provide a reason for deployment (e.g., "Emergency rebuild", "Config update")
- Click "Run workflow" to start deployment
Trigger: Manual dispatch (workflow_dispatch)
Purpose: Translates English documentation to Japanese using Azure OpenAI
- ✅ Validates Azure OpenAI secrets are configured
- 🔍 Checks timestamps to only translate updated files
- 🌐 Translates Markdown files using AI
- 📝 Commits and pushes translation updates
- 📊 Provides detailed progress and summary reports
- Unbuffered output - See translation progress as it happens
- Live status updates - Each file being processed shows immediately
- No silent waiting - Always know what's happening
- Incremental updates - Only translates files newer than existing translations
- Force mode - Option to re-translate all files regardless of timestamps
- Path-aware - Handles both regular docs and includes directory
- Secret validation - Checks all required Azure OpenAI credentials upfront
- Error handling - Clear error messages for common issues
- Safe execution - Runs from repository root with proper file paths
- Progress summary - Shows which files were translated/skipped
- File change tracking - Lists all updated translation files
- Failure notifications - Helpful troubleshooting information
Configure these repository secrets in Settings → Secrets and variables → Actions:
| Secret Name | Description | Example |
|---|---|---|
AZURE_OPENAI_ENDPOINT_URL |
Your Azure OpenAI endpoint | https://your-resource.openai.azure.com/ |
AZURE_OPENAI_DEPLOYMENT_NAME |
Model deployment name | gpt-5 or o3 |
AZURE_OPENAI_API_KEY |
Azure OpenAI API key | abc123... |
- Go to Actions tab in GitHub repository
- Select "🌐 Run Translation Script" workflow
- Click "Run workflow"
- Choose options:
- ☑️ Force re-translation - Translate all files (ignore timestamps)
- ☐ Standard mode - Only translate updated files (recommended)
During execution, you'll see:
🚀 Running Python script with real-time output...
Translating docs/mslearn.md into a different language: ja
Skipping up-to-date file: docs/ja/index.md
Translating docs/awards.md into a different language: ja
✅ Translation script completed
After completion, the workflow summary shows:
- Triggered by: Username who ran the workflow
- Force retranslation: Whether force mode was enabled
- Translation Progress: Key messages from the translation process
- Files updated: List of modified translation files
- Missing secrets - Verify all Azure OpenAI secrets are configured
- API rate limits - Wait and try again, or contact Azure support
- Network issues - Retry the workflow
- Pages not enabled - Enable GitHub Pages in repository settings
- Permissions error - Ensure workflow has
contents: writepermission