لدي كتاب قواعد مشابه جدًا للأمثلة عبر الإنترنت:
مهام:
- الاسم: قم بإنشاء مثيل EC2
ec2:
[-قص-]
سجل: ec2
- الاسم: اطبعه
التصحيح: msg = "يحتوي العنصر - {{item.public_ip}}"
with_items: ec2.instances
هذا يعطي الخطأ:
فادح: [localhost] => متغير واحد أو أكثر من المتغيرات غير المحددة: "كائن str" ليس له خاصية "public_ip"
إذا قمت بتغييره إلى {{item}} أرى:
TASK: [طباعته] * * * * * * * * * * * * * * * * * * * *
حسنًا: [localhost] => (item = ec2.instances) => {
"العنصر": "ec2.instances"،
"msg": "يحتوي العنصر - ec2.instances"
}
يبدو أن "ec2.instances" هي مجرد سلسلة؟ أخيرًا ، إذا استخدمت "with_items: ec2.results" ، فيمكنني التكرار من خلالها ولكن يجب أن أشير إليها على أنها item.instances.0.public_ip
هل لديك أي فكرة عن سبب ظهور ec2_instances كسلسلة بدلاً من القاموس؟
يحرر:
: arp_kiki / pts / 55: 0.08: جديد ؛ ansible - نسخة ansible 1.5.4
بعد الترقية:
حسنًا: [localhost] => (item = ec2.instances) => {
"العنصر": "ec2.instances"،
"msg": "يحتوي العنصر - ec2.instances"
}
PLAY RECAP * * * * * * * * * * * * * * * * * * * * * *
المضيف المحلي: موافق = تم تغيير 2 = 1 لا يمكن الوصول إليه = فشل 0 = 0
: arp_kiki / pts / 55: 0.31: جديد ؛ ansible - النسخة
ansible 1.9.1
أهلا!
شكرا جزيلا لاهتمامك في Ansible. إنه يعني بصدق الكثير بالنسبة لنا.
يبدو أن هذا سؤال مستخدم ، ونود توجيه هذه الأنواع من الأشياء إما إلى القائمة البريدية أو قناة IRC.
والسبب أيضًا هو أنه يتم استخدام with_items وبالتالي هناك حالات متعددة ويتم تخزين نتائج كل مثيل تم إنشاؤه في ec2.results ديكت. إذا كان هناك مثيل واحد فقط قم بإنشاء تجنب with_items ، فحينئذٍ يجب أن تحصل على ما تحتاجه أو إذا كان لديك مثيلات متعددة لإنشاءها ثم للحصول على استخدام IP العام with_items: ec2.results and item.public_ip
IRC: #ansible على irc.freenode.net
القائمة البريدية: https://groups.google.com/forum/#!forum/ansible -project
إذا كان بإمكانك التوقف عند هذا الحد ، فنحن نقدر ذلك. يتيح لنا ذلك الاحتفاظ بمتعقب المشكلات بحثًا عن الأخطاء وطلبات السحب و RFEs وما شابه ذلك.
شكرًا لك مرة أخرى ونتطلع إلى رؤيتك في القائمة أو IRC. شكرا!
مفهوم. افترضت أنه خطأ لأنني كنت أتابع الوثائق وأحصل على نتائج مختلفة.
لقد جئت للتو إلى هذا الموضوع بسبب ارتكاب نفس "خطأ المستخدم" ، والذي وصف @ benojoy سبب ذلك بإيجاز شديد. إذا وجدت أن هذا موقف "غير واضح" بدرجة كبيرة ، فسيكون من الرائع الإشارة إلى هذا ، على الأقل في أمثلة وثائق وحدة ec2 ، حيث سيكون نمط with_items
نمطًا شائعًا جدًا نظم إدارة في مناطق توافر مجموعة.
التعليق الأكثر فائدة
مفهوم. افترضت أنه خطأ لأنني كنت أتابع الوثائق وأحصل على نتائج مختلفة.