2016-08-03 3 views
1

GitHub에 연결된 Heroku 파이프 라인을 사용하고 있습니다.실행중인 heroku 앱에서 app.json 매니페스트를 어떻게 업데이트합니까?

나는 세 가지 다른 환경을 가지고 - Reviews (내 모든 풀 요청을 자동으로 배포되는 곳으로 한 번 내 CI 테스트가 성공) - Staging (내 마스터 지점이 배포되는 경우) - Production (내 생산 환경)

Review 브랜치를 가져 와서 병합 할 때 앱이 생성되고 삭제됩니다. 내 StagingProduction 앱은 항상 같습니다. Staging은 내 마스터 브랜치가 업데이트 될 때 업데이트되며, 수동으로 그 코드를 Production으로 승격시킬 수 있습니다.

모두 훌륭합니다! 내가 app.json 파일에 문제가있는 것을 제외하고는.

새 분기를 개발할 때 종종 새로운 heroku 애드온, 즉 Redis db 또는 새로운 모니터링 도구를 사용합니다. 내 app.json 파일을 업데이트하여이 작업을 수행합니다. 예 :

"addons": [ 
    "logentries:le_tryit", 
    "newrelic:wayne", 
    { 
    "plan": "mongolab:sandbox", 
    "as": "MONGODB_URI" 
    }, 
    { 
    "plan": "heroku-redis:hobby-dev", 
    "as": "REDIS_SESSIONS_URI" 
    } 
] 

A A 풀을 생성 요청되면, 응용 프로그램은 Reviews에서 생성되고 나는 나의 새로운 애드온을 볼 수 있습니다. 나는 마스터 내 지점을 병합 할 때 불행하게도, app.jsonStaging 환경을 다시 실행하지 않는 것 (그리고 이후 내 Production 환경 인치

기존에게 Heroku 응용 프로그램에서 app.json 매니페스트를 다시 실행하는 방법이 있나요 ? 그리고 그들은 각각의 새로운 배포 자동화 할 수 있는가?

되지 않은 경우,이 이유가?

감사합니다!

당신이 요구하는지 무엇을 할 수있는 방법은 없습니다

답변

1

는. app.json이 아니라 새로운 Heroku를 만들 때 구문 분석 됨 다시 배포 할 때가 아닙니다. 그 이유는 프로덕션 응용 프로그램에 원치 않는 부작용을 유발할 수 있기 때문입니다.

EG : app.json 파일에서 한 줄을 제거하고 기존의 Heroku 응용 프로그램으로 푸시하면 어떻게 될까요? Heroku가 애드온을 삭제해야합니까? (많은 데이터가 손상 될 수 있습니다.)

대신 프로덕션 릴리스를 절단 할 때, 새 애드온을 사용하거나 변경해야 할 경우 수동으로 CLI를 통해 수행해야합니다. . 예를 들어

:이 입력 @rdegges에 대한

$ heroku addons:create heroku-redis 
+0

감사합니다. 조금 더 생각하고 동의합니다. app.json에서 기존 앱을 업데이트하는 것이 좋지 않을 수도 있습니다. 새로운 애드온을 추가하면 파이프 라인이나 유사 제품을 사용하는 경우 기존 앱 (CLI/대시 보드)을 수동으로 기존 앱에 추가해야합니다. – unknown

관련 문제