Ops Library Documentation

A collection of reusable Ansible roles for homelab automation and service deployment.

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:

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

License

MIT