Chef proksi sozlamalari compile va converge bosqichlarida
Bitta remote_file amali uchun global proksini o‘zgartirganda retsept kompilyatsiyasi va resurs bajarilishini hisobga oling.
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] = previousVaqtinchalik qiymat bu oddiy resurs biror narsani yuklab olishidan oldin yo‘qolgan bo‘ladi:
- Compile: yuqori darajadagi Ruby qiymatni saqlaydi, vaqtinchalik proksini o‘rnatadi,
remote_fileni e’lon qiladi va qiymatni tiklaydi. - Converge: resurs o‘z amalini o‘sha paytda mavjud konfiguratsiya bilan bajaradi.
Mos ichki istisnolarga ega barqaror mijoz proksisi bu vaqt muammosidan qochadi. Shell wildcard qoidalarini taxmin qilish o‘rniga o‘rnatilgan mijozning hujjatlashtirilgan istisno sintaksisidan foydalaning. Ruxsat etilgan ommaviy yo‘lda ommaviy artefaktni mustaqil yuklab olish uchun, Chef mijozida sozlangan yoki saqlangan proksi hisobi bo‘lmasa, HTTP proksilari ro‘yxatidan yozuv barqaror HTTP so‘nggi nuqtasini taqdim etishi mumkin. Uning ichki istisnolarini saqlang; manzil tanlash compile va converge uni qachon iste’mol qilishini o‘zgartirmaydi.
Agar bitta amalga maxsus yo‘l kerak bo‘lsa, uning konfiguratsiya o‘zgarishi va bajarilishini bir xil doirada saqlang. Mos unified-mode xatti-harakatiga ega maxsus resurs bitta variant, ammo Chef::Config global bo‘lib qoladi. Yuklab olish muvaffaqiyatsiz bo‘lganda va fayl allaqachon yangilangan bo‘lganda uni tiklang. Yangilanish bildirishnomasi shartsiz ishlamaydi va istisnodan keyin keyingi tozalash resursi hech qachon ishlamasligi mumkin.
lazy source xususiyati o‘sha xususiyatning baholanishini kechiktiradi, atrofdagi Ruby tayinlashlarini emas. Yuklab olish aynan o‘sha vaqtga tegishli bo‘lsa, compile vaqtidagi resurs bajarilishi alohida qo‘llab-quvvatlanadigan tanlov; u bog‘liqliklar va bildirishnomalar vaqtini ham o‘zgartiradi. E’lon tartibi izolyatsiya beradi deb kutish o‘rniga, HTTP mijozi proksi sozlamasini qachon iste’mol qilishiga qarab tanlang.