Score:1

Ansible: เติมเทมเพลตที่มีการแก้ไขที่ไม่เปลี่ยนรูป

ธง au

ฉันต้องทำ playbook ที่จะใช้ไฟล์เทมเพลต สอดแทรกตัวแปรบางตัว และนำไฟล์ที่ได้ไปยังไดเร็กทอรีอื่น

ส่วนแรกของปัญหาคือไฟล์ผลลัพธ์จะถูกใช้เป็น Playbook ของ Ansible อื่น ดังนั้นไฟล์ต้นฉบับจึงมีการแก้ไขอื่นๆ และการแก้ไขเหล่านี้จะต้องคงไว้ตามเดิม ตัวอย่างเช่น สมมติว่าไฟล์ต้นฉบับมีสิ่งที่คล้ายกัน:

คีย์ 1: {{ ค่า 1 }}
คีย์ 2: {{ ค่า 2 }}

คุณค่าของ คีย์ 1 ต้องแก้ไขโดย playbook ของฉัน (มันจะกลายเป็นค่าของ มูลค่า1 ตัวแปร) แต่ในขณะเดียวกัน ค่า2 ต้องเก็บไว้เหมือนเดิม (มันจะต้อง {{ ค่า2 }}.

ส่วนที่สองของปัญหาคือฉันไม่สามารถแก้ไขไฟล์ต้นฉบับและเพิ่มแบ็กสแลชก่อนวงเล็บปีกกาได้ เนื่องจากไฟล์นี้กำลังอัปเดตโดยกระบวนการอื่น ยิ่งไปกว่านั้น เนื่องจากไฟล์เทมเพลตมีการอัปเดตเป็นครั้งคราว ฉันจึงไม่สามารถคาดเดาได้ว่าจะต้องข้ามตัวแปรใดบ้างหลังจากการอัปเดตครั้งถัดไปฉันรู้แค่ว่าต้องสอดแทรก มูลค่า1แต่ฉันไม่รู้ว่าตัวแปรอื่นชื่ออะไร (ทุกวันนี้มี ค่า2 และ มูลค่า3พรุ่งนี้นักพัฒนาเปลี่ยนชื่อ ค่า2 ถึง ค่า 2_deprecated และเพิ่ม มูลค่า3 ที่ไหนสักแห่ง).

ฉันขอ Ansible ได้ไหมว่าฉันต้องแก้ไข มูลค่า1 เท่านั้น?

ขอขอบคุณ.

Score:1
ธง br

ถาม: "เทมเพลตประกอบด้วยการแก้ไขและการแก้ไขเหล่านี้ต้องคงไว้ตามเดิม"

A: ประกาศตัวแปรเริ่มต้น

    ปอนด์: '{{ "{{" }}'
    rbr: '{{ "}}" }}'
    value1: '{{ ปอนด์ }} ค่า 1 {{ rbr }}'
    ค่า 2: '{{ ปอนด์ }} ค่า 2 {{ rbr }}'

และสร้างเทมเพลต

เปลือก> แมว template.yml.j2
คีย์ 1: {{ ค่า 1 }}
คีย์ 2: {{ ค่า 2 }}

ถาม: "ฉันต้องแก้ไขค่า 1 เท่านั้น"

ตอบ: ลบล้างค่าเริ่มต้น เช่น

    - แม่แบบ:
        src: template.yml.j2
        ปลายทาง: playbook.yml
      วาร์:
        ค่า 1: ค่า 1

ให้

เปลือก> cat playbook.yml 
คีย์ 1: ค่า 1
คีย์ 2: {{ ค่า 2 }}
au flag
ขอบคุณวลาดิมีร์! ฉันต้องอัปเดตคำอธิบายปัญหา เนื่องจากฉันไม่ได้อธิบายไว้ในโพสต์ต้นฉบับ: "เนื่องจากไฟล์เทมเพลตมีการอัปเดตเป็นครั้งคราว ฉันจึงไม่สามารถคาดเดาได้ว่าตัวแปรใดบ้างที่ต้องถูกข้ามหลังจากการอัปเดตครั้งถัดไป ฉัน รู้แค่ว่าฉันต้องแก้ไขค่า 1 แต่ฉันไม่รู้ว่าตัวแปรอื่นชื่ออะไร (วันนี้มีค่า 2 และค่า 3 พรุ่งนี้ผู้พัฒนาเปลี่ยนชื่อค่า 2 เป็นค่า 2_deprecated และเพิ่มค่า 3 ที่ไหนสักแห่ง)"
br flag
คำอธิบายก็โอเค ฉันได้ทำให้ตัวอย่างง่ายขึ้น นี่คือสิ่งที่คุณกำลังมองหา?

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา