Skip to content

Checkmk/ansible-collection-checkmk.general

Checkmk Ansible Collection

Checkmk already provides the needed APIs to automate and configure your monitoring. With this project we want to augment the experience and provide easy to use modules and roles for Ansible to both simplify your first steps with automating Checkmk and keep your daily operations smooth and efficient.

Here be dragons!

This collection is provided AS IS and we cannot guarantee proper functionality.

Additionally, there is no commercial support whatsoever!

This is an open source endeavour, on which we want to collaborate with the community.

Ansible Sanity Tests

Dependencies

Although the Ansible project notes, that collections should have no or very little dependencies, we want to make sure the collection works for you out-of-the-box. Currently we only depend on very basic collections, which are most likely already installed in your environment. For version constraints, see galaxy.yml.

Getting help

For documentation on the included modules, head over to the Galaxy, or run the following command substituting the $MODULE_NAME:

ansible-doc checkmk.general.$MODULE_NAME

For any form of support queries or requests refer to SUPPORT.md.

Included content

You can find playbooks, demonstrating the content of this collection in the folder playbooks/demo/.

Lookup plugins

Click on the lookup plugin name below, to get detailed documentation about it. For more in-depth documentation, see this README.

Name Description Tests
checkmk.general.bakery Look up the status pf the Checkmk agent bakery. Integration Tests for bakery Lookup Module
checkmk.general.folder Look up folder attributes. Integration Tests for Folder Lookup Module
checkmk.general.folders Look up all folders. Integration Tests for Folders Lookup Module
checkmk.general.host Look up host attributes. Integration Tests for Host Lookup Module
checkmk.general.hosts Look up all hosts. Integration Tests for Hosts Lookup Module
checkmk.general.rule Look up rule attributes. Integration Tests for Rule Lookup Module
checkmk.general.rules Look up all rules. Integration Tests for Rules Lookup Module
checkmk.general.ruleset Look up ruleset attributes. Integration Tests for Ruleset Lookup Module
checkmk.general.rulesets Look up all rulesets. Integration Tests for Rulesets Lookup Module
checkmk.general.version Look up version and edition information. Integration Tests for Version Lookup Module

Modules

Click on the module name below, to get detailed documentation about it.

Name Description Tests
checkmk.general.activation Activate changes. Integration Tests for Activation Module
checkmk.general.bakery Bake and sign agents. Integration Tests for Bakery Module
checkmk.general.contact_group Manage contact groups. Integration Tests for Contact Group Module
checkmk.general.discovery Discover services on hosts. Integration Tests for Discovery Module
checkmk.general.downtime Manage downtimes. Integration Tests for Downtime Module
checkmk.general.folder Manage folders. Integration Tests for Folder Module
checkmk.general.host_group Manage host groups. Integration Tests for Host Group Module
checkmk.general.host Manage hosts. Integration Tests for Host Module
checkmk.general.rule Manage rules. Integration Tests for Rule Module
checkmk.general.service_group Manage service groups. Integration Tests for Service Group Module
checkmk.general.tag_group Manage tag groups. Integration Tests for Tag Group Module
checkmk.general.user Manage users. Integration Tests for User Module

Roles

Click on the role name below, to get documentation about the role.

Name Description Tests
checkmk.general.agent Installs Checkmk agents. Molecule Tests for Agent Role
checkmk.general.server Installs Checkmk servers. Molecule Tests for Server Role

Additional content

We love to see the community build things on top of this collection. Check out COMMUNITY.md for a listing of interesting projects that build upon this collection in some way.

Installing this collection

Please refer to the official Ansible documentation on how to install this collection. The most basic way is this:

ansible-galaxy collection install checkmk.general

Using this collection

You can either call modules by their Fully Qualified Collection Namespace (FQCN), such as checkmk.general.activation, or you can call modules by their short name if you list the checkmk.general collection in the playbook's collections keyword:

---
- hosts: all

  collections:
    - checkmk.general

  tasks:
    - name: "Run activation."
      activation:
        server_url: "http://my_server/"
        site: "my_site"
        automation_user: "my_user"
        automation_secret: "my_secret"
        force_foreign_changes: 'true'
        sites:
          - "my_site"

More information about Checkmk

Getting Involved

See CONTRIBUTING.

Release notes

See CHANGELOG.rst.

Versioning

This collection uses Semantic Versioning for releases. From the official homepage:

Given a version number MAJOR.MINOR.PATCH, increment the:

  MAJOR version when you make incompatible API changes
  MINOR version when you add functionality in a backward compatible manner
  PATCH version when you make backward compatible bug fixes

Roadmap

This is merely a collection of possible additions to the collection. Please do not consider it a concrete planning document!

  • Modules
    • Monitoring
      • Acknowledgement
    • Setup
      • Agents
      • BI
      • Distributed Monitoring
      • Notification Rules
  • Dynamic Inventory
  • OMD Module

More information about Ansible

Licensing

See LICENSE.