Puppet File Source가 웹 서비스에서 제공 될 수 있습니까?


10

꼭두각시가 인터넷에서 파일의 Source 속성에 사용할 수있는 파일을 사용하도록하는 간단한 방법이 있습니까?

예 :

file { "/home/text.txt":
  source => [
    "http://www.example.com/text.txt",
  ]
}

서버의 무결성을 중요하게 생각한다면 최소한 https를 사용하십시오. 누가 그 도메인을 제어하는지 모르는보다 신뢰할 수있는 도메인을 사용하십시오. 음 ... 여기에서 더 어둡게됩니다.
mc0e

답변:


4

미래의 독자들에게 파일 리소스가 실제로 HTTP 소스를 구현하고 있음을 알리기 위해 업데이트 된 답변을 작성 중입니다.

에서 워드 프로세서 :

출처

로컬 파일에 복사 될 소스 파일. 이 속성은 컨텐츠 및 대상과 상호 배타적입니다. 허용되는 값은 다음과 같습니다.

  • 꼭두각시 : URI, 모듈의 파일 또는 꼭두각시 파일 서버 마운트 지점을 가리 킵니다.
  • 로컬에서 사용 가능한 파일 (NFS 공유 또는 Windows 맵핑 드라이브의 파일 포함)에 대한 완전한 경로.
  • file : URI : 로컬 파일 경로와 동일하게 작동합니다.
  • http : URI (일반 웹 서버에서 제공하는 파일을 가리킴)

그래서 당신은 당신이 작성한대로 구조체를 사용할 수 있습니다 :

file { "/home/text.txt":
  source => "http://www.example.com/text.txt",
}

2
인형 버전 4.4.0의 등 (티켓 통해 tickets.puppetlabs.com/browse/PUP-1072 )
KJH

4

이 됐어요 기능으로 요구 년 동안 ...하지만 당신은이에 대한 사용자 지정 기능을 필요로 끝날 것 ... 또는 사용 curl하거나 wget. 꼭두각시를 참조하십시오 .

text.txt에 무엇입니까?


txt.txt는 예일뿐입니다. 실제로 관리자 시스템에서 Freeradius 클라이언트를 가져 오는 데 사용하고 싶습니다.
gunwin

4

지금 바로 사용할 수는 없습니다.

출처:

...

사용 가능한 URI 체계는 꼭두각시와 파일입니다. Puppet URI는 Puppet의 내장 파일 서버에서 파일을 검색합니다.

define인터넷에서 찾은 것을 사용하여 끝났습니다 .

define remote_file($remote_location=undef, $mode='0644'){
  exec{ "retrieve_${title}":
    command => "/usr/bin/wget -q ${remote_location} -O ${title}",
    creates => $title,
  }

  file{$title:
    mode    => $mode,
    require => Exec["retrieve_${title}"],
  }
}

remote_file{'/home/text.txt':
  remote_location => 'http://www.example.com/text.txt'
}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.