System Roles

ensure-package-repositories

Ensure that package manager repositories are installed. This role works with the pattern of including variables for different operating systems.

Note

This role currently only supports RPM and DEB based distributions.

Example use for Debian and Ubuntu:

- name: Add all repositories
  include_role:
    name: ensure-package-repositories
  vars:
    repositories_keys:
      - url: https://deb.nodesource.com/gpgkey/nodesource.gpg.key
    repositories_list:
      - repo: deb-src https://deb.nodesource.com/node_6.x {{ ansible_distribution_release }} main
      - repo: deb https://deb.nodesource.com/node_6.x {{ ansible_distribution_release }} main

Example use for Fedora and Red Hat:

_docker_keys:
  - data: |
      -----BEGIN PGP PUBLIC KEY BLOCK-----
      ...
      -----END PGP PUBLIC KEY BLOCK-----

_docker_repos:
  - name: docker-ce-stable
    description: Docker CE Stable - $basearch
    baseurl: "{{ docker_mirror_base_url }}/$releasever/$basearch/stable"
    gpgcheck: yes

- name: Add all repositories
      include_role:
        name: ensure-package-repositories
      vars:
        repositories_keys: "{{ _docker_keys }}"
        repositories_list: "{{ _docker_repos }}"

Example use for openSUSE and SUSE Linux:

_docker_keys:
  - data: |
      -----BEGIN PGP PUBLIC KEY BLOCK-----
      ...
      -----END PGP PUBLIC KEY BLOCK-----

_docker_repos:
  - name: docker-ce-stable
    description: Docker CE Stable - $basearch
    uri: "{{ docker_mirror_base_url }}/$releasever/$basearch/stable.repo"

- name: Add all repositories
      include_role:
        name: ensure-package-repositories
      vars:
        repositories_keys: "{{ _docker_keys }}"
        repositories_list: "{{ _docker_repos }}"

Role Variables

repositories_keys
Default: []

List of dictionaries containing keys to install for the package manager, every dictionary may contain either the key url which will be downloaded and installed, or data which contains the key to be installed.

repository_list
Default: []

List of dictionaries containing repository configuration, the format of each dictionary is mapped to the same as the module parameters of the package manager for Ansible (such as yum_repository, etc.)

ensure-phoronix-test-suite

Install phoronix-test-suite

This role requires a phoronix-test-suite package, provided by these distros:

  • Fedora

ensure-zookeeper

Ensure zookeeper is running

Install and start zookeeper using the upsteam release.

Role Variables

zookeeper_version
Default: latest

The zookeeper version.

zookeeper_use_tls
Default: false

Setup zookeeper tls certificates.

zookeeper_use_tmpfs
Default: true

Setup a tmpfs for data directory.

phoronix-test-suite

Runs phoronix-test-suite

Role Variables

phoronix_test_suites
Default: ["pts/sysbench"]

The list of tests to run.

phoronix-combine-results

Combine phoronix-test-suite results

fetch-phoronix-results

Collect output from a phoronix-test-suite run

The role copies the output from a phoronix-test-suite run on the worker to the log root of the executor using a directory named after the ansible_hostname.