From 7479b199b0e70e652c038f22c2c69de9e28f9409 Mon Sep 17 00:00:00 2001 From: anmol Date: Sun, 1 Nov 2020 00:55:24 +0530 Subject: [PATCH] Updated to version 5.4.5 --- README.md | 6 +- conf/.env | 292 ++++++++++++++++++++++++++++++++++----------- conf/app.src | 6 +- manifest.json | 2 +- scripts/_common.sh | 4 +- scripts/install | 34 +++--- scripts/upgrade | 33 ++--- 7 files changed, 269 insertions(+), 108 deletions(-) diff --git a/README.md b/README.md index f44e54f..9131e00 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,15 @@ # Firefly III for YunoHost -[![Integration level](https://dash.yunohost.org/integration/firefly-iii.svg)](https://dash.yunohost.org/appci/app/firefly-iii) ![](https://ci-apps.yunohost.org/ci/badges/firefly-iii.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/firefly-iii.maintain.svg) +[![Integration level](https://dash.yunohost.org/integration/firefly-iii.svg)](https://dash.yunohost.org/appci/app/firefly-iii) ![](https://ci-apps.yunohost.org/ci/badges/firefly-iii.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/firefly-iii.maintain.svg) [![Install Firefly III with YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=firefly-iii) -> *This package allows you to install Firefly III quickly and simply on a YunoHost server. +> *This package allows you to install Firefly III quickly and simply on a YunoHost server. If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.* ## Overview "Firefly III" is a (self-hosted) manager for your personal finances. It can help you keep track of your expenses and income, so you can spend less and save more. Firefly III supports the use of budgets, categories and tags. It can import data from external sources and it has many neat financial reports available. You can [read all about it in the main repository](https://github.com/firefly-iii/firefly-iii) and in the [official documentation](https://firefly-iii.readthedocs.io/en/latest/). -**Shipped version:** 5.2.0 +**Shipped version:** 5.4.5 ## Screenshots diff --git a/conf/.env b/conf/.env index a542781..4a8ff81 100644 --- a/conf/.env +++ b/conf/.env @@ -5,30 +5,48 @@ APP_ENV=local # Set to true if you want to see debug information in error screens. APP_DEBUG=false -# This should be your email address -SITE_OWNER=yunomail +# This should be your email address. +# If you use Docker or similar, you can set this variable from a file by using SITE_OWNER_FILE +SITE_OWNER=mail@example.com -# The encryption key for your database and sessions. Keep this very secure. -# If you generate a new one all existing data must be considered LOST. -# Change it to a string of exactly 32 chars or use command `php artisan key:generate` to generate it -APP_KEY=random_key +# The encryption key for your sessions. Keep this very secure. +# Change it to a string of exactly 32 chars or use something like `php artisan key:generate` to generate it. +# If you use Docker or similar, you can set this variable from a file by using APP_KEY_FILE +APP_KEY=SomeRandomStringOf32CharsExactly + +# 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 +# +# If text is still in English, remember that not everything may have been translated. +DEFAULT_LANGUAGE=en_US + +# The locale defines how numbers are formatted. +# by default this value is the same as whatever the language is. +DEFAULT_LOCALE=equal # Change this value to your preferred time zone. # Example: Europe/Amsterdam -TZ=UTC +# For a list of supported time zones, see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones +TZ=Europe/Amsterdam -# This variable must match your installation's external address but keep in mind that -# it's only used on the command line as a fallback value. -APP_URL=https://yunoappurl # 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= # The log channel defines where your log entries go to. # 'daily' is the default logging mode giving you 5 daily rotated log files in /storage/logs/. # Several other options exist. You can use 'single' for one big fat error log (not recommended). # Also available are 'syslog', 'errorlog' and 'stdout' which will log to the system itself. -LOG_CHANNEL=daily +# A rotating log option is 'daily', creates 5 files that (surprise) rotate. +# Default setting 'stack' will log to 'daily' and to 'stdout' at the same time. + +# - Docker + versions <= 4.8.1.8 and before: use "stdout" +# - Docker + versions > 4.8.1.8 : use "docker_out" +# - Docker + versions >= 5.1.1 : use "stack" +# - For everything else (als not Docker) : use 'stack' + +LOG_CHANNEL=stack # Log level. You can set this from least severe to most severe: # debug, info, notice, warning, error, critical, alert, emergency @@ -37,138 +55,274 @@ LOG_CHANNEL=daily APP_LOG_LEVEL=notice # Database credentials. Make sure the database exists. I recommend a dedicated user for Firefly III -# For other database types, please see the FAQ: http://firefly-iii.readthedocs.io/en/latest/support/faq.html +# For other database types, please see the FAQ: https://docs.firefly-iii.org/support/faq +# If you use Docker or similar, you can set these variables from a file by appending them with _FILE +# Use "pgsql" for PostgreSQL +# Use "mysql" for MySQL and MariaDB. +# Use "sqlite" for SQLite. DB_CONNECTION=mysql -DB_HOST=127.0.0.1 +DB_HOST=fireflyiiidb DB_PORT=3306 -DB_DATABASE=yunobase -DB_USERNAME=yunouser -DB_PASSWORD=yunopass +DB_DATABASE=firefly +DB_USERNAME=firefly +DB_PASSWORD=secret_firefly_password + +# MySQL supports SSL. You can configure it here. +# If you use Docker or similar, you can set these variables from a file by appending them with _FILE +MYSQL_USE_SSL=false +MYSQL_SSL_VERIFY_SERVER_CERT=true +# You need to set at least of these options +MYSQL_SSL_CAPATH=/etc/ssl/certs/ +MYSQL_SSL_CA= +MYSQL_SSL_CERT= +MYSQL_SSL_KEY= +MYSQL_SSL_CIPHER= + +# PostgreSQL supports SSL. You can configure it here. +# If you use Docker or similar, you can set these variables from a file by appending them with _FILE +PGSQL_SSL_MODE=prefer +PGSQL_SSL_ROOT_CERT=null +PGSQL_SSL_CERT=null +PGSQL_SSL_KEY=null +PGSQL_SSL_CRL_FILE=null # If you're looking for performance improvements, you could install memcached. CACHE_DRIVER=file SESSION_DRIVER=file -# You can configure another file storage backend if you cannot use the local storage option. -# To set this up, fill in the following variables. The upload path is used to store uploaded -# files and the export path is to store exported data (before download). -SFTP_HOST= -SFTP_PORT= -SFTP_UPLOAD_PATH= -SFTP_EXPORT_PATH= +# If you set either of these to 'redis', you might want to update these settings too +# If you use Docker or similar, you can set REDIS_HOST_FILE, REDIS_PASSWORD_FILE or +# REDIS_PORT_FILE to set the value from a file instead of from an environment variable -# SFTP uses either the username/password combination or the private key to authenticate. -SFTP_USERNAME= -SFTP_PASSWORD= -SFTP_PRIV_KEY= +# can be tcp, unix or http +REDIS_SCHEME=tcp + +# use only when using 'unix' for REDIS_SCHEME. Leave empty otherwise. +REDIS_PATH= + +# use only when using 'tcp' or 'http' for REDIS_SCHEME. Leave empty otherwise. +REDIS_HOST=127.0.0.1 +REDIS_PORT=6379 + +REDIS_PASSWORD=null +# always use quotes and make sure redis db "0" and "1" exists. Otherwise change accordingly. +REDIS_DB="0" +REDIS_CACHE_DB="1" # Cookie settings. Should not be necessary to change these. +# If you use Docker or similar, you can set COOKIE_DOMAIN_FILE to set +# the value from a file instead of from an environment variable COOKIE_PATH="/" COOKIE_DOMAIN= COOKIE_SECURE=false # If you want Firefly III to mail you, update these settings -# For instructions, see: https://firefly-iii.readthedocs.io/en/latest/installation/mail.html -MAIL_DRIVER=mail -MAIL_HOST=127.0.0.1 -MAIL_PORT=25 -MAIL_FROM=firefly@yunodomain +# For instructions, see: https://docs.firefly-iii.org/advanced-installation/email +# If you use Docker or similar, you can set these variables from a file by appending them with _FILE +MAIL_MAILER=log +MAIL_HOST=null +MAIL_PORT=2525 +MAIL_FROM=changeme@example.com MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null # Other mail drivers: +# If you use Docker or similar, you can set these variables from a file by appending them with _FILE MAILGUN_DOMAIN= MAILGUN_SECRET= + + +# If you are on EU region in mailgun, use api.eu.mailgun.net, otherwise use api.mailgun.net +# If you use Docker or similar, you can set this variable from a file by appending it with _FILE +MAILGUN_ENDPOINT=api.mailgun.net + +# If you use Docker or similar, you can set these variables from a file by appending them with _FILE MANDRILL_SECRET= SPARKPOST_SECRET= # Firefly III can send you the following messages SEND_REGISTRATION_MAIL=true SEND_ERROR_MESSAGE=true +SEND_LOGIN_NEW_IP_WARNING=true # These messages contain (sensitive) transaction information: SEND_REPORT_JOURNALS=true # Set a Mapbox API key here (see mapbox.com) so there might be a map available at various places. +# If you use Docker or similar, you can set this variable from a file by appending it with _FILE MAPBOX_API_KEY= -# Set a Fixer IO API key here (see https://fixer.io) to enable live currency exchange rates. -# Please note that this will only work for paid fixer.io accounts because they severly limited -# the free API up to the point where you might as well offer nothing. -FIXER_API_KEY= - -# If you wish to track your own behavior over Firefly III, set a valid analytics tracker ID here. -ANALYTICS_ID= - -# Most parts of the database are encrypted by default, but you can turn this off if you want to. -# This makes it easier to migrate your database. Not that some fields will never be decrypted. -USE_ENCRYPTION=false +# The map will default to this location: +MAP_DEFAULT_LAT=51.983333 +MAP_DEFAULT_LONG=5.916667 +MAP_DEFAULT_ZOOM=6 # Firefly III has two options for user authentication. "eloquent" is the default, -# and "adldap" for LDAP servers. +# and "ldap" for LDAP servers. # For full instructions on these settings please visit: -# https://firefly-iii.readthedocs.io/en/latest/installation/authentication.html -LOGIN_PROVIDER=ldap +# https://docs.firefly-iii.org/advanced-installation/authentication +# If you use Docker or similar, you can set this variable from a file by appending it with _FILE +LOGIN_PROVIDER=eloquent + +# It's also possible to change the way users are authenticated. You could use Authelia for example. +# Authentication via the REMOTE_USER header is supported. Change the value below to "remote_user_guard". +# +# This will also allow Windows SSO. +# +# If you do this please read the documentation for instructions and warnings: +# https://docs.firefly-iii.org/advanced-installation/authentication +# +# This function is available in Firefly III v5.3.0 and higher. +AUTHENTICATION_GUARD=web + +# If the guard is changed, Firefly III uses the 'REMOTE_USER' header as per RFC 3875. +# You can also use another header, like AUTH_USER when using Windows SSO. +# Some systems use X-Auth headers. In that case, use HTTP_X_AUTH_USERNAME or HTTP_X_AUTH_EMAIL +# Depending on your system, REMOTE_USER may need to be changed to HTTP_REMOTE_USER +# +AUTHENTICATION_GUARD_HEADER=REMOTE_USER + +# +# Firefly III uses email addresses as user identifiers. When you're using an external authentication guard +# that doesn't do this, Firefly III is incapable of emailing you. Messages sent to "Bill Gates" always fail. +# +# However, if you set this value, Firefly III will store the value from this header as the user's backup +# email address and use it to communicate. So user "Bill Gates" could still have +# the email address "bill@microsoft.com". +# +# Example value: AUTHENTICATION_GUARD_EMAIL=HTTP_X_AUTH_EMAIL +# +AUTHENTICATION_GUARD_EMAIL= + + +# It's impossible to log out users who's authentication is handled by an external system. +# Enter a custom URL here that will force a logout (your authentication provider can tell you). +# Setting this variable only works when AUTHENTICATION_GUARD != web +# +CUSTOM_LOGOUT_URI= # LDAP connection configuration # OpenLDAP, FreeIPA or ActiveDirectory +# # If you use Docker or similar, you can set this variable from a file by appending it with _FILE ADLDAP_CONNECTION_SCHEME=OpenLDAP ADLDAP_AUTO_CONNECT=true # LDAP connection settings -ADLDAP_CONTROLLERS=localhost +# You can set the following variables from a file by appending them with _FILE: +# ADLDAP_CONTROLLERS, ADLDAP_PORT, ADLDAP_BASEDN +ADLDAP_CONTROLLERS= ADLDAP_PORT=389 ADLDAP_TIMEOUT=5 -ADLDAP_BASEDN="dc=yunohost,dc=org" +ADLDAP_BASEDN="" ADLDAP_FOLLOW_REFFERALS=false + +# SSL/TLS settings ADLDAP_USE_SSL=false ADLDAP_USE_TLS=false +ADLDAP_SSL_CACERTDIR= +ADLDAP_SSL_CACERTFILE= +ADLDAP_SSL_CERTFILE= +ADLDAP_SSL_KEYFILE= +ADLDAP_SSL_CIPHER_SUITE= +ADLDAP_SSL_REQUIRE_CERT= +# You can set the following variables from a file by appending them with _FILE: ADLDAP_ADMIN_USERNAME= ADLDAP_ADMIN_PASSWORD= -ADLDAP_ACCOUNT_PREFIX="uid=" -ADLDAP_ACCOUNT_SUFFIX=",ou=users,dc=yunohost,dc=org" -ADLDAP_ADMIN_ACCOUNT_PREFIX= -ADLDAP_ADMIN_ACCOUNT_SUFFIX= +# You can set the following variables from a file by appending them with _FILE: +ADLDAP_ACCOUNT_PREFIX= +ADLDAP_ACCOUNT_SUFFIX= # LDAP authentication settings. ADLDAP_PASSWORD_SYNC=false ADLDAP_LOGIN_FALLBACK=false -ADLDAP_DISCOVER_FIELD=uid -ADLDAP_AUTH_FIELD=uid - -# Will allow SSO if your server provides an AUTH_USER field. -WINDOWS_SSO_DISCOVER=samaccountname -WINDOWS_SSO_KEY=AUTH_USER +ADLDAP_DISCOVER_FIELD=distinguishedname +ADLDAP_AUTH_FIELD=distinguishedname # field to sync as local username. -ADLDAP_SYNC_FIELD=uid +# You can set the following variable from a file by appending it with _FILE: +ADLDAP_SYNC_FIELD=userprincipalname -# You can disable the X-Frame-Options header if it interfears with tools like -# Organizr. This is at your own risk. +# You can disable the X-Frame-Options header if it interferes with tools like +# Organizr. This is at your own risk. Applications running in frames run the risk +# of leaking information to their parent frame. DISABLE_FRAME_HEADER=false +# You can disable the Content Security Policy header when you're using an ancient browser +# or any version of Microsoft Edge / Internet Explorer (which amounts to the same thing really) +# This leaves you with the risk of not being able to stop XSS bugs should they ever surface. +# This is at your own risk. +DISABLE_CSP_HEADER=false + +# If you wish to track your own behavior over Firefly III, set valid analytics tracker information here. +# Nobody uses this except for me on the demo site. But hey, feel free to use this if you want to. +# Do not prepend the TRACKER_URL with http:// or https:// +# The only tracker supported is Matomo. +# You can set the following variables from a file by appending them with _FILE: +TRACKER_SITE_ID= +TRACKER_URL= + +# Firefly III can collect telemetry on how you use Firefly III. This is opt-in. +# In order to allow this, change the following variable to true. +# To read more about this feature, go to this page: https://docs.firefly-iii.org/support/telemetry +SEND_TELEMETRY=false + +# You can fine tune the start-up of a Docker container by editing these environment variables. +# Use this at your own risk. Disabling certain checks and features may result in lost of inconsistent data. +# However if you know what you're doing you can significantly speed up container start times. +# Set each value to true to enable, or false to disable. + +# Check if the SQLite database exists. Can be skipped if you're not using SQLite. +# Won't significantly speed up things. +DKR_CHECK_SQLITE=true + +# Run database creation and migration commands. Disable this only if you're 100% sure the DB exists +# and is up to date. +DKR_RUN_MIGRATION=true + +# Run database upgrade commands. Disable this only when you're 100% sure your DB is up-to-date +# with the latest fixes (outside of migrations!) +DKR_RUN_UPGRADE=true + +# Verify database integrity. Includes all data checks and verifications. +# Disabling this makes Firefly III assume your DB is intact. +DKR_RUN_VERIFY=true + +# Run database reporting commands. When disabled, Firefly III won't go over your data to report current state. +# Disabling this should have no impact on data integrity or safety but it won't warn you of possible issues. +DKR_RUN_REPORT=true + +# Generate OAuth2 keys. +# When disabled, Firefly III won't attempt to generate OAuth2 Passport keys. This won't be an issue, IFF (if and only if) +# you had previously generated keys already and they're stored in your database for restoration. +DKR_RUN_PASSPORT_INSTALL=true + # Leave the following configuration vars as is. # Unless you like to tinker and know what you're doing. APP_NAME=FireflyIII ADLDAP_CONNECTION=default BROADCAST_DRIVER=log QUEUE_DRIVER=sync -REDIS_HOST=127.0.0.1 -REDIS_PASSWORD=null -REDIS_PORT=6379 CACHE_PREFIX=firefly -SEARCH_RESULT_LIMIT=50 PUSHER_KEY= PUSHER_SECRET= PUSHER_ID= DEMO_USERNAME= DEMO_PASSWORD= -IS_DOCKER=false -IS_SANDSTORM=false IS_HEROKU=false -BUNQ_USE_SANDBOX=false -FFIII_LAYOUT=v1 +FIREFLY_III_LAYOUT=v1 + +# +# If you have trouble configuring your Firefly III installation, DON'T BOTHER setting this variable. +# It won't work. It doesn't do ANYTHING. Don't believe the lies you read online. I'm not joking. +# This configuration value WILL NOT HELP. +# +# This variable is ONLY used in some of the emails Firefly III sends around. Nowhere else. +# So when configuring anything WEB related this variable doesn't do anything. Nothing +# +# If you're stuck I understand you get desperate but look SOMEWHERE ELSE. +# +APP_URL=http://localhost \ No newline at end of file diff --git a/conf/app.src b/conf/app.src index 79e2204..cebaf55 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,6 +1,6 @@ -SOURCE_URL=https://github.com/firefly-iii/firefly-iii/archive/5.2.0.tar.gz -SOURCE_SUM=136ddb92167a63e0eeafc91c18d12285e28533f18441b80a683d69cb1ea05115 +SOURCE_URL=https://github.com/firefly-iii/firefly-iii/archive/5.4.5.tar.gz +SOURCE_SUM=3a301dd71e37fde6326e56efe975e55cdc4b81816373a7e3fa22075441c5c253 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true -SOURCE_FILENAME=firefly-iii-5.2.0.tar.gz +SOURCE_FILENAME=firefly-iii-5.4.5.tar.gz diff --git a/manifest.json b/manifest.json index 041e0fa..61e61be 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "A self-hosted financial manager.", "fr": "Un gestionnaire de finances personnelles." }, - "version": "5.2.0~ynh2", + "version": "5.4.5~ynh1", "url": "https://firefly-iii.org/", "license": "GPL-3.0-or-later", "maintainer": { diff --git a/scripts/_common.sh b/scripts/_common.sh index d93f982..3ad3af3 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -5,9 +5,9 @@ #================================================= # dependencies used by the app -pkg_dependencies="" +pkg_dependencies="redis-server" -YNH_PHP_VERSION="7.3" +YNH_PHP_VERSION="7.4" extra_php_dependencies="php${YNH_PHP_VERSION}-zip php${YNH_PHP_VERSION}-mysql php${YNH_PHP_VERSION}-xml php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-curl php${YNH_PHP_VERSION}-bcmath php${YNH_PHP_VERSION}-opcache php${YNH_PHP_VERSION}-ldap" diff --git a/scripts/install b/scripts/install index 07c1e8d..6be2d38 100755 --- a/scripts/install +++ b/scripts/install @@ -119,15 +119,24 @@ ynh_exec_warn_less ynh_install_composer --phpversion="$phpversion" --workdir="$f ynh_script_progression --message="Modifying a config file..." config="$final_path/.env" -cp ../conf/.env "$config" +cp -f "$final_path/.env.example" "$config" -ynh_replace_string --match_string="random_key" --replace_string="$random_key" --target_file="$config" -ynh_replace_string --match_string="yunouser" --replace_string="$db_name" --target_file="$config" -ynh_replace_string --match_string="yunopass" --replace_string="$db_pwd" --target_file="$config" -ynh_replace_string --match_string="yunobase" --replace_string="$db_name" --target_file="$config" -ynh_replace_string --match_string="yunomail" --replace_string="$email" --target_file="$config" -ynh_replace_string --match_string="yunodomain" --replace_string="$domain" --target_file="$config" -ynh_replace_string --match_string="yunoappurl" --replace_string="$domain$path_url" --target_file="$config" +ynh_replace_string --match_string="SomeRandomStringOf32CharsExactly" --replace_string="$random_key" --target_file="$config" ADLDAP_BASEDN="" +ynh_replace_string --match_string="fireflyiiidb" --replace_string="127.0.0.1" --target_file="$config" +ynh_replace_string --match_string="DB_DATABASE=firefly" --replace_string="DB_DATABASE=$db_name" --target_file="$config" +ynh_replace_string --match_string="secret_firefly_password" --replace_string="$db_pwd" --target_file="$config" +ynh_replace_string --match_string="MAIL_MAILER=log" --replace_string="MAIL_MAILER=smtp" --target_file="$config" +ynh_replace_string --match_string="MAIL_HOST=null" --replace_string="MAIL_HOST=127.0.0.1" --target_file="$config" +ynh_replace_string --match_string="MAIL_PORT=2525" --replace_string="MAIL_PORT=25" --target_file="$config" +ynh_replace_string --match_string="mail@example.com" --replace_string="$email" --target_file="$config" +ynh_replace_string --match_string="changeme@example.com" --replace_string="$app@$domain" --target_file="$config" +ynh_replace_string --match_string="ADLDAP_CONTROLLERS=" --replace_string="ADLDAP_CONTROLLERS=127.0.0.1" --target_file="$config" +ynh_replace_string --match_string='ADLDAP_BASEDN=""' --replace_string='ADLDAP_BASEDN="dc=yunohost,dc=org"' --target_file="$config" +ynh_replace_string --match_string="ADLDAP_ACCOUNT_PREFIX=" --replace_string='ADLDAP_ACCOUNT_PREFIX="uid="' --target_file="$config" +ynh_replace_string --match_string="ADLDAP_ACCOUNT_SUFFIX=" --replace_string='ADLDAP_ACCOUNT_SUFFIX=",dc=yunohost,dc=org"' --target_file="$config" +ynh_replace_string --match_string="distinguishedname" --replace_string="uid" --target_file="$config" +ynh_replace_string --match_string="userprincipalname" --replace_string="uid" --target_file="$config" +ynh_replace_string --match_string="localhost" --replace_string="$domain$path_url" --target_file="$config" #================================================= # STORE THE CONFIG FILE CHECKSUM @@ -172,16 +181,11 @@ ynh_use_logrotate #================================================= ynh_script_progression --message="Configuring SSOwat..." -if [ $is_public -eq 0 ] -then # Remove the public access - ynh_app_setting_delete --app=$app --key=skipped_uris -fi - # Make app public if necessary if [ $is_public -eq 1 ] then - # unprotected_uris allows SSO credentials to be passed anyway. - ynh_app_setting_set --app=$app --key=unprotected_uris --value="/" + # unprotected_uris allows SSO credentials to be passed anyway. + ynh_app_setting_set --app=$app --key=unprotected_uris --value="/" fi #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index b3e2c54..f978117 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -93,23 +93,24 @@ then # Create a temporary directory tmpdir="$(mktemp -d)" - + # Backup the config file in the temp dir mkdir -p "$tmpdir/storage/upload" mkdir -p "$tmpdir/storage/export" mkdir -p "$final_path/storage/upload/" mkdir -p "$final_path/storage/export/" cp -a "$final_path/storage/upload/" "$tmpdir/storage/upload/" + cp -a "$final_path/.env" "$tmpdir/.env" cp -a "$final_path/storage/export/" "$tmpdir/storage/export/" rm -Rf "$final_path" # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$final_path" - + # Restore the config file cp -a "$tmpdir/storage/upload/" "$final_path/storage/upload/" cp -a "$tmpdir/storage/export/" "$final_path/storage/export/" - + cp -a "$tmpdir/.env" "$final_path/.env" # Remove temporary directory rm -Rf "$tmpdir" @@ -161,22 +162,22 @@ ynh_exec_warn_less ynh_install_composer --phpversion="$phpversion" --workdir="$f #================================================= # MODIFY A CONFIG FILE #================================================= -ynh_script_progression --message="Modifying a config file..." +#ynh_script_progression --message="Modifying a config file..." -config="$final_path/.env" -ynh_backup_if_checksum_is_different --file="$config" -cp ../conf/.env "$config" +#config="$final_path/.env" +#ynh_backup_if_checksum_is_different --file="$config" +#cp ../conf/.env "$config" -ynh_replace_string --match_string="random_key" --replace_string="$random_key" --target_file="$config" -ynh_replace_string --match_string="yunouser" --replace_string="$db_name" --target_file="$config" -ynh_replace_string --match_string="yunopass" --replace_string="$db_pwd" --target_file="$config" -ynh_replace_string --match_string="yunobase" --replace_string="$db_name" --target_file="$config" -ynh_replace_string --match_string="yunomail" --replace_string="$email" --target_file="$config" -ynh_replace_string --match_string="yunodomain" --replace_string="$domain" --target_file="$config" -ynh_replace_string --match_string="yunoappurl" --replace_string="$domain$path_url" --target_file="$config" +#ynh_replace_string --match_string="random_key" --replace_string="$random_key" --target_file="$config" +#ynh_replace_string --match_string="yunouser" --replace_string="$db_name" --target_file="$config" +#ynh_replace_string --match_string="yunopass" --replace_string="$db_pwd" --target_file="$config" +#ynh_replace_string --match_string="yunobase" --replace_string="$db_name" --target_file="$config" +#ynh_replace_string --match_string="yunomail" --replace_string="$email" --target_file="$config" +#ynh_replace_string --match_string="yunodomain" --replace_string="$domain" --target_file="$config" +#ynh_replace_string --match_string="yunoappurl" --replace_string="$domain$path_url" --target_file="$config" # Recalculate and store the checksum of the file for the next upgrade. -ynh_store_file_checksum --file="$config" +#ynh_store_file_checksum --file="$config" #================================================= # DEPLOYMENT @@ -184,9 +185,11 @@ ynh_store_file_checksum --file="$config" ynh_script_progression --message="Deploying..." pushd "$final_path" + php$phpversion artisan migrate:refresh --seed php$phpversion artisan firefly-iii:upgrade-database php$phpversion artisan passport:install + php artisan cache:clear #rm -rf "$final_path/bootstrap/cache/*"