Поставување прокси околина при Puppet exec преземање
Поставете вредности на околината на exec ресурсот што го извршува Wget, со заштита на завршената датотека за преземањето.
Ресурсот exec на Puppet има атрибут environment. Ставете ги прокси вредностите на ресурсот што го повикува преземачот:
file { '/var/cache/myapp':
ensure => directory,
}
exec { 'fetch-artifact':
provider => shell,
command => '/usr/bin/wget --tries=1 --timeout=20 -O /var/cache/myapp/artifact.part https://downloads.example.net/artifact-v1.bin && /usr/bin/mv /var/cache/myapp/artifact.part /var/cache/myapp/artifact-v1.bin',
environment => [
'http_proxy=http://proxy.example.net:8080',
'https_proxy=http://proxy.example.net:8080',
],
creates => '/var/cache/myapp/artifact-v1.bin',
require => File['/var/cache/myapp'],
}
Примерот претпоставува дека Wget и mv се на тие патеки. Неуспешен пренос го остава привременото име на патеката; конечното име се инсталира само откако Wget ќе успее. Потоа заштитата creates ги прескокнува подоцнежните извршувања додека постои завршената верзионирана датотека.
Низата околина дава вредности кога Puppet ја извршува оваа наредба. HTTP запис од списокот на HTTP прокси може да го обезбеди прокси URL-то за дозволено преземање на јавен артефакт кога Wget нема конфигурирани или зачувани прокси акредитиви. Извозот што го врши друг exec ресурс важи само во тој друг процес и неговите потомци. Подредувањето на два ресурса не ја прави околината на обвивката на првиот трајна во вториот.
Чувајте ја околината на овој ресурс со ресурсот. Другите Puppet операции можат да ги користат своите конфигурирани правци без да ја менуваат стартната датотека на Wget за целата машина.