Có, bạn có thể chạy các lệnh trên máy chủ Ansible. Bạn có thể chỉ định rằng tất cả các tác vụ trong một lần phát chạy trên máy chủ Ansible hoặc bạn có thể đánh dấu các tác vụ riêng lẻ để chạy trên máy chủ Ansible.
Nếu bạn muốn chạy toàn bộ một lần phát trên máy chủ Ansible, thì hãy chỉ định hosts: 127.0.0.1
và connection:local
trong trò chơi, ví dụ:
- name: a play that runs entirely on the ansible host
hosts: 127.0.0.1
connection: local
tasks:
- name: check out a git repository
git: repo=git://foosball.example.org/path/to/repo.git dest=/local/path
Xem Playbook địa phương trong tài liệu Ansible để biết thêm chi tiết.
Nếu bạn chỉ muốn chạy một tác vụ trên máy chủ Ansible của mình, bạn có thể sử dụng local_action
để chỉ định rằng một tác vụ sẽ được chạy cục bộ. Ví dụ:
- name: an example playbook
hosts: webservers
tasks:
- ...
- name: check out a git repository
local_action: git repo=git://foosball.example.org/path/to/repo.git dest=/local/path
Xem Phái đoàn trong tài liệu Ansible để biết thêm chi tiết.
Chỉnh sửa: Bạn có thể tránh phải nhập connection: local
vào vở kịch của mình bằng cách thêm phần này vào kho của bạn:
localhost ansible_connection=local
(Ở đây bạn sử dụng "localhost" thay vì "127.0.0.1" để tham khảo vở kịch).
Chỉnh sửa: Trong các phiên bản mới hơn của ansible, bạn không còn cần phải thêm dòng trên vào kho của mình, có thể giả định rằng nó đã có ở đó.
sudo: no
trong kịch bản phái đoàn