Tôi đã nâng cấp thiết lập ansible của mình từ ansible 2.10 lên ansible 2.12 (từ ansible 5) bằng cách sử dụng homebrew trên Mac OS.
Kể từ đó, một vở kịch đã ngừng tạo ra kết quả hoạt động.
- tên: Tập hợp cụm lãnh sự
trở thành sự thật
máy chủ: consul_nodes
vai trò:
- vai trò: lãnh sự
lọ:
consul_version: "1.11.1"
consul_install_upgrade: đúng
consul_group_name: "consul_nodes"
lãnh sự_địa chỉ:
dns: !unsafe '169.254.1.1 127.0.0.1 {{ GetPrivateIP }} {{ GetInterfaceIP \"docker0\" }}'
http: !unsafe '169.254.1.1 {{ GetPrivateIP }} {{ GetInterfaceIP \"docker0\" }}'
https: !unsafe '127.0.0.1 {{ GetPrivateIP }}'
grpc: "127.0.0.1"
consul_client_address: "169.254.1.1"
consul_node_role: máy chủ
consul_bootstrap_expect_value: 3
consul_bootstrap_expect: đúng
Playbook chứa các giá trị biến không an toàn không nên được tạo khuôn mẫu vì giá trị của chúng sẽ được chuyển qua tệp cấu hình JSON được ghi vào đĩa.
Nó hoạt động tốt trước khi nâng cấp lên ansible 2.12
ansible [lõi 2.12.1]
tập tin cấu hình = Không có
đường dẫn tìm kiếm mô-đun được định cấu hình = ['/Users/martin/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
vị trí mô-đun python ansible = /usr/local/Cellar/ansible/5.1.0/libexec/lib/python3.10/site-packages/ansible
vị trí bộ sưu tập ansible = /Users/martin/.ansible/collections:/usr/share/ansible/collections
vị trí thực thi = /usr/local/bin/ansible
phiên bản python = 3.10.1 (chính, ngày 6 tháng 12 năm 2021, 23:20:29) [Clang 13.0.0 (clang-1300.0.29.3)]
phiên bản jinja = 3.0.3
libyaml = Đúng
Bây giờ, toàn bộ JSON mà playbook đang tạo không hợp lệ. Dấu ngoặc kép (") được thoát dưới dạng (").
Tôi nghi ngờ rằng sự cố có liên quan đến các biến không an toàn vì với phiên bản ansible 2.10 đang hoạt động, tôi đã nhận được kết quả xấu tương tự khi không sử dụng !không an toàn
.
Đây có thể chỉ là một sự trùng hợp ngẫu nhiên.