Compare commits
12 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 648254aaa1 | |||
| 91a4f59ebc | |||
| e74a4b6e87 | |||
| b7adfa98e5 | |||
| 40b3a7b4c9 | |||
| 9d2a44a7bc | |||
| 6f731d3d9b | |||
| 5358e6f40a | |||
| 31d240818c | |||
| bb9c401379 | |||
| 2caffffc54 | |||
| 176d6f59aa |
46
CHANGELOG.md
46
CHANGELOG.md
@@ -2,6 +2,52 @@
|
||||
|
||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
||||
|
||||
### [2.0.3](https://git.laurivan.com/Dev/ansible-role-firefly/compare/v2.0.2...v2.0.3) (2024-01-29)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* Update images if needed. ([91a4f59](https://git.laurivan.com/Dev/ansible-role-firefly/commit/91a4f59ebc36aa675c093a227075457ed063ee29))
|
||||
|
||||
### [2.0.2](https://git.laurivan.com/Dev/ansible-role-firefly/compare/v2.0.1...v2.0.2) (2024-01-29)
|
||||
|
||||
### [2.0.1](https://git.laurivan.com/Dev/ansible-role-firefly/compare/v2.0.0...v2.0.1) (2023-05-15)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* Remove temp credential. ([40b3a7b](https://git.laurivan.com/Dev/ansible-role-firefly/commit/40b3a7b4c9089bbffbd0c9acf4b54826002169ce))
|
||||
|
||||
## [2.0.0](https://git.laurivan.com/Dev/ansible-role-firefly/compare/v1.1.2...v2.0.0) (2023-05-15)
|
||||
|
||||
|
||||
### ⚠ BREAKING CHANGES
|
||||
|
||||
* Add importer.
|
||||
|
||||
### Features
|
||||
|
||||
* Add importer. ([6f731d3](https://git.laurivan.com/Dev/ansible-role-firefly/commit/6f731d3d9bb6d3940cfaca571e810f2ddfde7c30))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* Use app key for firefly. ([5358e6f](https://git.laurivan.com/Dev/ansible-role-firefly/commit/5358e6f40aa760cda4ab43b7ad375db80f6bdb36))
|
||||
|
||||
### [1.1.2](https://git.laurivan.com/Dev/ansible-role-firefly/compare/v1.1.1...v1.1.2) (2023-05-12)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* Restart cronjob on reboot. ([bb9c401](https://git.laurivan.com/Dev/ansible-role-firefly/commit/bb9c401379b685bc816fc124652cdd9d2e92a05a))
|
||||
|
||||
### [1.1.1](https://git.laurivan.com/Dev/ansible-role-firefly/compare/v1.1.0...v1.1.1) (2023-04-30)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* Fix reverse proxy ([176d6f5](https://git.laurivan.com/Dev/ansible-role-firefly/commit/176d6f59aaec15da8f507bea01ba8dd446ff5c11))
|
||||
|
||||
## 1.1.0 (2023-04-30)
|
||||
|
||||
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
---
|
||||
|
||||
## General
|
||||
firefly_image: firefly:latest
|
||||
firefly_image: "fireflyiii/core:latest"
|
||||
firefly_import_image: "fireflyiii/data-importer:latest"
|
||||
|
||||
firefly_http_port_app: 30000
|
||||
firefly_http_port_import: 30001
|
||||
|
||||
firefly_timezone: "Europe/Brussels"
|
||||
|
||||
@@ -19,6 +21,7 @@ firefly_owner_email: "user@domain.com"
|
||||
firefly_db_password: "changeme"
|
||||
|
||||
firefly_app_name: "Firefly III"
|
||||
firefly_app_url: "http://10.0.0.35:30000"
|
||||
# Cronjob token, must be 32 chars long
|
||||
firefly_static_cron_token: "12345678901234567890123456789012"
|
||||
|
||||
@@ -36,6 +39,7 @@ firefly_configuration_files:
|
||||
- "docker-compose.yml"
|
||||
- "env.firefly.conf"
|
||||
- "env.db.conf"
|
||||
- "env.firefly-import.conf"
|
||||
|
||||
# Documentation
|
||||
firefly_documentation_link: "https://www.laurivan.com"
|
||||
|
||||
@@ -3,5 +3,6 @@
|
||||
community.docker.docker_compose:
|
||||
project_src: "{{ firefly_config_path | expanduser | realpath }}"
|
||||
build: false
|
||||
pull: true
|
||||
tags:
|
||||
- firefly_install
|
||||
|
||||
@@ -3,35 +3,54 @@ version: '3.9'
|
||||
services:
|
||||
app:
|
||||
image: fireflyiii/core:latest
|
||||
restart: always
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- firefly_iii_upload:/var/www/html/storage/upload
|
||||
env_file: env.firefly.conf
|
||||
env_file: "{{ firefly_config_path | expanduser }}/env.firefly.conf"
|
||||
networks:
|
||||
- firefly_iii
|
||||
firefly_iii:
|
||||
ipv4_address: 177.0.0.10
|
||||
ports:
|
||||
- "{{ firefly_http_port_app }}:8080"
|
||||
depends_on:
|
||||
- db
|
||||
|
||||
db:
|
||||
image: mariadb
|
||||
hostname: fireflyiiidb
|
||||
restart: always
|
||||
env_file: env.db.conf
|
||||
restart: unless-stopped
|
||||
env_file: "{{ firefly_config_path | expanduser }}/env.db.conf"
|
||||
networks:
|
||||
- firefly_iii
|
||||
firefly_iii:
|
||||
# ipv4_address: 177.0.0.4
|
||||
volumes:
|
||||
- firefly_iii_db:/var/lib/mysql
|
||||
|
||||
importer:
|
||||
image: "{{ firefly_import_image }}"
|
||||
hostname: importer
|
||||
restart: unless-stopped
|
||||
env_file:
|
||||
- "{{ firefly_config_path | expanduser }}/env.firefly-import.conf"
|
||||
ports:
|
||||
- "{{ firefly_http_port_import }}:8080"
|
||||
networks:
|
||||
firefly_iii:
|
||||
# ipv4_address: 177.0.0.5
|
||||
depends_on:
|
||||
- app
|
||||
|
||||
cron:
|
||||
#
|
||||
# To make this work, set STATIC_CRON_TOKEN in your .env file or as an environment variable and replace REPLACEME below
|
||||
# The STATIC_CRON_TOKEN must be *exactly* 32 characters long
|
||||
#
|
||||
image: alpine
|
||||
restart: unless-stopped
|
||||
command: sh -c "echo \"0 3 * * * wget -qO- http://app:8080/api/v1/cron/{{ firefly_static_cron_token }}\" | crontab - && crond -f -L /dev/stdout"
|
||||
networks:
|
||||
- firefly_iii
|
||||
firefly_iii:
|
||||
# ipv4_address: 177.0.0.6
|
||||
|
||||
volumes:
|
||||
firefly_iii_upload:
|
||||
@@ -39,4 +58,8 @@ volumes:
|
||||
|
||||
networks:
|
||||
firefly_iii:
|
||||
driver: bridge
|
||||
ipam:
|
||||
driver: default
|
||||
config:
|
||||
- subnet: "177.0.0.0/24"
|
||||
# gateway: "177.0.0.1"
|
||||
|
||||
240
templates/env.firefly-import.conf.j2
Normal file
240
templates/env.firefly-import.conf.j2
Normal file
@@ -0,0 +1,240 @@
|
||||
# Firefly Data Importer (FIDI) configuration file
|
||||
|
||||
# Where is Firefly III?
|
||||
#
|
||||
# 1) Make sure you ADD http:// or https://
|
||||
# 2) Make sure you REMOVE any trailing slash from the end of the URL.
|
||||
# 3) In case of Docker, refer to the internal IP of your Firefly III installation.
|
||||
#
|
||||
# Setting this value is not mandatory. But it is very useful.
|
||||
#
|
||||
# This variable can be set from a file if you append it with _FILE
|
||||
#
|
||||
FIREFLY_III_URL=http://app:8080
|
||||
|
||||
#
|
||||
# Imagine Firefly III can be reached at "http://172.16.0.2:8082" (internal Docker network or something).
|
||||
# But you have a fancy URL: "https://personal-finances.bill.microsoft.com/"
|
||||
#
|
||||
# In those cases, you can overrule the URL so when the data importer links back to Firefly III, it uses the correct URL.
|
||||
#
|
||||
# 1) Make sure you ADD http:// or https://
|
||||
# 2) Make sure you REMOVE any trailing slash from the end of the URL.
|
||||
#
|
||||
# IF YOU SET THIS VALUE, YOU MUST ALSO SET THE FIREFLY_III_URL
|
||||
#
|
||||
# This variable can be set from a file if you append it with _FILE
|
||||
#
|
||||
VANITY_URL={{ firefly_app_url }}
|
||||
|
||||
#
|
||||
# Set your Firefly III Personal Access Token (OAuth)
|
||||
# You can create a Personal Access Token on the /profile page:
|
||||
# go to the OAuth tab, then Personal Access Token and "Create token".
|
||||
#
|
||||
# - Do not use the "command line token". That's the WRONG one.
|
||||
# - Do not use "APP_KEY" value from your Firefly III installation. That's the WRONG one.
|
||||
#
|
||||
# Setting this value is not mandatory. Instructions will follow if you omit this field.
|
||||
#
|
||||
# This variable can be set from a file if you append it with _FILE
|
||||
#
|
||||
FIREFLY_III_ACCESS_TOKEN=
|
||||
|
||||
#
|
||||
# You can also use a public client ID. This is available in Firefly III 5.4.0-alpha.3 and higher.
|
||||
# This is a number (1, 2, 3). If you use the client ID, you can leave the access token empty and vice versa.
|
||||
#
|
||||
# This value is not mandatory to set. Instructions will follow if you omit this field.
|
||||
#
|
||||
# This variable can be set from a file if you append it with _FILE
|
||||
#
|
||||
FIREFLY_III_CLIENT_ID=
|
||||
|
||||
#
|
||||
# Nordigen information.
|
||||
# The key and ID can be set from a file if you append it with _FILE
|
||||
#
|
||||
NORDIGEN_ID=
|
||||
NORDIGEN_KEY=
|
||||
NORDIGEN_SANDBOX=false
|
||||
|
||||
#
|
||||
# Spectre information
|
||||
#
|
||||
# The ID and secret can be set from a file if you append it with _FILE
|
||||
SPECTRE_APP_ID=
|
||||
SPECTRE_SECRET=
|
||||
|
||||
#
|
||||
# Use cache. No need to do this.
|
||||
#
|
||||
USE_CACHE=false
|
||||
|
||||
#
|
||||
# If set to true, the data import will not complain about running into duplicates.
|
||||
# This will give you cleaner import mails if you run regular imports.
|
||||
#
|
||||
# This means that the data importer will not import duplicates, but it will not complain about them either.
|
||||
#
|
||||
# This setting has no influence on the settings in your configuration(.json).
|
||||
#
|
||||
# Of course, if something goes wrong *because* the transaction is a duplicate you will
|
||||
# NEVER know unless you start digging in your log files. So be careful with this.
|
||||
#
|
||||
IGNORE_DUPLICATE_ERRORS=false
|
||||
|
||||
#
|
||||
# Auto import settings. Due to security constraints, you MUST enable each feature individually.
|
||||
# You must also set a secret. The secret is used for the web routes.
|
||||
#
|
||||
# The auto-import secret must be a string of at least 16 characters.
|
||||
# Visit this page for inspiration: https://www.random.org/passwords/?num=1&len=16&format=html&rnd=new
|
||||
#
|
||||
# Submit it using ?secret=X
|
||||
#
|
||||
# This variable can be set from a file if you append it with _FILE
|
||||
#
|
||||
AUTO_IMPORT_SECRET=
|
||||
|
||||
#
|
||||
# Is the /autoimport even endpoint enabled?
|
||||
# By default it's disabled, and the secret alone will not enable it.
|
||||
#
|
||||
CAN_POST_AUTOIMPORT=false
|
||||
|
||||
#
|
||||
# Is the /autoupload endpoint enabled?
|
||||
# By default it's disabled, and the secret alone will not enable it.
|
||||
#
|
||||
CAN_POST_FILES=false
|
||||
|
||||
#
|
||||
# Import directory white list. You need to set this before the auto importer will accept a directory to import from.
|
||||
#
|
||||
# This variable can be set from a file if you append it with _FILE
|
||||
#
|
||||
IMPORT_DIR_ALLOWLIST=
|
||||
|
||||
#
|
||||
# When you're running Firefly III under a (self-signed) certificate,
|
||||
# the data importer may have trouble verifying the TLS connection.
|
||||
#
|
||||
# You have a few options to make sure the data importer can connect
|
||||
# to Firefly III:
|
||||
# - 'true': will verify all certificates. The most secure option and the default.
|
||||
# - 'file.pem': refer to a file (you must provide it) to your custom root or intermediate certificates.
|
||||
# - 'false': will verify NO certificates. Not very secure.
|
||||
VERIFY_TLS_SECURITY=true
|
||||
|
||||
#
|
||||
# If you want, you can set a directory here where the data importer will look for import configurations.
|
||||
# This is a separate setting from the /import directory that the auto-import uses.
|
||||
# Setting this variable isn't necessary. The default value is "storage/configurations".
|
||||
#
|
||||
# This variable can be set from a file if you append it with _FILE
|
||||
#
|
||||
JSON_CONFIGURATION_DIR=
|
||||
|
||||
#
|
||||
# Time out when connecting with Firefly III.
|
||||
# π*10 seconds is usually fine.
|
||||
#
|
||||
CONNECTION_TIMEOUT=31.41
|
||||
|
||||
# The following variables can be useful when debugging the application
|
||||
APP_ENV=local
|
||||
APP_DEBUG=true
|
||||
LOG_CHANNEL=stack
|
||||
|
||||
# Log level. You can set this from least severe to most severe:
|
||||
# debug, info, notice, warning, error, critical, alert, emergency
|
||||
# If you set it to debug your logs will grow large, and fast. If you set it to emergency probably
|
||||
# nothing will get logged, ever.
|
||||
LOG_LEVEL=debug
|
||||
|
||||
# TRUSTED_PROXIES is a useful variable when using Docker and/or a reverse proxy.
|
||||
# Set it to ** and reverse proxies work just fine.
|
||||
TRUSTED_PROXIES=**
|
||||
|
||||
#
|
||||
# Time zone
|
||||
#
|
||||
TZ=Europe/Amsterdam
|
||||
|
||||
#
|
||||
# Use ASSET_URL when you're running the data importer in a sub-directory.
|
||||
#
|
||||
ASSET_URL=
|
||||
|
||||
#
|
||||
# Email settings.
|
||||
# The data importer can send you a message with all errors, warnings and messages
|
||||
# after a successful import. This is disabled by default
|
||||
#
|
||||
ENABLE_MAIL_REPORT=false
|
||||
|
||||
#
|
||||
# Force Firefly III URL to be secure?
|
||||
#
|
||||
#
|
||||
EXPECT_SECURE_URL=false
|
||||
|
||||
# If enabled, define which mailer you want to use.
|
||||
# Options include: smtp, mailgun, postmark, sendmail, log, array
|
||||
# Amazon SES is not supported.
|
||||
# log = drop mails in the logs instead of sending them
|
||||
# array = debug mailer that does nothing.
|
||||
MAIL_MAILER=
|
||||
|
||||
# where to send the report?
|
||||
MAIL_DESTINATION=noreply@example.com
|
||||
|
||||
# other mail settings
|
||||
# These variables can be set from a file if you append it with _FILE
|
||||
MAIL_FROM_ADDRESS=noreply@example.com
|
||||
MAIL_HOST=smtp.mailtrap.io
|
||||
MAIL_PORT=2525
|
||||
MAIL_USERNAME=username
|
||||
MAIL_PASSWORD=password
|
||||
MAIL_ENCRYPTION=null
|
||||
|
||||
# Extra settings depending on your mail configuration above.
|
||||
# These variables can be set from a file if you append it with _FILE
|
||||
MAILGUN_DOMAIN=
|
||||
MAILGUN_SECRET=
|
||||
MAILGUN_ENDPOINT=
|
||||
POSTMARK_TOKEN=
|
||||
|
||||
#
|
||||
# You probably won't need to change these settings.
|
||||
#
|
||||
BROADCAST_DRIVER=log
|
||||
CACHE_DRIVER=file
|
||||
QUEUE_CONNECTION=sync
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
IS_EXTERNAL=false
|
||||
|
||||
REDIS_HOST=127.0.0.1
|
||||
REDIS_PASSWORD=null
|
||||
REDIS_PORT=6379
|
||||
|
||||
# always use quotes
|
||||
REDIS_DB="0"
|
||||
REDIS_CACHE_DB="1"
|
||||
|
||||
# The only tracker supported is Matomo.
|
||||
# This is used on the public instance over at https://data-importer.firefly-iii.org
|
||||
TRACKER_SITE_ID=
|
||||
TRACKER_URL=
|
||||
|
||||
APP_NAME=DataImporter
|
||||
|
||||
#
|
||||
# The APP_URL environment variable is NOT used anywhere.
|
||||
# Don't bother setting it to fix your reverse proxy problems. It won't help.
|
||||
# Don't open issues telling me it doesn't help because it's not supposed to.
|
||||
# Laravel uses this to generate links on the command line, which is a feature the data importer does not use.
|
||||
#
|
||||
APP_URL=http://localhost
|
||||
@@ -16,7 +16,7 @@ SITE_OWNER={{ firefly_owner_email }}
|
||||
#
|
||||
# Avoid the "#" character in your APP_KEY, it may break things.
|
||||
#
|
||||
APP_KEY=SomeRandomStringOf32CharsExactly
|
||||
APP_KEY={{ firefly_app_key }}
|
||||
|
||||
# Firefly III will launch using this language (for new users and unauthenticated visitors)
|
||||
# For a list of available languages: https://github.com/firefly-iii/firefly-iii/tree/main/resources/lang
|
||||
@@ -35,7 +35,7 @@ TZ=Europe/Amsterdam
|
||||
|
||||
# TRUSTED_PROXIES is a useful variable when using Docker and/or a reverse proxy.
|
||||
# Set it to ** and reverse proxies work just fine.
|
||||
TRUSTED_PROXIES=
|
||||
TRUSTED_PROXIES=**
|
||||
|
||||
# The log channel defines where your log entries go to.
|
||||
# Several other options exist. You can use 'single' for one big fat error log (not recommended).
|
||||
|
||||
Reference in New Issue
Block a user