Automated Task Development with Amazon Q and GitHub Actions
Combining the /dev workflow of Amazon Q Developer with your CI/CD pipeline to optimize efficiency in your SDLC!
- End User: Raises an issue describing the need or problem.
- Product Owner & Business Analyst: Refine the user request and translate it into clear business requirements.
- Technical Lead: Converts business requirements into technical requirements and breaks the task down into smaller pieces.
- Scrum Master: Prioritizes tasks and manages scope.
- Developer: Implements the feature and writes automated tests.
- Tester: Conducts end-user and performance testing.
- Product Owner/BA: Signs off on the release and communicates updates to the customer.
- Customer: Happy with the delivered feature! 🎉
- Ensure Amazon Q only works on a feature branch (never directly on main).
- Enable repository protection mechanisms:
- ✅ No rewriting history
- ✅ No unauthorized merges into main
- ✅ Restrict who can push to main
- The GitHub CLI
- The built-in trigger variable: ${{ github.event.issue.body }}
- Pull Request Notes – A clear summary of what was changed.
- Commit Message – A meaningful description of the work done.
- Triggering on a Label: I used the label "ready-for-ai-development" as a trigger. This prevents Amazon Q from starting development until the task is fully defined.
- Label Management: Labels help track the AI’s progress and potentially indicate failures if something goes wrong.
- Pull request commenting, always handy.