🧠 This project was originally created as part of the Site Reliability Engineer Nanodegree by Udacity.
Deployment Roulette is an experimental project that explores automated deployment strategies and CI/CD integrations using GitHub Actions. It demonstrates:
- 🟢 Canary deployments to AWS EKS clusters
- 📝 JIRA automation: auto-creating tickets from pull requests
This project uses GitHub Actions to orchestrate selective deployments and cross-platform issue management as part of a modern SRE workflow.
⚠️ Note: This project focuses on automation workflows and integration logic. Some shell scripts or services may be mocked or intentionally left abstract.
To run or test these workflows locally, you should have:
.github/workflows/canary-deployment.yml: triggers canary deploys to EKS.github/workflows/manual.yml: auto-creates JIRA tickets from PRs
Triggered by:
- Opening or reopening a Pull Request
- Manual invocation from the GitHub Actions tab
Performs:
- Configures AWS credentials using GitHub OIDC
- Connects to an EKS cluster
- Runs a
canary.shdeployment script (must be defined in/starter/apps/canary/)
Use Case: Progressive delivery strategy — a new version is deployed to a subset of pods/users before full rollout.
Triggered by:
- Opening or reopening a Pull Request
- Manual trigger from Actions tab
Performs:
- Authenticates to JIRA via secrets
- Creates a new issue in the
CONUPDATEproject - Assigns type
Taskand links PR info into the summary
Use Case: Streamlining workflow between GitHub and JIRA during feature/bug deployments.
Set the following GitHub Actions secrets for workflows to succeed:
AWS_REGIONAWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYAWS_SESSION_TOKEN(if using temporary creds)
JIRA_BASE_URLJIRA_USER_EMAILJIRA_API_TOKEN
Made with ❤️ and 🧉 by Cristian Cevasco