2017-01-17 7 views
11

빌드 단계에서 CodeBuild를 호출하는 AWS CodePipeline이 있습니다.AWS CodePipeline에서 변수를 buildspec.yml로 전달합니다.

질문은 CodeBuild의 buildspec.yml에서 읽을 수있는 CodePipeline의 환경 변수를 어떻게 전달합니까?

저는 CodeBuild에서 환경 변수를 설정할 수 있지만 dev, qa 및 prod 환경에 동일한 CodeBuild 프로젝트를 사용하려고합니다. 나는 모든 방법 buildspec.yml에

예 buildspec.yml 그것을 만드는 CodePipeline에서 환경 변수를 전달할 수있는 방법을 볼 수 없습니다

CURRENT_ENVIRONMENT 내가 설정 변수가 될 것
version: 0.1 

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

CodePipeline 스테이지 동작.

+1

, 나는이 문제를 가지고 방법은 당신이 buildspec.yml 전달받을 CodeBuild에서 환경 변수를 설정할 수있다 . 따라서 매개 변수를 AWS :: CodeBuild :: Project CloudFormation 선언에 넣을 수 있다면 buildspec.yml이 실행될 때 매개 변수가 선택됩니다. – user1432403

+0

이것은 다소 불행한 제한 사항입니다. AWS 포럼 스레드에 [여기] (https://forums.aws.amazon.com/message.jspa?messageID=770850#770850)를 추가했습니다. 이것이 중요한지 AWS에 알려주기 위해 chiming을 고려하십시오. . – jandersen

+0

buildspec.yml에서 환경 변수를 사용하는 방법 : npm build --env $ THE_VARIABLE – ricka

답변

5

이 기능은 현재 사용할 수 없습니다.

다른 환경 변수를 사용하여 각 스테이지마다 다른 CodeBuild 프로젝트를 만드는 것이 좋습니다.

당신은 당신의 builspec.yml에서 환경 변수를 사용하는 방법에 대한 자세한 내용을 확인할 수 있습니다 여기에 명령 : 관심있는 사람들을위한 http://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html

+1

1 년 내내이 기능을 사용할 수 없습니까? – pablochacin

관련 문제