더북(TheBook)

충돌이 발생한 파일을 어떻게 처리할지 가지를 병합하려는 사용자가 직접 결정해야 합니다. master 가지와 iss01 가지에서 클래스를 참조하는 방법이 달라 충돌이 발생했습니다. iss01 가지에서 작성한 대로 fortunecow 모듈을 직접 참조하도록 수정하겠습니다. 파일을 저장해서 편집기를 종료합니다.

node 'vm03.linuxmastery.kr' {
  include base
  include fortunecow
}

충돌한 파일을 제외하고 iss01 가지에서 했던 작업들이 모두 master 가지에 병합된 상태입니다. 병합 이후 fortunecow 모듈의 기본 매니페스트도 고쳐야 할 부분이 있습니다.

administrator@vmgate:~/code/environments/production$ vi modules/fortunecow/manifests/init.pp

iss01 가지에서 기본 매니페스트를 생성하면서 fortunecow::install 클래스만 참조하도록 작성했습니다. master 가지에서 작성한 fortunecow::motd 클래스를 참조하도록 include 문을 삽입합니다. 문제가 발생하지 않도록 리소스 실행 순서도 명시합니다.

# /home/administrator/code/environments/production/modules/fortunecow/manifests/init.pp
# fortunecow 모듈의 기본 매니페스트
class fortunecow {

  include fortunecow::install
  include fortunecow::motd 

  Class['fortunecow::install'] -> Class['fortunecow::motd'] 

}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.