ansible-playbooks
Use when writing and organizing Ansible playbooks for automated configuration management and infrastructure orchestration.
Installation
Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.
View source ↗GuidesSkill instructions
Ansible Playbooks
Writing and organizing Ansible playbooks for configuration management.
Basic Playbook
---
- name: Configure web servers
hosts: webservers
become: yes
vars:
http_port: 80
app_version: "1.0.0"
tasks:
- name: Install nginx
apt:
name: nginx
state: present
update_cache: yes
- name: Start nginx
service:
name: nginx
state: started
enabled: yes
- name: Deploy application
copy:
src: ./app
dest: /var/www/html
owner: www-data
mode: '0755'
Inventory
[webservers]
web1.example.com
web2.example.com
[databases]
db1.example.com
[production:children]
webservers
databases
Common Modules
Package Management
- name: Install packages
apt:
name:
- nginx
- git
- python3
state: present
File Operations
- name: Copy configuration
template:
src: nginx.conf.j2
dest: /etc/nginx/nginx.conf
backup: yes
notify: Restart nginx
Handlers
handlers:
- name: Restart nginx
service:
name: nginx
state: restarted
Best Practices
Use Roles
roles/
├── webserver/
│ ├── tasks/
│ │ └── main.yml
│ ├── handlers/
│ │ └── main.yml
│ └── templates/
│ └── nginx.conf.j2
Idempotency
- name: Ensure directory exists
file:
path: /opt/app
state: directory
mode: '0755'
Examples
Read the usage examples in the source repository.
View source ↗Source history
- Indexed on
- 2026-01-20
- Index updated
- 2026-02-05
- Branch
- main
Index and sync dates describe this directory. View the source repository for code history.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!