DEBOPS.TINYPROXY(5)

NAME
debops.tinyproxy - Install Tinyproxy on a Debian/Ubuntu host using Ansible

SYNOPSIS

debops service/tinyproxy [--limit group,host,...] [--diff] [--check] [--tags tag1,tag2,...] [--skip-tags tag1,tag2,...] [<ansible-playbook options>] ...

DESCRIPTION

The debops.tinyproxy role can be used to install Tinyproxy on a Debian or Ubuntu host. Tinyproxy is a light-weight HTTP/HTTPS proxy daemon for POSIX operating systems.

GETTING STARTED

  Example inventory

To install Tinyproxy on a host, it needs to be added to a specific Ansible inventory group:

[debops_service_tinyproxy]
hostname

  Example playbook

If you are using this role without DebOps, here's an example Ansible playbook that uses the debops.tinyproxy role:

---
- name: Manage Tinyproxy
  collections: [ 'debops.debops', 'debops.roles01',
                 'debops.roles02', 'debops.roles03' ]
  hosts: [ 'debops_service_tinyproxy' ]
  become: True
  environment: '{{ inventory__environment | d({})
                   | combine(inventory__group_environment | d({}))
                   | combine(inventory__host_environment  | d({})) }}'
  roles:
    - role: etc_services
      tags: [ 'role::etc_services', 'skip::etc_services' ]
      etc_services__dependent_list:
        - '{{ tinyproxy__etc_services__dependent_list }}'
    - role: ferm
      tags: [ 'role::ferm', 'skip::ferm' ]
      ferm__dependent_rules:
        - '{{ tinyproxy__ferm__dependent_rules }}'
    - role: tinyproxy
      tags: [ 'role::tinyproxy', 'skip::tinyproxy' ]

  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 a host was first configured to speed up playbook execution, when you are sure that most of the configuration is already in the desired state.

Available role tags:

role::tinyproxy
    Main role tag, should be used in the playbook to execute all of the role tasks as well as role dependencies.

DEFAULT VARIABLE DETAILS

Some of debops.tinyproxy default variables have more extensive configuration than simple strings or lists, here you can find documentation and examples for them.

  tinyproxy__configuration

The tinyproxy__*_configuration variables define the contents of the /etc/tinyproxy/tinyproxy.conf configuration file. Each variable is a list of YAML dictionaries. The list entries with the same name parameter are merged together; this allows to change specific parameters in the Ansible inventory without the need to copy over the entire variable contents.

  Examples

To see the examples of the configuration, you can look at the tinyproxy__default_configuration variable which defines the tinyproxy default configuration set by the role.

  Syntax

Each entry in the list is a YAML dictionary that describes the configuration file in the /etc/tinyproxy/tinyproxy.conf, using specific parameters:

name
    Required. The filename of the generated configuration file, it should include a .conf extension. This parameter is used to merge multiple entries with the same name together.

options
    Optional. A YAML list of tinyproxy configuration options defined in the configuration file. The options parameters from different configuration entries are merged together, therefore it's easy to modify specific parameters without the need to copy the entire value to the inventory.

    Each element of the options list is a YAML dictionary with specific parameters:

name
    Required. This parameter defines the option name, and it needs to be unique in a given configuration file. Parameters from different options lists with the same name are merged together when the configuration entries are merged.

comment
    Optional. A string or YAML text block with a comment added to a given option.

raw Optional. Specify the raw tinyproxy(8) <https://manpages.debian.org/tinyproxy(8)> configuration options as a string or a YAML text block. You can use this parameter to define tinyproxy options that don't have specific values.

state
    Optional. If not specified or present, a given option will be included in the configuration file. If absent, an option will be removed from the configuration file. If comment, an option will be included in the configuration file but commented out.

AUTHOR
Leonardo Bechea, Alin Alexandru

COPYRIGHT
2014-2022, Maciej Delmanowski, Nick Janetakis, Robin Schneider and others