From 2904623671f0b1c6aaf6d8fa0065b154b784d24d Mon Sep 17 00:00:00 2001 From: michele Date: Fri, 11 Sep 2026 20:04:11 +0200 Subject: [PATCH] fix(config): configure gescon_import to default to sqlite and track database config --- .gitignore | 3 +- config/database.php | 222 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 223 insertions(+), 2 deletions(-) create mode 100755 config/database.php diff --git a/.gitignore b/.gitignore index 2c8fb14..9036091 100755 --- a/.gitignore +++ b/.gitignore @@ -39,8 +39,7 @@ yarn-error.log *.env *.key *password* -*secret* -config/database.php +*.secret* .env.* # === BACKUP E CACHE === diff --git a/config/database.php b/config/database.php new file mode 100755 index 0000000..de5328f --- /dev/null +++ b/config/database.php @@ -0,0 +1,222 @@ + env('DB_CONNECTION', 'sqlite'), + + /* + |-------------------------------------------------------------------------- + | Database Connections + |-------------------------------------------------------------------------- + | + | Below are all of the database connections defined for your application. + | An example configuration is provided for each database system which + | is supported by Laravel. You're free to add / remove connections. + | + */ + + 'connections' => [ + + 'sqlite' => [ + 'driver' => 'sqlite', + 'url' => env('DB_URL'), + 'database' => env('DB_DATABASE', database_path('database.sqlite')), + 'prefix' => '', + 'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true), + 'busy_timeout' => null, + 'journal_mode' => null, + 'synchronous' => null, + ], + + 'mysql' => [ + 'driver' => 'mysql', + 'url' => env('DATABASE_URL'), + 'host' => env('DB_HOST', '127.0.0.1'), + 'port' => env('DB_PORT', '3306'), + 'database' => env('DB_DATABASE', 'forge'), + 'username' => env('DB_USERNAME', 'forge'), + 'password' => env('DB_PASSWORD', ''), + 'unix_socket' => env('DB_SOCKET', ''), + 'charset' => 'utf8mb4', + 'collation' => 'utf8mb4_unicode_ci', + 'prefix' => '', + 'prefix_indexes' => true, + 'strict' => true, + 'engine' => null, + 'options' => extension_loaded('pdo_mysql') ? array_filter([ + PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), + ]) : [], + ], + + 'gescon_import' => [ + 'driver' => env('GESCON_IMPORT_DB_DRIVER', 'sqlite'), + 'database' => env('GESCON_IMPORT_DB_DATABASE', database_path('gescon_import.sqlite')), + 'host' => env('GESCON_IMPORT_DB_HOST', '127.0.0.1'), + 'port' => env('GESCON_IMPORT_DB_PORT', '3306'), + 'username' => env('GESCON_IMPORT_DB_USERNAME', 'root'), + 'password' => env('GESCON_IMPORT_DB_PASSWORD', ''), + 'prefix' => '', + 'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true), + ], + + 'staging_mysql' => [ + 'driver' => 'mysql', + 'url' => env('STAGING_DATABASE_URL'), + 'host' => env('STAGING_DB_HOST', '127.0.0.1'), + 'port' => env('STAGING_DB_PORT', '3306'), + 'database' => env('STAGING_DB_DATABASE', 'forge'), + 'username' => env('STAGING_DB_USERNAME', 'forge'), + 'password' => env('STAGING_DB_PASSWORD', ''), + 'unix_socket' => env('STAGING_DB_SOCKET', ''), + 'charset' => 'utf8mb4', + 'collation' => 'utf8mb4_unicode_ci', + 'prefix' => '', + 'prefix_indexes' => true, + 'strict' => true, + 'engine' => null, + 'options' => extension_loaded('pdo_mysql') ? array_filter([ + PDO::MYSQL_ATTR_SSL_CA => env('STAGING_MYSQL_ATTR_SSL_CA'), + ]) : [], + ], + + 'contabilita_mysql' => [ + 'driver' => 'mysql', + 'host' => env('CONTABILITA_DB_HOST', '192.168.0.36'), + 'port' => env('CONTABILITA_DB_PORT', '3307'), + 'database' => env('CONTABILITA_DB_DATABASE', 'arc_nehr'), + 'username' => env('CONTABILITA_DB_USERNAME', 'NETGESCON'), + 'password' => env('CONTABILITA_DB_PASSWORD', 'P4ssw0rd.96'), + 'charset' => 'utf8', + 'collation' => 'utf8_general_ci', + 'prefix' => '', + 'strict' => false, + 'options' => extension_loaded('pdo_mysql') ? [ + \PDO::ATTR_EMULATE_PREPARES => true, + \PDO::ATTR_TIMEOUT => 5, + ] : [], + ], + + 'mariadb' => [ + 'driver' => 'mariadb', + 'url' => env('DB_URL'), + 'host' => env('DB_HOST', '127.0.0.1'), + 'port' => env('DB_PORT', '3306'), + 'database' => env('DB_DATABASE', 'laravel'), + 'username' => env('DB_USERNAME', 'root'), + 'password' => env('DB_PASSWORD', ''), + 'unix_socket' => env('DB_SOCKET', ''), + 'charset' => env('DB_CHARSET', 'utf8mb4'), + 'collation' => env('DB_COLLATION', 'utf8mb4_unicode_ci'), + 'prefix' => '', + 'prefix_indexes' => true, + 'strict' => true, + 'engine' => null, + 'options' => extension_loaded('pdo_mysql') ? array_filter([ + PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), + ]) : [], + ], + + 'pgsql' => [ + 'driver' => 'pgsql', + 'url' => env('DB_URL'), + 'host' => env('DB_HOST', '127.0.0.1'), + 'port' => env('DB_PORT', '5432'), + 'database' => env('DB_DATABASE', 'laravel'), + 'username' => env('DB_USERNAME', 'root'), + 'password' => env('DB_PASSWORD', ''), + 'charset' => env('DB_CHARSET', 'utf8'), + 'prefix' => '', + 'prefix_indexes' => true, + 'search_path' => 'public', + 'sslmode' => 'prefer', + ], + + 'sqlsrv' => [ + 'driver' => 'sqlsrv', + 'url' => env('DB_URL'), + 'host' => env('DB_HOST', 'localhost'), + 'port' => env('DB_PORT', '1433'), + 'database' => env('DB_DATABASE', 'laravel'), + 'username' => env('DB_USERNAME', 'root'), + 'password' => env('DB_PASSWORD', ''), + 'charset' => env('DB_CHARSET', 'utf8'), + 'prefix' => '', + 'prefix_indexes' => true, + // 'encrypt' => env('DB_ENCRYPT', 'yes'), + // 'trust_server_certificate' => env('DB_TRUST_SERVER_CERTIFICATE', 'false'), + ], + + ], + + /* + |-------------------------------------------------------------------------- + | Migration Repository Table + |-------------------------------------------------------------------------- + | + | This table keeps track of all the migrations that have already run for + | your application. Using this information, we can determine which of + | the migrations on disk haven't actually been run on the database. + | + */ + + 'migrations' => [ + 'table' => 'migrations', + 'update_date_on_publish' => true, + ], + + /* + |-------------------------------------------------------------------------- + | Redis Databases + |-------------------------------------------------------------------------- + | + | Redis is an open source, fast, and advanced key-value store that also + | provides a richer body of commands than a typical key-value system + | such as Memcached. You may define your connection settings here. + | + */ + + 'redis' => [ + + 'client' => env('REDIS_CLIENT', 'phpredis'), + + 'options' => [ + 'cluster' => env('REDIS_CLUSTER', 'redis'), + 'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_') . '_database_'), + 'persistent' => env('REDIS_PERSISTENT', false), + ], + + 'default' => [ + 'url' => env('REDIS_URL'), + 'host' => env('REDIS_HOST', '127.0.0.1'), + 'username' => env('REDIS_USERNAME'), + 'password' => env('REDIS_PASSWORD'), + 'port' => env('REDIS_PORT', '6379'), + 'database' => env('REDIS_DB', '0'), + ], + + 'cache' => [ + 'url' => env('REDIS_URL'), + 'host' => env('REDIS_HOST', '127.0.0.1'), + 'username' => env('REDIS_USERNAME'), + 'password' => env('REDIS_PASSWORD'), + 'port' => env('REDIS_PORT', '6379'), + 'database' => env('REDIS_CACHE_DB', '1'), + ], + + ], + +];