Tetapkan persekitaran proksi pada muat turun exec Puppet
Tetapkan nilai persekitaran pada sumber exec yang menjalankan Wget, dengan pengawal fail selesai untuk muat turun.
Sumber exec Puppet mempunyai atribut environment. Letakkan nilai proksi pada sumber yang memanggil pemuat turun:
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'],
}
Contoh menganggap Wget dan mv berada pada laluan itu. Pemindahan yang gagal meninggalkan nama laluan sementara; nama laluan akhir hanya dipasang selepas Wget berjaya. Pengawal creates kemudian melangkau pelaksanaan seterusnya selagi fail berversi yang selesai wujud.
Tatasusunan persekitaran membekalkan nilai apabila Puppet menjalankan arahan ini. Entri HTTP daripada senarai proksi HTTP boleh membekalkan URL proksi untuk muat turun artifak awam yang dibenarkan apabila Wget tiada kelayakan proksi yang dikonfigurasi atau disimpan. Eksport yang dilakukan oleh sumber exec lain hanya sah dalam proses lain itu dan keturunannya. Menyusun dua sumber tidak menjadikan persekitaran shell yang pertama berkekalan dalam yang kedua.
Kekalkan persekitaran sumber ini bersama sumber. Operasi Puppet lain boleh menggunakan laluan terkonfigurasi mereka sendiri tanpa mengubah fail permulaan Wget seluruh mesin.