We would like to challenge you with a technical exercise. It will check the level of your knowledge in common DevOps technologies that we’re using. You don’t have to do all of the exercises, but try to do as much as you can.
All your changes should be made in a private fork of this repository. When you're done please:
- Create a private repository on your Github account
- Give read only access to 10Clouds-devops-test user.
- Prepare a simple 3-tier hello-world application with flask or django where you can simply interact (read/write) with database.
- Dockerize the prepared application
- Prepare Docker Compose files for local/dev/prod environments
- Prepare CI/CD flow as a declarative/script pipeline (Jenkinsfile)
- Use ansible to deploy all changes to server
- Terraform → Prepare IaC setup on one of the selected public clouds (aws/gcp). Think about: VPC, EC2/ECS, S3, RDS, ELB etc.
- Remember about writing simple and clear documentation of how to run your application.
- Make sure that your containers can be deployed on Kubernetes Cluster. Minikube can be your new friend.