copilot-cli icon indicating copy to clipboard operation
copilot-cli copied to clipboard

[Feature Request] Ability to extend other manifests

Open zackdotcomputer opened this issue 3 years ago • 3 comments

Problem

I am setting up a small cluster of Backend Services which are, for the most part, the same other than for changes to the autoscale behaviors and one environment variable.

Request

Because of the shared code between these services, it would be convenient if I could create a base manifest.yml file and then extend it to provide the specific overrides each service needs. This would be similar to how within a single manifest.yml file, one can provide environment-specific overrides for a single service.

zackdotcomputer avatar Aug 04 '22 09:08 zackdotcomputer

This is a great idea which makes sense to me! Can I ask how many very similar services you have? I assume when you modify the base manifest file, you would expect Copilot populates the changes to the cluster of services, so that you could either deploy them separately or maybe use a pipeline to deploy all of them?

iamhopaul123 avatar Aug 04 '22 16:08 iamhopaul123

We have 3 services each of which have the same secrets and dockerfile but change a single ENV var that controls what work they prioritize and have different autoscaling numbers since we want, for example, to guarantee that there will always be at least 2 instances of services A and B, and 4 instances of service C.

I agree with the rest of your outline above - that I would like changes to the base manifest to be propagated to the extending manifests on next deploy, and I will be composing a pipeline that deploys all three in sequence but being able to do it together would be ideal.

zackdotcomputer avatar Aug 04 '22 16:08 zackdotcomputer

Related to #2699

iamhopaul123 avatar Aug 04 '22 16:08 iamhopaul123