Tôi có một sản phẩm mà tôi có thể cài đặt nó trước, sau đó cập nhật nó - nghĩa là thêm nhiều tính năng hơn vào sản phẩm cơ sở của tôi
Tôi thực hiện bằng cách chạy MSI lần đầu, sau đó vào Add \ Remove Programs và khi chọn sản phẩm, bạn có thể nhấp vào "Thay đổi" và Trình hướng dẫn cài đặt sẽ hiển thị lại, cho phép bạn chọn và cài đặt tính năng bổ sung trong sản phẩm
Tôi đã tạo 2 vai trò ansible và playbook cho nhiệm vụ này
Vai trò đầu tiên sử dụng ansible.windows.win_package để cài đặt sản phẩm cơ sở (xem ví dụ bên dưới)
- tên: Cài đặt Server.msi Primary_appserver
ansible.windows.win_package:
đường dẫn: C:\product.msi
log_path: C:\InstallProduct.log
tranh luận:
ADDLOCAL=DB,Đại lý
trạng thái: hiện tại
trở thành sự thật
trở thành_method: runas
lọ:
ansible_become_user: "{{ ansible_user }}"
ansible_become_password: "{{ ansible_password }}"
khi: "'primary_appservers' trong group_names"
Vai trò thứ hai sử dụng lại ansible.windows.win_package với các đối số ADDLOCAL khác nhau (các tính năng bổ sung):
- tên: Cài đặt Engine chính_appserver
ansible.windows.win_package:
đường dẫn: C:\product.msi
log_path: C:\InstallEngine.log
tranh luận:
ADDLOCAL=Động cơ
trạng thái: hiện tại
trở thành sự thật
trở thành_method: runas
lọ:
ansible_become_user: "{{ ansible_user }}"
ansible_become_password: "{{ ansible_password }}"
khi: "'primary_appservers' trong group_names"
Vai trò đầu tiên hoạt động tốt và thực thi tệp msi, Vai trò thứ hai - không
Nếu tôi thực hiện hai tác vụ đó, với CLI, msiexec /i thì nó hoạt động tốt
Vậy, Tại sao nó không hoạt động khi thực hiện ansible.windows.win_package?