A curated collection of Ansible playbooks for deploying common services to Linux servers.
Search and install playbooks at: https://nodepulse.sh
Or install directly from your Admiral dashboard: Playbooks → Community
| Playbook | Description | Status |
|---|---|---|
| fail2ban | Protect SSH and services from brute-force attacks | ✅ Ready |
- Open your Admiral dashboard
- Go to Playbooks → Community
- Search for a playbook (e.g., "fail2ban")
- Click Install
- Configure variables (if any)
- Execute on your servers
# Clone this repository
git clone https://github.com/node-pulse/playbooks.git
cd playbooks
# Navigate to a playbook
cd catalog/f/fail2ban
# Run with ansible-playbook
ansible-playbook playbook.yml -i your-inventory.iniWe welcome community contributions! See CONTRIBUTING.md for detailed instructions.
- Fork this repository
- Create your playbook directory:
catalog/{first-letter}/{playbook-name}/ - Add required files:
manifest.json(required)playbook.yml(required)templates/(optional)files/(optional)README.md(recommended)
- Test your playbook locally
- Submit a pull request
- ✅ Complete
manifest.jsonwith all required fields - ✅ Unique playbook ID in format
pb_[A-Za-z0-9]{10}(generate once, never change) - ✅ Self-contained (no external dependencies, copy code locally)
- ✅ Idempotent (safe to run multiple times)
- ✅ Well-documented variables
- ✅ Passes
ansible-lint(warnings acceptable) - ✅ MIT licensed
playbooks/
├── README.md # This file
├── CONTRIBUTING.md # Contribution guide
├── LICENSE # MIT License
│
├── .github/workflows/
│ └── syntax-check.yml # CI validation workflow
│
├── schemas/ # JSON schemas
│ └── node-pulse-admiral-playbook-manifest-v1.schema.json
│
├── scripts/ # Validation scripts
│ ├── find-changed-playbooks.sh
│ ├── validate-ansible-lint.sh
│ ├── validate-category.sh
│ ├── validate-entry-point.sh
│ ├── validate-json-schema.sh
│ ├── validate-json-syntax.sh
│ ├── validate-manifest-fields.sh
│ ├── validate-no-external-deps.sh
│ ├── validate-os-support.sh
│ └── validate-yaml-syntax.sh
│
└── catalog/ # Playbook catalog
├── f/ # Playbooks starting with 'f'
│ └── fail2ban/
│ ├── manifest.json
│ ├── playbook.yml
│ ├── templates/
│ │ ├── jail.local.j2
│ │ └── sshd.local.j2
│ └── README.md
│
├── m/ # Playbooks starting with 'm'
│ └── meilisearch/
│ └── manifest.json
│
└── ... (a-z directories)
- Easy navigation on GitHub
- Simple directory listing via GitHub API
- Avoids massive index files
- Scales to thousands of playbooks
MIT - See LICENSE for details
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Documentation: Node Pulse Docs