kain88-de / ansible-collection-tribe29.checkmk

The official Checkmk Ansible collection - brought to you by tribe29 - the Checkmk company.

Home Page:https://galaxy.ansible.com/tribe29/checkmk

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

tribe29 Checkmk Collection

Checkmk already provides the needed APIs to automate and configure your monitoring. With this project we want to create and share 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 repository is provided as is and we cannot guarantee stability at this point. Additionally, there is no commercial support whatsoever! This is an open source endeavour, which we want to share and progress with the community.

Ansible Sanity Tests Ansible Integration Tests for all Modules


This repository is a successor to ansible-checkmk in a way, that we take the idea of the initial repository and translate it into todays format. We will try to keep you posted as best as we can. Also, keep an eye on this Checkmk forum post for updates.

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, run the following command substituting the $MODULE_NAME:

ansible-doc tribe29.checkmk.$MODULE_NAME

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

Repository Structure

For information about the structure and organization of this repository have a look at STRUCTURE.md.

Included content

Modules

Name Description Tests
tribe29.checkmk.activation Activate changes. Integration Tests for Activation Module
tribe29.checkmk.contact_group Manage contact groups. Integration Tests for Contact Group Module
tribe29.checkmk.discovery Discover services on hosts. Integration Tests for Discovery Module
tribe29.checkmk.downtime Schedule downtimes on hosts and services. Integration Tests for Downtime Module
tribe29.checkmk.folder Manage folders. Integration Tests for Folder Module
tribe29.checkmk.host_group Manage host groups. Integration Tests for Host Group Module
tribe29.checkmk.host Manage hosts. Integration Tests for Host Module
tribe29.checkmk.rule Manage rules. Integration Tests for Rule Module
tribe29.checkmk.service_group Manage service groups. Integration Tests for Service Group Module
tribe29.checkmk.tag_group Manage tag groups. Integration Tests for Tag Group Module

Roles

Name Description Tests
tribe29.checkmk.agent Installs Checkmk agents. Tests currently unavailable.
tribe29.checkmk.server Installs Checkmk servers. Molecule Tests for Server Role

Installing this collection

Locally

You can install the Checkmk collection locally, if you acquired a tarball from the releases page as follows:

ansible-galaxy collection install /path/to/tribe29-checkmk-X.Y.Z.tar.gz

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

---
collections:
  - source: /path/to/tribe29-checkmk-X.Y.Z.tar.gz
    type: file

From the Galaxy

You can install the Checkmk collection with the Ansible Galaxy CLI:

ansible-galaxy collection install tribe29.checkmk

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

---
collections:
  - name: tribe29.checkmk
    version: X.Y.Z

Using this collection

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

---
- hosts: all

  collections:
    - tribe29.checkmk

  tasks:
    - name: "Run activation."
      activation:
        server_url: "http://localhost/"
        site: "my_site"
        automation_user: "automation"
        automation_secret: "$SECRET"
        force_foreign_changes: 'true'
        sites:
          - "my_site"

More information about Checkmk

Contributing to this collection

See CONTRIBUTING.

Release notes

See CHANGELOG.rst.

Roadmap

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

  • Modules
    • Monitoring
      • Acknowledgement
    • Setup
      • Agents
      • BI
      • Passwords
      • Time Periods
  • Lookup Plugins
    • Version

More information about Ansible

Licensing

See LICENSE.

About

The official Checkmk Ansible collection - brought to you by tribe29 - the Checkmk company.

https://galaxy.ansible.com/tribe29/checkmk

License:GNU General Public License v3.0


Languages

Language:YAML 64.1%Language:Python 35.9%