Getting started

Example inventory

To configure dhclient on a given host it should be included in the ypid_service_dhclient Ansible inventory group:

[ypid_service_dhclient]
hostname

Example playbook

Here's an example playbook that uses the ypid.dhclient role:

---

- name: Configure dhclient
  hosts: [ 'ypid_service_dhclient' ]
  become: True

  environment: '{{ inventory__environment | d({})
                   | combine(inventory__group_environment | d({}))
                   | combine(inventory__host_environment  | d({})) }}'

  roles:

    - role: ypid.dhclient
      tags: [ 'role::dhclient' ]

This playbook is shipped with this role under docs/playbooks/opsi.yml from which you can symlink it to your playbook directory. In case you use multiple roles maintained by ypid, consider using ypid-ansible-common.

Ansible tags

You can use Ansible --tags or --skip-tags parameters to limit what tasks are performed during Ansible run. This can be used after host is first configured to speed up playbook execution, when you are sure that most of the configuration has not been changed.

Available role tags:

role::dhclient
Main role tag, should be used in the playbook to execute all of the role tasks as well as role dependencies.
role::dhclient:pkgs
Tasks related to system package management like installing or removing packages.