2013-02-23 22 views
6

Nếu tôi phải thực hiện 3 lệnh sau, làm thế nào để nhóm chúng lại vì vậy tôi chỉ phải gọi một lệnh?Lệnh nhóm Saltstack

salt '*' git.fetch cwd=/var/git/myproject opts='--all' user=git 
salt '*' git.pull cwd=/var/git/myproject opts='origin master' 
salt '*' nginx.signal reload 

tôi có thể sử dụng vải để đưa những người trong một chức năng duy nhất nói deploy mà có thể chấp nhận một tên minion sau đó chạy qua bậc thầy, nhưng tôi đang tự hỏi nếu saltstack đã điều gì đó tích hợp?

+0

Bạn đã nghĩ đến việc tạo trạng thái tại đó bạn chỉ cần chạy lệnh nhưng phải đợi trạng thái khác kết thúc và tiếp tục như vậy? – tudoricc

+0

lý do bỏ phiếu xuống? Đây là một câu hỏi cũ, bây giờ một ngày tôi sẽ tạo một tệp trạng thái tùy chỉnh và chuyển làm tham số cho mô-đun 'state.sls'. – Marconi

Trả lời

6

Đây là một ứng cử viên tốt cho mô-đun tùy chỉnh.

Bạn có thể đọc về tạo mô-đun tùy chỉnh tại đây: http://docs.saltstack.com/ref/modules/index.html. Đặt mô-đun tùy chỉnh của bạn trong/srv/muối/_modules (vị trí mặc định) và sau đó chạy

salt \* saltutil.sync_modules 

mô-đun của bạn sau đó sẽ có sẵn để chạy trên tay sai của bạn.

Nếu module của bạn được đặt tên là 'triển khai' và chức năng là 'mysite', sau đó lệnh tùy chỉnh của bạn sẽ trông như thế này:

salt \* deploy.mysite 

Nếu bạn muốn nhắm mục tiêu một khẩu thần công cụ sau đó nó sẽ giống như thế này :

salt 'minion_name' deploy.mysite 
+0

Bạn thực sự có thể thực hiện tất cả những điều này trong một lần chạy: muối '*' git.fetch, git.pull, nginx.signal "cwd =/var/git/myproject opts = '- tất cả' người dùng = git", "cwd =/var/git/myproject opts = 'nguyên bản gốc'", "tải lại" –

Các vấn đề liên quan