Ansible-এর প্রক্সি ম্যাপ লুকানো খালি প্লে ভেরিয়েবলটি সরান
ইনভেন্টরি গ্রুপ ভেরিয়েবলগুলো প্লে-স্তরের ঘোষণার কাছে হারিয়ে যায়, এমনকি সেই ঘোষণা খালি বা null হলেও।
যদি group_vars একটি প্রক্সি ম্যাপ সংজ্ঞায়িত করে কিন্তু টাস্কটি খালি মান পায়, তবে প্লেতে ঘোষিত একই ভেরিয়েবলটি খুঁজুন। প্লে ভেরিয়েবলের অগ্রাধিকার বেশি; খালি প্লেসহোল্ডারও ইনভেন্টরিকে ছাড়িয়ে যায়।
একটি বাহ্যিক ডাউনলোডকে পাবলিক HTTP প্রক্সি ব্যবহারের অনুমতি দেওয়া হলে, HTTP প্রক্সি তালিকা ইনভেন্টরি মানের জন্য প্রার্থী ঠিকানা সরবরাহ করে। ম্যাপটি ইনভেন্টরিতেই রাখুন:
proxy_env:
http_proxy: http://proxy.example.net:8080
https_proxy: http://proxy.example.net:8080তারপর প্লে-স্তরের proxy_env: প্লেসহোল্ডার ছাড়াই এটি উদ্দিষ্ট টাস্কে প্রয়োগ করুন:
environment: "{{ proxy_env | default({}) }}"কোনো রোলের ফলব্যাক প্রয়োজন হলে, রোল ডিফল্টে একটি খালি ম্যাপ ইনভেন্টরি মানের নিচে থাকে এবং ইনভেন্টরিকে জিততে দেয়।
দেখানো ফিল্টারটি undefined সামলায়, খালি দেখতে সব অবস্থা নয়। স্পষ্ট null ইতিমধ্যে সংজ্ঞায়িত, তাই সাধারণ default({}) সেই উচ্চ-অগ্রাধিকার ওভাররাইড মুছে দেয় না।
প্রক্সি এন্ডপয়েন্ট পরিবর্তনের আগে ক্ষতিগ্রস্ত হোস্টের কার্যকর মান পরীক্ষা করুন। environment নির্দেশ টাস্কের ইনপুট সরবরাহ করে কেবল তখনই, যখন ভেরিয়েবল অগ্রাধিকার এটি যে ম্যাপটি মূল্যায়ন করে সেটি বেছে নেয়।