노드 vm03에 적용했던 모듈을 모두 삭제하고 notify 리소스만 추가로 입력했다.
# /home/administrator/code/environments/production/manifests/site.pp # 노드 선언 node 'vm03.linuxmastery.kr' { include base include fortunecow notify { '===== vm03 =====\n': } }
변경한 매니페스트 파일을 추가하고 커밋한다.
administrator@vmgate:~/code/environments/production$ git add manifests/site.pp administrator@vmgate:~/code/environments/production$ git commit -m 'Remove modules from vm03'
git push 명령으로 원격 저장소에 바뀐 내용을 전송한다. 전송이 끝나면 깃허브 원격 저장소에도 매니페스트 파일 manifests/site.pp가 변경된 것을 확인할 수 있을 것이다.
administrator@vmgate:~/code/environments/production$ git push origin master
serious
공동 작업자 serious는 vm01.linuxmastery.kr 시스템에서 프로젝트 관리자 stinky가 변경한 내용을 반영하고자 한다. 매번 git clone해야 한다면 저장소의 모든 파일을 받아 와야 하므로 시간도 오래 걸릴 뿐 아니라 저장소를 일관되게 관리하기 어려울 것이다. 원본 저장소에서 변경된 부분만 받아 와서 갱신하는 편이 바람직하다. 변경된 파일을 받아 올 원본 저장소 주소 https://github.com/stinky/puppet_linuxmastery.kr을 upstream이라는 이름으로 저장했다. upstream에서는 파일을 받기만 하므로 저장소 주소에 토큰을 적용할 필요가 없다.