Ops Library Documentation¶
A collection of reusable Ansible roles for homelab automation and service deployment.
Contents
Quick Start¶
# Build and install the collection locally
ansible-galaxy collection build .
ansible-galaxy collection install local-ops_library-*.tar.gz -p ../ops-control/collections
# Or use from ops-control
cd ../ops-control
just install-local-library
Available Roles¶
The ops-library collection provides reusable Ansible roles organized by category:
Deployment Roles - Deploy services like FastDeploy, Nyxmon, and Traefik
Removal Roles - Safely remove deployed services
Operations Roles - Backup and restore production data
Registration Roles - Register services with FastDeploy
Bootstrap Roles - Install required tools and dependencies
Testing Roles - Development and testing utilities
See the complete role catalog for details on each role.
Key Features¶
No Secrets: Public repository with safe defaults and runtime validation
Idempotent: All roles can be safely run multiple times
Well-Documented: Comprehensive README for every role
Tested: Integration tests for critical functionality
Modular: Use individual roles or combine them
Requirements¶
ansible-core 2.20+ (Ansible 2.9 no longer supported)
Python 3.14+ (3.8-3.13 no longer supported as of v3.0.0)
Collections:
community.general,ansible.posix
Note
The checked-in developer tooling currently targets Python 3.14+ on the controller.
Development¶
# Run the default contributor validation path
just test
# Run the stricter gate when you want lint failures to stop the run
just validate-strict
# Test specific role
just test-role fastdeploy_deploy
# Run focused Molecule coverage
just molecule-test fastdeploy_register_service
# Bootstrap the local dev environment and install hooks
just setup
Documentation¶
Architecture Overview - System design and patterns
Testing - Testing guidelines
Role Catalog - Complete role reference
Changelog - Version history
License¶
MIT