এটি করার একাধিক উপায় রয়েছে এবং আপনার প্রশ্ন থেকে এটি আপনার প্রয়োজন কী তা পরিষ্কার করে না।
১. কেবলমাত্র পার টাস্ক সংজ্ঞায়িত করতে আপনার যদি পরিবেশের পরিবর্তনশীল প্রয়োজন হয় তবে আপনি এটি করুন:
- hosts: dev
tasks:
- name: Echo my_env_var
shell: "echo $MY_ENV_VARIABLE"
environment:
MY_ENV_VARIABLE: whatever_value
- name: Echo my_env_var again
shell: "echo $MY_ENV_VARIABLE"
মনে রাখবেন যে MY_ENV_VARIABLE
কেবল প্রথম কাজের জন্য উপলব্ধ, environment
এটি আপনার সিস্টেমে স্থায়ীভাবে সেট করে না।
TASK: [Echo my_env_var] *******************************************************
changed: [192.168.111.222] => {"changed": true, "cmd": "echo $MY_ENV_VARIABLE", ... "stdout": "whatever_value"}
TASK: [Echo my_env_var again] *************************************************
changed: [192.168.111.222] => {"changed": true, "cmd": "echo $MY_ENV_VARIABLE", ... "stdout": ""}
আশা করি শিগগিরই উপরের মত টাস্ক স্তরটি নয়, প্লে স্তরেও ব্যবহার environment
সম্ভব হবে । উত্তরীয়দের গিটহাবটিতে এই বৈশিষ্ট্যের জন্য বর্তমানে একটি টান অনুরোধ রয়েছে: https://github.com/ansible/ansible/pull/8651
আপডেট: এটি এখন জানুয়ারী 2, 2015 হিসাবে একীভূত হয়েছে।
২. আপনি যদি স্থায়ী পরিবেশ পরিবর্তনশীল + সিস্টেমের প্রশস্ত / কেবল নির্দিষ্ট ব্যবহারকারীর জন্য চান want
আপনার লিনাক্স বিতরণ / শেলটিতে আপনি এটি কীভাবে করেন তা খতিয়ে দেখা উচিত, এর জন্য একাধিক স্থান রয়েছে। উবুন্টুতে উদাহরণস্বরূপ আপনি ফাইলগুলিতে এটি সংজ্ঞায়িত করেন:
~/.profile
/etc/environment
/etc/profile.d
ডিরেক্টরি
- ...
আপনি এটি সম্পর্কে উবুন্টু ডক্সটি এখানে পাবেন: https://help.ubuntu.com/commune/Ennative Variables
সর্বোপরি পরিবেশের পরিবর্তনশীল নির্ধারণের জন্য। উবুন্টু আপনি কেবল lineinfile
উত্তরযোগ্য থেকে মডিউল ব্যবহার করতে পারেন এবং নির্দিষ্ট ফাইলে কাঙ্ক্ষিত লাইন যুক্ত করতে পারেন। এটি স্থায়ী করতে কোথায় যুক্ত করতে হবে তা জানতে আপনার ওএস ডক্সের সাথে পরামর্শ করুন।