Skip to content

Repository files navigation

linuxhq.cloudflare

License Ansible Galaxy Lint Release

An Ansible collection of Cloudflare modules, plugins, and roles.

Requirements

See requirements.yml.

Installation

ansible-galaxy collection install linuxhq.cloudflare

Development

Local Tox environments use the Python version selected by .python-version.

With Tox installed, install the pre-commit hook:

tox run -e pre-commit

Tox manages isolated environments under .tox/; no environment activation is required.

Checks

Run the default checks:

tox

Run grouped checks:

tox run -m format
tox run -m lint
tox run -m unit

Run Ansible sanity tests for a module:

tox run -e ansible-test -- sanity plugins/modules/access_apps.py

Molecule

Each role has a Molecule scenario that also serves as an example playbook. Set MOLECULE_ROLE to select a role:

MOLECULE_ROLE=accounts_info tox run -e molecule -- test -s default

Molecule scenarios may create real Cloudflare resources.

Changelog and build

tox run -e changelog -- generate
tox run -e build

Examples

Example playbooks and inventory are available in examples/.

Tokens

These roles require an API token created from the Cloudflare dashboard.

Permissions

Using every role in the collection requires the following permissions:

Type Permission Value
Account Access: Apps and Policies Write
Account Access: Organizations, Identity Providers, and Groups Write
Account Access: Service Tokens Write
Account Account Filter Lists Edit
Account Account Settings Read
Account Account WAF Write
Account Cloudflare Pages Write
Account Cloudflare Tunnel Write
Account Cloudflare One Connector: WARP Write
Account Zero Trust Write
Zone Cache Purge Purge
Zone DNS Write
Zone Page Rules Write
Zone Zone Write

About

A collection of cloudflare roles

Resources

Stars

14 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages