Tetapan proksi Chef merentas fasa compile dan converge
Ambil kira penyusunan resipi dan pelaksanaan sumber apabila menukar proksi global untuk satu tindakan remote_file.
previous = Chef::Config[:http_proxy]
Chef::Config[:http_proxy] = 'http://proxy.example.net:8080'
remote_file '/var/tmp/package.zip' do
source 'https://downloads.example.net/package.zip'
end
Chef::Config[:http_proxy] = previousNilai sementara itu sudah hilang sebelum sumber biasa ini memuat turun apa-apa:
- Compile: Ruby peringkat atas menyimpan nilai, menetapkan proksi sementara, mengisytiharkan
remote_filedan memulihkan nilai. - Converge: sumber itu melaksanakan tindakannya dengan konfigurasi yang tersedia pada masa itu.
Proksi klien yang stabil dengan pengecualian dalaman yang sesuai mengelakkan masalah pemasaan ini. Gunakan sintaks pengecualian yang didokumenkan oleh klien yang dipasang dan bukannya menganggap peraturan wildcard shell. Untuk muat turun artifak awam secara berasingan pada laluan awam yang dibenarkan, entri daripada senarai proksi HTTP boleh menyediakan titik akhir HTTP yang stabil apabila klien Chef tiada akaun proksi yang dikonfigurasikan atau disimpan. Kekalkan pengecualian dalamannya; memilih alamat tidak mengubah bila compile dan converge menggunakannya.
Jika satu operasi memerlukan laluan khas, letakkan perubahan konfigurasi dan pelaksanaannya dalam skop yang sama. Sumber tersuai dengan tingkah laku unified-mode yang sesuai ialah satu pilihan, tetapi Chef::Config kekal global. Pulihkannya apabila muat turun gagal dan apabila fail sudah terkini. Pemberitahuan kemas kini tidak berjalan tanpa syarat, dan sumber pembersihan kemudian mungkin tidak pernah berjalan selepas pengecualian.
Sifat lazy source menangguhkan penilaian sifat itu, bukan penetapan Ruby di sekelilingnya. Pelaksanaan sumber pada masa compile ialah pilihan disokong yang berasingan apabila muat turun memang tergolong pada masa itu; ia juga mengubah pemasaan kebergantungan dan pemberitahuan. Pilih mengikut bila klien HTTP menggunakan tetapan proksinya, bukannya mengharapkan susunan pengisytiharan memberikan pengasingan.