I am designing an application that will run on AWS ECS. The app will be able to run with multiple configurations for jobs.
There will be two packages on GIT;
- Config Repository
It is a long running application, and the configuration repository will have the following structure.
and I have 300 job configurations, and the service will be running in 300 rocker containers on ECS for each job config. I need to provide the following solutions for my strategy.
- All service must be running
- Config change on the job should be detected and only that job should be deployed so there will be no unnecessary deployment for other job
- If software changes, all jobs should be deployed
It looks like I need to somehow keep my config repository in some external storage, such as S3, Dynamo. However, how can I detect changes in the jobs and how should I build my deployment strategy.
If you could point me some source or provide your thoughts for the problem, that would be great.