Automate Deployments + Testing with CircleCi
Project scope
Categories
Cloud technologies Security (cybersecurity and IT security) DatabasesSkills
No skills listedOne Iota has developed a pair of software platforms that helps athletes and coaches track on-course and off-course performance and uniquely mental performance. In addition we have a backend system that supports a mobile app
For a couple of products we are building we have various deployment and testing steps that we want to be able to run in an CI/CD pipeline. This project is responsible for automating those steps into a series of pipelines using CircleCI. There are 4 unique pipelines that will need to be created and then the 4 pipelines will need to be duplicated across the two projects.
The main focus of this project is the following:
- Develop a manually triggered deployment pipeline for the core product. Will deploy to GCP App Engine
- Develop an automated deployment pipeline for the API documentation to be triggered on PR merged
- Develop a manually triggered or github action triggered pipeline for running unit tests
- Develop a manually triggered or github action triggered pipeline for running integration tests
This project will require knowledge of how these deployment steps function and interact with the external systems. You will receive help in gaining this understanding. This project is best completed with a partner but can be applied for individually. Those applying individually may, and likely will, be paired with a partner.
The exact tasks required to complete the project will be up to the student and can be adapted as needed. The general tasks will include:
- Understanding the high-level architecture to build automated for it
- Writing scripts with yaml files
- Testing scripts with staging and development environments
The final deliverables will be:
- The 8 yaml scripts updated in the CircleCI console and available to be run
Those working on our project will connect directly with our technical lead for guidance and support throughout the project. We will support you in:
- Understanding design intentions and decisions
- Understanding existing backend architecture
- Guide development priorities
- Other support as needed
About the company
One Iota Performance strives to help individuals and teams consistently improve and achieve their performance and wellness potential. We are seeking to apply to principles of psychology, data analytics, high-performance and wellness to software tools accessible by all.
We currently have an existing golf-specific application that helps competitive golfers and coaches identify where to spend their time and energy to improve performance. Details can be found on our website.