Nếu chúng ta có trong mã sách dạy nấu ăn đầu bếp như:Vagrant - làm thế nào để in đầu ra lệnh của Chef để stdout?
if !File.exists?('/vagrant/project/target/project/WEB-INF") || node[:compile_project]
bash "build project" do
user "vagrant"
cwd "/vagrant/project"
code <<-EOH
mvn clean
mvn db-migration:migrate
mvn package
EOH
end
end
Khi chạy vagrant up
chúng ta có thể xem thông tin chỉ ngắn gọn rằng 'dự án xây dựng' được thực thi.
Tuy nhiên, chúng tôi chạy lệnh 'mvn package' từ thiết bị đầu cuối, chúng ta có thể thấy toàn bộ đầu ra lệnh. Làm thế nào để nói với Vagrant/Chef để hiển thị đầu ra đầy đủ?
EDIT:
Tôi đã thử điều này, nhưng không có gì đã thay đổi trong sản lượng.
config.vm.provision :chef_solo do |chef|
chef.log_level = :debug
Được rồi, tôi nghĩ câu trả lời là không. Nếu kịch bản hoạt động, đầu ra vẫn ẩn. Tuy nhiên, một (vô cùng) hacky cách để làm điều này có thể được thêm thuộc tính 'trả về 2' và' ignore_failure', mà sẽ thất bại mọi thời gian. Bạn nhận được sản lượng đầy đủ về thất bại. Tuy nhiên, tôi sẽ chỉ sử dụng kỹ thuật này để gỡ lỗi. Và gửi yêu cầu tính năng để opscode. – quandrum
Bạn đã thử sử dụng tùy chọn "cờ" cho tài nguyên bash để vượt qua '-x' chưa? – agross