damex.cloudflare.cloudflare_tunnel_info module – Ensure Cloudflare tunnel information is gathered

Note

This module is part of the damex.cloudflare collection (version 1.2.3).

It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install damex.cloudflare.

To use it in a playbook, specify: damex.cloudflare.cloudflare_tunnel_info.

Synopsis

Parameters

Parameter

Comments

account_api_key

string

Cloudflare account API key.

Required together with account_email if api_token is not provided.

account_email

string

Cloudflare account email.

Required together with account_api_key if api_token is not provided.

account_id

string

Cloudflare account identifier.

Required if account_name is not provided.

account_name

string

Cloudflare account name.

Required if account_id is not provided.

Resolved to account identifier via the Cloudflare API.

api_token

string

Cloudflare API token.

Required if account_email and account_api_key are not provided.

Can be specified in CLOUDFLARE_TOKEN environment variable.

name

string

Tunnel name to query.

If not specified, all tunnels are returned.

Attributes

Attribute

Support

Description

check_mode

Support: full

Supports check mode.

diff_mode

Support: none

Does not support diff mode.

Examples

- name: Ensure tunnel facts are gathered
  damex.cloudflare.cloudflare_tunnel_info:
    name: hetzner
    account_name: damex
    api_token: "{{ cloudflare_api_token }}"
  register: cloudflare_tunnel_state

- name: Ensure cloudflared service
  ansible.builtin.template:
    src: cloudflared.service.j2
    dest: /etc/systemd/system/cloudflared.service
  vars:
    cloudflared_token: "{{ cloudflare_tunnel_state.tunnel.token }}"

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

tunnels

list / elements=dictionary

Tunnel information.

Returned: always

id

string

Tunnel unique identifier.

Returned: always

ingress

list / elements=string

Current ingress rules.

Returned: when querying a specific tunnel

name

string

Tunnel display name.

Returned: always

status

string

Tunnel connection status.

Returned: always

token

string

Tunnel authentication token for cloudflared.

Returned: when querying a specific tunnel

Authors

  • Roman Kuzmitskii (@damex)