{% raw %}
---
- hosts: production
remote_user: root
tasks:
- ···
Place your modules inside tasks
.
- apt: pkg=vim state=present
- apt:
pkg: vim
state: present
- apt: >
pkg=vim
state=present
Define your tasks in any of these formats. One-line format is preferred for short declarations, while maps are preferred for longer.
- apt:
pkg: nodejs
state: present # absent | latest
update_cache: yes
force: no
- apt:
deb: "https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb"
- apt_repository:
repo: "deb https://··· raring main"
state: present
- apt_key:
id: AC40B2F7
url: "http://···"
state: present
- git:
repo: git://github.com/
dest: /srv/checkout
version: master
depth: 10
bare: yes
See: git module
- git_config:
name: user.email
scope: global # local | system
value: hi@example.com
See: git_config module
- user:
state: present
name: git
system: yes
shell: /bin/sh
groups: admin
comment: "Git Version Control"
See: user module
- service:
name: nginx
state: started
enabled: yes # optional
See: service module
- shell: apt-get install nginx -y
- shell: echo hello
args:
creates: /path/file # skip if this exists
removes: /path/file # skip if this is missing
chdir: /path # cd here before running
- shell: |
echo "hello there"
echo "multiple lines"
See: shell module
- script: /x/y/script.sh
args:
creates: /path/file # skip if this exists
removes: /path/file # skip if this is missing
chdir: /path # cd here before running
See: script module
- file:
path: /etc/dir
state: directory # file | link | hard | touch | absent
# Optional:
owner: bin
group: wheel
mode: 0644
recurse: yes # mkdir -p
force: yes # ln -nfs
See: file module
- copy:
src: /app/config/nginx.conf
dest: /etc/nginx/nginx.conf
# Optional:
owner: user
group: user
mode: 0644
backup: yes
See: copy module
- template:
src: config/redis.j2
dest: /etc/redis.conf
# Optional:
owner: user
group: user
mode: 0644
backup: yes
See: template module
- name: do something locally
local_action: shell echo hello
- debug:
msg: "Hello {{ var }}"
See: debug module
{% endraw %}
Subscribe to get resources directly to your inbox. You won't receive any spam! ✌️