A collection of Ansible roles to manage the various tasks in my homelab.
Find a file
commit-and-tag 0683ed6e11
All checks were successful
Create Release / Create Release (push) Successful in 12s
chore(release): 4.5.4
2024-12-21 17:54:00 +00:00
.forgejo/workflows fix(ci): try and pull all tags 2024-12-10 21:00:30 -06:00
LICENSES ci: adjust ci to use more license information & sha for tracing 2024-12-10 20:40:44 -06:00
meta ci: adjust ci to use more license information & sha for tracing 2024-12-10 20:40:44 -06:00
roles fix: no need to pull HOST_TZ override, use direct 2024-12-21 11:53:51 -06:00
.gitignore ci: adjust ci to use more license information & sha for tracing 2024-12-10 20:40:44 -06:00
.renovaterc.json5 ci: adjust ci to use more license information & sha for tracing 2024-12-10 20:40:44 -06:00
flake.lock ci: adjust ci to use more license information & sha for tracing 2024-12-10 20:40:44 -06:00
flake.lock.license ci: adjust ci to use more license information & sha for tracing 2024-12-10 20:40:44 -06:00
flake.nix docs: update command to make release notes 2024-12-10 20:51:24 -06:00
galaxy.yml chore(release): 4.5.4 2024-12-21 17:54:00 +00:00
Makefile ci: adjust ci to use more license information & sha for tracing 2024-12-10 20:40:44 -06:00
README.md ci: adjust ci to use more license information & sha for tracing 2024-12-10 20:40:44 -06:00

Ansible Collection auengun.homelab

A collection of Ansible roles to manage the various tasks in my homelab.

Collection Installation

Python/Poetry Dependencies

TODO: Document these better in version control with renovate.

If using Poetry, this is an example pyproject.toml snippet to install the required Python dependencies.

[tool.poetry.dependencies]
python = "^3.10"
ansible = "^9.2"
ansible-core = "^2.16"
jmespath = "^1.0.1"
passlib = "^1.7.4"

Ansible Galaxy - requirements.yml

Add the following snippet to Ansible Galaxy's requirements.yml file.

collections:
  - name: ssh://git@git.auengun.net/homelab/ansible-collection.git
    type: git
    # Note: it's better to pin to a commit than main.
    version: main

Then install using ansible-galaxy.

ansible-galaxy collection install -r requirements.yml

Roles

auengun.homelab.caddy

A systemd service wrapping a custom caddy binary enabling some rate limiting and other features for my common services.

Read the README.md for usage and configuration details.

auengun.homelab.common

A set of shifting common tasks for bootstrapping and setting up the many physical and virtual machines in my homelab.

Read the README.md for usage and configuration details.

auengun.homelab.dcaass

Wraps a docker-compose.yml with a systemd service and easy user overrides of the .yml config.

Read the README.md for usage and configuration details.

auengun.homelab.cron_healthcheck_script

Quickly wrap a basic shell script with a crontab schedule and Healthchecks.io alert.

Read the README.md for usage and configuration details.