CodeDeploy How to set dynamic Capacity Provider

0

We are deploying a set of containers into various accounts using CodePipeline and CodeDeploy. Each account has a different capacity provider name so our question is how can we set up the AppSpec.yaml file to dynamically change the Capacity Provider depending on the account? Is there an environment variable that CodeDeploy can leverage as it does the <TASK_DEFINITION> value?

version: 0.0
Resources:
  - TargetService:
      Type: AWS::ECS::Service
      Properties:
        TaskDefinition: <TASK_DEFINITION>
        LoadBalancerInfo:
          ContainerName: 'name-of-container'
          ContainerPort: 80
         CapacityProviderStrategy:
           - Base: 1
             CapacityProvider: "how-do-i-set-this-dynamically-based-on-account-or-environment"
             Weight: 1
gefragt vor 2 Monaten166 Aufrufe
1 Antwort
0

Hello.

I don't think capacity providers have a placeholder like <TASK_DEFINITION>.
Therefore, I thought that a workaround would be to use something like CodeBuild to rewrite the capacity provider name in appspec.yml during the build phase.
https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html

profile picture
EXPERTE
beantwortet vor 2 Monaten
profile picture
EXPERTE
überprüft vor 2 Monaten
  • Thank you. But adding it on the Build would require us to change all the existing capacity providers to have the same name. What we are trying to do is make it dynamic. But to your point, it may just not be possible.

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen