ansible/roles/firefly/README.md
Julien Riou ab92d88956
Some checks failed
/ ansible-docsmith (push) Failing after 17s
Initial commit
Signed-off-by: Julien Riou <julien@riou.xyz>
2026-02-16 15:46:18 +01:00

5.5 KiB

Ansible Role Firefly

Ansible role to manage a Firefly III instance.

Table of content

Role variables

The following variables can be configured for this role:

Variable Type Required Default Description (abstract)
firefly_version str No "latest" Version of the docker image.
firefly_port int No 8080
firefly_static_cron_token str Yes N/A Token used by the cron job (sensitive).
firefly_home path No "/var/lib/firefly" Directory where to store data files.
firefly_site_owner str No "root@localhost" E-mail address of the site owner.
firefly_app_key str Yes N/A Application key (sensitive).
firefly_language str No "en_US" Language of the web interface.
firefly_tz str No "Etc/UTC" Time zone of the web interface.
firefly_db_database str No "firefly" Name of the database.
firefly_db_username str No "firefly" Name of the user to connect to the database.
firefly_db_password str Yes N/A Password to connect to the database (sensitive).
firefly_manage_iptables bool No false Configure iptables rules.
firefly_allowed_sources list No N/A List of IP ranges to allow when firefly_manage_iptables is enabled.

firefly_version

⇑ Back to ToC ⇑

Version of the docker image.

  • Type: str
  • Required: No
  • Default: "latest"

firefly_port

⇑ Back to ToC ⇑

  • Type: int
  • Required: No
  • Default: 8080

firefly_static_cron_token

⇑ Back to ToC ⇑

Token used by the cron job (sensitive).

  • Type: str
  • Required: Yes

firefly_home

⇑ Back to ToC ⇑

Directory where to store data files.

  • Type: path
  • Required: No
  • Default: "/var/lib/firefly"

firefly_site_owner

⇑ Back to ToC ⇑

E-mail address of the site owner.

  • Type: str
  • Required: No
  • Default: "root@localhost"

firefly_app_key

⇑ Back to ToC ⇑

Application key (sensitive).

  • Type: str
  • Required: Yes

firefly_language

⇑ Back to ToC ⇑

Language of the web interface.

  • Type: str
  • Required: No
  • Default: "en_US"

firefly_tz

⇑ Back to ToC ⇑

Time zone of the web interface.

  • Type: str
  • Required: No
  • Default: "Etc/UTC"

firefly_db_database

⇑ Back to ToC ⇑

Name of the database.

  • Type: str
  • Required: No
  • Default: "firefly"

firefly_db_username

⇑ Back to ToC ⇑

Name of the user to connect to the database.

  • Type: str
  • Required: No
  • Default: "firefly"

firefly_db_password

⇑ Back to ToC ⇑

Password to connect to the database (sensitive).

  • Type: str
  • Required: Yes

firefly_manage_iptables

⇑ Back to ToC ⇑

Configure iptables rules.

  • Type: bool
  • Required: No
  • Default: false

firefly_allowed_sources

⇑ Back to ToC ⇑

List of IP ranges to allow when firefly_manage_iptables is enabled.

  • Type: list
  • Required: No

Configuration

See Variable precedence to find where you should put your own variables.

Then define at least firefly_static_cron_token, firefly_db_password and firefly_app_key variables with a strong and secure password, encrypted using ansible-vault.

See list of default variables.

Usage

Example of a basic firefly.yml playbook:

hosts:
  - firefly

roles:
  - firefly

Then run the playbook:

ansible-playbook firefly.yml

Donate

As we all love FOSS projects, you should consider sponsoring and/or contribute.