From 848f41b3829b7eba53705e67277afbdd14745761 Mon Sep 17 00:00:00 2001 From: Deon George Date: Fri, 25 Jun 2021 13:40:50 +1000 Subject: [PATCH] Added mongo configuration --- .env.example | 16 +- .env.testing | 12 +- composer.json | 1 + composer.lock | 353 ++++++++++++++++++++++++++++++++++---------- config/database.php | 14 ++ 5 files changed, 312 insertions(+), 84 deletions(-) diff --git a/.env.example b/.env.example index 836f8ca..614affe 100644 --- a/.env.example +++ b/.env.example @@ -8,11 +8,15 @@ LOG_CHANNEL=stack LOG_LEVEL=info DB_CONNECTION=pgsql -DB_HOST=database +DB_HOST=postgres DB_PORT=5432 DB_DATABASE=postgres DB_USERNAME=postgres -DB_PASSWORD=secret +DB_PASSWORD=password + +DB_MONGO_HOST=mongo +DB_MONGO_USERNAME=mongo +DB_MONGO_PASSWORD=password BROADCAST_DRIVER=log CACHE_DRIVER=file @@ -21,15 +25,15 @@ SESSION_DRIVER=file SESSION_LIFETIME=120 REDIS_HOST=127.0.0.1 -REDIS_PASSWORD=null +REDIS_PASSWORD= REDIS_PORT=6379 MAIL_DRIVER=smtp MAIL_HOST=mail.leenooks.vpn MAIL_PORT=25 -MAIL_USERNAME=null -MAIL_PASSWORD=null -MAIL_ENCRYPTION=null +MAIL_USERNAME= +MAIL_PASSWORD= +MAIL_ENCRYPTION= MAIL_AUTO_EMBED_METHOD=base64 PUSHER_APP_ID= diff --git a/.env.testing b/.env.testing index 504a747..266ef54 100644 --- a/.env.testing +++ b/.env.testing @@ -14,6 +14,10 @@ DB_DATABASE=postgres DB_USERNAME=postgres DB_PASSWORD=secret +DB_MONGO_HOST=mongo +DB_MONGO_USERNAME=mongo +DB_MONGO_PASSWORD=password + BROADCAST_DRIVER=log CACHE_DRIVER=file QUEUE_CONNECTION=sync @@ -21,15 +25,15 @@ SESSION_DRIVER=file SESSION_LIFETIME=120 REDIS_HOST=127.0.0.1 -REDIS_PASSWORD=null +REDIS_PASSWORD= REDIS_PORT=6379 MAIL_DRIVER=smtp MAIL_HOST=mail.leenooks.vpn MAIL_PORT=25 -MAIL_USERNAME=null -MAIL_PASSWORD=null -MAIL_ENCRYPTION=null +MAIL_USERNAME= +MAIL_PASSWORD= +MAIL_ENCRYPTION= MAIL_AUTO_EMBED_METHOD=base64 PUSHER_APP_ID= diff --git a/composer.json b/composer.json index b3ce3be..4210a97 100644 --- a/composer.json +++ b/composer.json @@ -11,6 +11,7 @@ "eduardokum/laravel-mail-auto-embed": "^1.0", "fideloper/proxy": "^4.4", "fruitcake/laravel-cors": "^2.0", + "jenssegers/mongodb": "^3.8", "laravel/framework": "^8.0", "laravel/passport": "^10.1", "laravel/ui": "^3.2", diff --git a/composer.lock b/composer.lock index 1103152..fba7fc8 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "ef106532a92ad8d4e7da6899b1b27fb6", + "content-hash": "375895896140ab8b282d257a18cc4a6d", "packages": [ { "name": "asm89/stack-cors", @@ -118,6 +118,79 @@ ], "time": "2021-01-20T22:51:39+00:00" }, + { + "name": "composer/package-versions-deprecated", + "version": "1.11.99.2", + "source": { + "type": "git", + "url": "https://github.com/composer/package-versions-deprecated.git", + "reference": "c6522afe5540d5fc46675043d3ed5a45a740b27c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/c6522afe5540d5fc46675043d3ed5a45a740b27c", + "reference": "c6522afe5540d5fc46675043d3ed5a45a740b27c", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.1.0 || ^2.0", + "php": "^7 || ^8" + }, + "replace": { + "ocramius/package-versions": "1.11.99" + }, + "require-dev": { + "composer/composer": "^1.9.3 || ^2.0@dev", + "ext-zip": "^1.13", + "phpunit/phpunit": "^6.5 || ^7" + }, + "type": "composer-plugin", + "extra": { + "class": "PackageVersions\\Installer", + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "PackageVersions\\": "src/PackageVersions" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + }, + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be" + } + ], + "description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)", + "support": { + "issues": "https://github.com/composer/package-versions-deprecated/issues", + "source": "https://github.com/composer/package-versions-deprecated/tree/1.11.99.2" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2021-05-24T07:46:03+00:00" + }, { "name": "defuse/php-encryption", "version": "v2.3.1", @@ -802,6 +875,143 @@ ], "time": "2020-04-13T13:17:36+00:00" }, + { + "name": "jean85/pretty-package-versions", + "version": "1.6.0", + "source": { + "type": "git", + "url": "https://github.com/Jean85/pretty-package-versions.git", + "reference": "1e0104b46f045868f11942aea058cd7186d6c303" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Jean85/pretty-package-versions/zipball/1e0104b46f045868f11942aea058cd7186d6c303", + "reference": "1e0104b46f045868f11942aea058cd7186d6c303", + "shasum": "" + }, + "require": { + "composer/package-versions-deprecated": "^1.8.0", + "php": "^7.0|^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^6.0|^8.5|^9.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Jean85\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alessandro Lai", + "email": "alessandro.lai85@gmail.com" + } + ], + "description": "A wrapper for ocramius/package-versions to get pretty versions strings", + "keywords": [ + "composer", + "package", + "release", + "versions" + ], + "support": { + "issues": "https://github.com/Jean85/pretty-package-versions/issues", + "source": "https://github.com/Jean85/pretty-package-versions/tree/1.6.0" + }, + "time": "2021-02-04T16:20:16+00:00" + }, + { + "name": "jenssegers/mongodb", + "version": "3.8.4", + "source": { + "type": "git", + "url": "https://github.com/jenssegers/laravel-mongodb.git", + "reference": "6aa6ad12b3b52eeab1d090f282c14123ffad1dc9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/jenssegers/laravel-mongodb/zipball/6aa6ad12b3b52eeab1d090f282c14123ffad1dc9", + "reference": "6aa6ad12b3b52eeab1d090f282c14123ffad1dc9", + "shasum": "" + }, + "require": { + "illuminate/container": "^8.0", + "illuminate/database": "^8.0", + "illuminate/events": "^8.0", + "illuminate/support": "^8.0", + "mongodb/mongodb": "^1.6" + }, + "require-dev": { + "doctrine/dbal": "^2.6", + "mockery/mockery": "^1.3.1", + "orchestra/testbench": "^6.0", + "phpunit/phpunit": "^9.0" + }, + "suggest": { + "jenssegers/mongodb-sentry": "Add Sentry support to Laravel-MongoDB", + "jenssegers/mongodb-session": "Add MongoDB session support to Laravel-MongoDB" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Jenssegers\\Mongodb\\MongodbServiceProvider", + "Jenssegers\\Mongodb\\MongodbQueueServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Jenssegers\\Mongodb\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jens Segers", + "homepage": "https://jenssegers.com" + } + ], + "description": "A MongoDB based Eloquent model and Query builder for Laravel (Moloquent)", + "homepage": "https://github.com/jenssegers/laravel-mongodb", + "keywords": [ + "database", + "eloquent", + "laravel", + "model", + "moloquent", + "mongo", + "mongodb" + ], + "support": { + "issues": "https://github.com/jenssegers/laravel-mongodb/issues", + "source": "https://github.com/jenssegers/laravel-mongodb/tree/3.8.4" + }, + "funding": [ + { + "url": "https://github.com/jenssegers", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/jenssegers/mongodb", + "type": "tidelift" + } + ], + "time": "2021-05-27T06:52:51+00:00" + }, { "name": "laravel/framework", "version": "v8.47.0", @@ -1633,6 +1843,74 @@ ], "time": "2020-12-10T11:35:44+00:00" }, + { + "name": "mongodb/mongodb", + "version": "1.8.0", + "source": { + "type": "git", + "url": "https://github.com/mongodb/mongo-php-library.git", + "reference": "953dbc19443aa9314c44b7217a16873347e6840d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/mongodb/mongo-php-library/zipball/953dbc19443aa9314c44b7217a16873347e6840d", + "reference": "953dbc19443aa9314c44b7217a16873347e6840d", + "shasum": "" + }, + "require": { + "ext-hash": "*", + "ext-json": "*", + "ext-mongodb": "^1.8.1", + "jean85/pretty-package-versions": "^1.2", + "php": "^7.0 || ^8.0", + "symfony/polyfill-php80": "^1.19" + }, + "require-dev": { + "squizlabs/php_codesniffer": "^3.5, <3.5.5", + "symfony/phpunit-bridge": "5.x-dev" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.8.x-dev" + } + }, + "autoload": { + "psr-4": { + "MongoDB\\": "src/" + }, + "files": [ + "src/functions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Andreas Braun", + "email": "andreas.braun@mongodb.com" + }, + { + "name": "Jeremy Mikola", + "email": "jmikola@gmail.com" + } + ], + "description": "MongoDB driver library", + "homepage": "https://jira.mongodb.org/browse/PHPLIB", + "keywords": [ + "database", + "driver", + "mongodb", + "persistence" + ], + "support": { + "issues": "https://github.com/mongodb/mongo-php-library/issues", + "source": "https://github.com/mongodb/mongo-php-library/tree/1.8.0" + }, + "time": "2020-11-25T12:26:02+00:00" + }, { "name": "monolog/monolog", "version": "2.2.0", @@ -5832,79 +6110,6 @@ ], "time": "2021-04-07T13:37:33+00:00" }, - { - "name": "composer/package-versions-deprecated", - "version": "1.11.99.2", - "source": { - "type": "git", - "url": "https://github.com/composer/package-versions-deprecated.git", - "reference": "c6522afe5540d5fc46675043d3ed5a45a740b27c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/c6522afe5540d5fc46675043d3ed5a45a740b27c", - "reference": "c6522afe5540d5fc46675043d3ed5a45a740b27c", - "shasum": "" - }, - "require": { - "composer-plugin-api": "^1.1.0 || ^2.0", - "php": "^7 || ^8" - }, - "replace": { - "ocramius/package-versions": "1.11.99" - }, - "require-dev": { - "composer/composer": "^1.9.3 || ^2.0@dev", - "ext-zip": "^1.13", - "phpunit/phpunit": "^6.5 || ^7" - }, - "type": "composer-plugin", - "extra": { - "class": "PackageVersions\\Installer", - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "PackageVersions\\": "src/PackageVersions" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com" - }, - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be" - } - ], - "description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)", - "support": { - "issues": "https://github.com/composer/package-versions-deprecated/issues", - "source": "https://github.com/composer/package-versions-deprecated/tree/1.11.99.2" - }, - "funding": [ - { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" - } - ], - "time": "2021-05-24T07:46:03+00:00" - }, { "name": "composer/semver", "version": "3.2.5", diff --git a/config/database.php b/config/database.php index 5c23ae0..d6ddb31 100644 --- a/config/database.php +++ b/config/database.php @@ -101,6 +101,20 @@ return [ #'sslrootcert' => env('DB_SSLROOTCERT', 'ca.crt'), ], + 'mongodb' => [ + 'driver' => 'mongodb', + 'host' => env('DB_MONGO_HOST', '127.0.0.1'), + 'port' => env('DB_MONGO_PORT', 27017), + 'database' => env('DB_MONGO_DATABASE', 'fido'), + 'username' => env('DB_MONGO_USERNAME', 'mongo'), + 'password' => env('DB_MONGO_PASSWORD', 'password'), + 'options' => [ + // here you can pass more settings to the Mongo Driver Manager + // see https://www.php.net/manual/en/mongodb-driver-manager.construct.php under "Uri Options" for a list of complete parameters that you can use + + 'database' => env('DB_AUTHENTICATION_DATABASE', 'admin'), // required with Mongo 3+ + ], + ], ], /*