আপনার যদি অনন্য সম্পত্তি = মান লাইনগুলির একটি সেট কনফিগার করতে হয় তবে আমি আরও সংক্ষিপ্ত লুপের প্রস্তাব দিই। উদাহরণ স্বরূপ:
- name: Configure kernel parameters
lineinfile:
dest: /etc/sysctl.conf
regexp: "^{{ item.property | regex_escape() }}="
line: "{{ item.property }}={{ item.value }}"
with_items:
- { property: 'kernel.shmall', value: '2097152' }
- { property: 'kernel.shmmax', value: '134217728' }
- { property: 'fs.file-max', value: '65536' }
অ্যালিক্স অ্যাক্সেলের পরামর্শ অনুসারে একটি ডিক ব্যবহার করে এবং মন্তব্য করা আউটগুলিতে মিলে যাওয়া স্বয়ংক্রিয়ভাবে অপসারণ যোগ করা,
- name: Configure IPV4 Forwarding
lineinfile:
path: /etc/sysctl.conf
regexp: "^#? *{{ item.key | regex_escape() }}="
line: "{{ item.key }}={{ item.value }}"
with_dict:
'net.ipv4.ip_forward': 1
template, তবে ব্যবহারlineinfileকরা একটি অ্যান্টিপ্যাটার্ন । এটি একটি শক্তিশালী লাল পতাকা যা আপনি "ফাইলটিতে কী আছে তা জানেন না", যা অজানা ব্যর্থতার যথেষ্ট ঝুঁকি নিয়ে যায়।