mcgrof.kdevops_install
kdevops_install
===============
kdevops_install is an Ansible role that lets you easily set up everything you need for kdevops in one go. Usually, you would have to manually update a requirements file, a playbook, and a Makefile for each role, which is prone to errors and doesn’t let you easily manage a complete release of kdevops.
By using a single role to deploy kdevops, we can quickly refer to a real kdevops release that includes a set of Ansible roles.
Requirements
The following operating systems are supported:
- OS X
- Linux
Ansible Role Variables
force_kdevops_playbook_dir
: Use this in your project if your playbooks are not located in the standard playbooks directory.
Dependencies
None.
Enabling libvirt as a Regular User
kdevops aims to allow a regular user (the one using kdevops) to run libvirt commands without needing special permissions. This is managed by the libvirt-user Ansible role. We use this role twice: first with only_verify_user
set to False to allow the user to run libvirt commands, and then with only_verify_user
set to True to check if the user needs to log out and log back in, which is necessary if they were added to a group.
The install_kdevops
role takes care of this process for you. It first enables libvirt for regular users in the kdevops_vagrant_deps
by running the libvirt-user role. Then, at the kdevops_verify_vagrant_user
stage, it checks if the user needs to log out and in again.
Example Playbook
Here’s an example playbook used in the kdevops project, specifically in the kdevops/playbooks/kdevops_vagrant.yml file:
---
- hosts: localhost
roles:
- role: kdevops_install
In this example, we use localhost
because we are setting up the Vagrantfile locally in the kdevops/vagrant/ directory. You can use a different host if needed.
Extra Ansible Arguments
All kdevops Ansible roles look for additional argument files to set the Ansible --extra-vars=@file
option, which will override all variables. These files are specific to kdevops but use common names. Ansible doesn’t automatically find these files, so we have added tasks to every kdevops role to look for them. The search order for these files is:
../extra_vars.yml
../extra_vars.yaml
../extra_vars.json
kconfig Support
There are many targets that let you use a build system with a variability modeling language like kconfig to configure what you want to enable. This is demonstrated in the upstream kdevops project.
Further Information
For more examples, check out users of this role, such as the kdevops project or the oscheck project, from which this code came.
License
GPLv2
Install kdevops makefile, requirements file and playbooks
ansible-galaxy install mcgrof.kdevops_install