Skip to content

About

Ansible collection: linbit.common - LINBIT portal node registration and community repo setup

Resources

Stars

3 stars

Watchers

1 watching

Forks

Repository files navigation

LINBIT Common Collection

The linbit.common Ansible collection providing shared utilities for the LINBIT® Ansible collections:

Includes LINBIT customer portal registration, public package repository setup for Ubuntu LTS and Proxmox VE, DRBD® Proxy license retrieval, and filter plugins that detect the running kernel.

Requirements

  • ansible-core 2.16 or newer
  • Debian and Ubuntu targets need the python3-debian package for the deb822_repository module that the customer_repo, public_repo, and zfs_install roles use to write APT sources. The roles install it from the distribution archive before the first repository task, so minimal cloud images that omit it work without preparation.

Installation

Install the collection with the Ansible Galaxy command-line tool:

# Install from GitHub until published in Ansible Galaxy
ansible-galaxy collection install git+https://github.com/LINBIT/ansible-common-collection.git

You can also include it in a requirements.yml file and install it with ansible-galaxy collection install -r requirements.yml:

collections:
  - name: linbit.common
    source: https://github.com/LINBIT/ansible-common-collection.git
    type: git

To upgrade to the latest available version:

# Upgrade from GitHub until published in Ansible Galaxy
ansible-galaxy collection install --upgrade git+https://github.com/LINBIT/ansible-common-collection.git

See using Ansible collections for more details.

Roles

Role Description
customer_repo Register nodes with the LINBIT subscription portal (my.linbit.com)
public_repo Configure the LINBIT public APT repository for Ubuntu (PPA) and Proxmox VE
zfs_install Install OpenZFS packages and load the zfs kernel module across distributions

Modules

Module Description
linbit_register_node Register a node with the LINBIT customer portal API. Used internally by customer_repo; can also be invoked directly for advanced workflows.
linbit_proxy_license Fetch the DRBD Proxy license file for a registered node. Reads identity from /var/lib/drbd-support/registration.json and POSTs to my.linbit.com/v1/license-from-nodehash.

Filter plugins

Filter Description
is_pve Returns true when running on a Proxmox VE kernel ('pve' in ansible_kernel). Used to gate Proxmox-specific tasks.
is_uek Returns true when running on an Oracle Linux UEK kernel ('uek' in ansible_kernel). Used to choose between RHCK and UEK kernel-devel packages.
in_network Returns the addresses from a list that are inside the network of an address in CIDR notation, for IPv4 and IPv6.

Licensing

This collection is primarily licensed and distributed as a whole under the MIT License. See LICENSE for the full text.

The following files are licensed under the GNU General Public License v3.0 or later, as required by the Ansible community package inclusion rules:

Authors

Created in 2026 by Ryan Ronnander on behalf of LINBIT.

Inspired by earlier Ansible contributions from Matt Kereczman, Ryan Ronnander, Michael Troutman, and Devin Vance.

About

Ansible collection: linbit.common - LINBIT portal node registration and community repo setup

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages