AWS Passer en variable dans buildspec.yml de CodePipeline

J'ai une AWS CodePipeline qui appelle CodeBuild dans la Phase de développement.

La question est comment puis-je passer une variable d'environnement de CodePipeline qui peut être lu dans le CodeBuild de buildspec.yml?

Je sais que je peux définir des variables d'environnement dans CodeBuild, mais je veux utiliser le même CodeBuild projet de dev, qa, et les environnements de prod. Je ne vois pas comment je peux passer une variable d'environnement de CodePipeline qui en fait tout le chemin à la buildspec.yml

Exemple buildspec.yml

version: 0.1

phases:   
  build:
    commands:
      - npm install
      - npm build -- --env ${CURRENT_ENVIRONMENT}

Où CURRENT_ENVIRONMENT serait la variable I définie dans le CodePipeline action de la Scène.

  • Pour toute personne intéressée, à la façon dont je me suis autour de cette est que vous pouvez définir des variables d'environnement dans CodeBuild qui se passait à buildspec.yml. Donc, tant que vous pouvez obtenir vos paramètres dans AWS::CodeBuild::Projet CloudFormation déclaration, ils sont ramassés lors de la buildspec.yml est exécuté.
  • C'est un peu malheureux limitation. J'ai ajouté une AWS fil de discussion du forum à ce sujet ici Envisager de carillon à laisser AWS savoir si cela est important pour vous.
  • comment utiliser les variables d'environnement dans buildspec.yml: mnp build --env $THE_VARIABLE
InformationsquelleAutor user1432403 | 2017-01-17