더북(TheBook)

vim 설정 파일을 생성할 file 리소스에 대해 좀 더 자세히 살펴봅시다. 가상 게스트의 기본 사용자 계정이 administrator이기 때문에 vim 설정 파일 경로, 파일 소유자와 그룹은 미리 알고 있는 상태입니다. 참고해서 name, owner, group 속성을 작성할 수 있습니다. 접근 권한은 mode 속성으로 ‘666’으로 설정합니다. 퍼팻 에이전트에 배포할 설정 파일 원본의 경로는 source 속성으로 지정합니다. ‘puppet:///modules/[모듈명]’은 실제 디렉터리 경로 ‘[모듈 경로]/[모듈명]/files’에 해당합니다. puppet:///modules/base/.vimrc는 code/environments/production/modules/base/files의 파일 .vimrc를 의미합니다. vim 패키지를 설치한 이후에 설정 파일을 생성하려고 메타파라미터 require를 지정했습니다. notify 리소스로 퍼팻 에이전트 로그에 base::vim 클래스에서 실행한다는 자취를 남깁니다.

# /home/administrator/code/environments/production/modules/base/manifests/vim.pp
# vim 업그레이드
class base::vim { 

  package { 'vim':
    ensure => latest,
  }

  file { '.vimrc': 
    name => '/home/administrator/.vimrc', 
    owner => 'administrator', 
    group => 'administrator', 
    mode => '666', 
    source => 'puppet:///modules/base/.vimrc', 
    require => Package['vim'], 
  }

  notify { "===== base::vim =====\n": } 

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