
거나 기존 인스턴스를 업데이트할 수 있다. 최소한의 노력, 심지어 자동으로 스택의 신규 인스
턴스를 프로비저닝할 수 있다.
예를 들어
ShopSpinner
팀은 애플리케이션 서버를 사용하는 여러 스택 프로젝트에서 공통 코
드를 추출했다. 팀원은 각 스택 프로젝트에서 사용하는 모듈에 공통 코드를 넣었다. 그리고 나
중에 고객 애플리케이션의 스택 프로젝트가 여전히 매우 비슷하다는 것을 알게 되었다. 각 스
택에는 모듈을 사용한 애플리케이션 서버 생성 외에도 데이터베이스 생성 코드, 고객 전용 로
깅, 리포트 서비스가 있었다.
여러 고객 코드를 변경하고 테스트하는 것은 번거롭다. 그리고
ShopSpinner
는 매달 신규 고
객을 등록한다. 그래서 팀은 고객 애플리케이션 스택을 정의하는 단일 스택 프로젝트를 만들
기로 결정했다. 이 프로젝트는 몇 가지 다른 애플리케이션 (
Jira
와
GoCD
)과 마찬가지로 공유
Java
애플리케이션 서버 모듈을 계속 사용한다. 그러나 프로젝트에는 기존 고객별 인프라를
설정하기 위한 코드도 있다.
이제 신규 고객 환경을 구성할 때 팀원은 공통 고객 스택 프로젝트를 사용하여 신규 인스턴스
를 만든다. 프로젝트 코드베이스를 수정하면 테스트 인스턴스에 적용하여 정상적으로 작동하
는지 확인한 다음 고객 인스턴스에 하나씩 배포한다.
적용성
딜리버리 ...