3. ansible/ Folder
• - Playbooks and inventory
• - Roles structure recommended for complex
setups
• - Example: nginx role with tasks and templates
4. docker/ Folder
• - docker-compose.yml for multi-container
apps
• - files/ for .env or supporting files
5. terraform/ Folder
• - main.tf, variables.tf, outputs.tf
• - Used for provisioning infrastructure (VMs,
cloud)
6. files/ Folder
• - Supporting files copied by Ansible or Docker
• - Example: index.html for Nginx
7. .github/workflows/ Folder
• - GitHub Actions automation
• - Separate workflows for Ansible, Terraform,
Docker Compose
8. Typical GitOps Workflow
• 1. Developer commits to Git
• 2. GitHub Actions triggers
• 3. SSH to server or infra host
• 4. Run Ansible, Terraform, or Docker Compose
• 5. Infrastructure & apps match Git state
9. Optional Best Practices
• - Use Ansible Vault for secrets
• - Use Terraform remote state
• - Break large playbooks into roles
• - Use branches for environments