8 Commits

Author SHA1 Message Date
648254aaa1 chore(release): 2.0.3 2024-01-29 12:03:30 +01:00
91a4f59ebc fix: Update images if needed. 2024-01-29 12:03:22 +01:00
e74a4b6e87 chore(release): 2.0.2 2024-01-29 12:00:44 +01:00
b7adfa98e5 chore(release): 2.0.1 2023-05-15 22:07:33 +02:00
40b3a7b4c9 fix: Remove temp credential. 2023-05-15 22:07:19 +02:00
9d2a44a7bc chore(release): 2.0.0 2023-05-15 11:42:49 +02:00
6f731d3d9b feat!: Add importer.
Use specific IP for firefly.
2023-05-15 11:42:37 +02:00
5358e6f40a fix: Use app key for firefly. 2023-05-15 11:41:49 +02:00
6 changed files with 307 additions and 8 deletions

View File

@@ -2,6 +2,38 @@
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)

View File

@@ -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"

View File

@@ -3,5 +3,6 @@
community.docker.docker_compose:
project_src: "{{ firefly_config_path | expanduser | realpath }}"
build: false
pull: true
tags:
- firefly_install

View File

@@ -6,23 +6,40 @@ services:
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: unless-stopped
env_file: env.db.conf
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
@@ -32,7 +49,8 @@ services:
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:
@@ -40,4 +58,8 @@ volumes:
networks:
firefly_iii:
driver: bridge
ipam:
driver: default
config:
- subnet: "177.0.0.0/24"
# gateway: "177.0.0.1"

View 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

View File

@@ -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