ฉันมีผลิตภัณฑ์ที่ฉันสามารถติดตั้งได้ก่อน แล้วจึงอัปเดต - หมายถึงการเพิ่มคุณสมบัติเพิ่มเติมให้กับผลิตภัณฑ์พื้นฐานของฉัน
ผมทำโดยเรียกใช้ MSI ครั้งแรก จากนั้นไปที่ Add \ Remove Programs และเมื่อเลือกผลิตภัณฑ์ คุณสามารถคลิก "เปลี่ยน" และตัวช่วยสร้างการติดตั้งจะปรากฏขึ้นอีกครั้ง เพื่อให้คุณสามารถเลือกและติดตั้งคุณลักษณะเพิ่มเติมในผลิตภัณฑ์ได้
ฉันสร้าง 2 บทบาทและคู่มือการเล่นสำหรับภารกิจนี้
บทบาทแรกใช้ ansible.windows.win_package เพื่อติดตั้งผลิตภัณฑ์ฐาน (ดูตัวอย่างด้านล่าง)
- ชื่อ: ติดตั้ง Server.msi primary_appserver
ansible.windows.win_package:
เส้นทาง: C:\product.msi
log_path: C:\InstallProduct.log
ข้อโต้แย้ง:
ADDLOCAL=DB,ตัวแทน
สถานะ: ปัจจุบัน
กลายเป็น: จริง
makes_method: รูน
วาร์:
ansible_become_user: "{{ ansible_user }}"
ansible_become_password: "{{ ansible_password }}"
เมื่อ: "'primary_appservers' ใน group_names"
บทบาทที่สองใช้ ansible.windows.win_package อีกครั้งด้วยอาร์กิวเมนต์ ADDLOCAL ที่แตกต่างกัน (คุณลักษณะเพิ่มเติม):
- ชื่อ: ติดตั้ง Engineprimary_appserver
ansible.windows.win_package:
เส้นทาง: C:\product.msi
log_path: C:\InstallEngine.log
ข้อโต้แย้ง:
ADDLOCAL=เครื่องยนต์
สถานะ: ปัจจุบัน
กลายเป็น: จริง
makes_method: รูน
วาร์:
ansible_become_user: "{{ ansible_user }}"
ansible_become_password: "{{ ansible_password }}"
เมื่อ: "'primary_appservers' ใน group_names"
บทบาทแรกทำงานได้ดีและรันไฟล์ msi ส่วนที่สองไม่ใช่
ถ้าฉันทำสองงานนั้นด้วย CLI msiexec /i ก็ใช้ได้
เหตุใดจึงไม่ทำงานเมื่อดำเนินการ ansible.windows.win_package