Added support for Mysql SSL connection
This commit is contained in:
@@ -10,6 +10,13 @@ use PicoDb\Database;
|
||||
|
||||
class DatabaseProvider implements ServiceProviderInterface
|
||||
{
|
||||
/**
|
||||
* Register provider
|
||||
*
|
||||
* @access public
|
||||
* @param Container $container
|
||||
* @return Container
|
||||
*/
|
||||
public function register(Container $container)
|
||||
{
|
||||
$container['db'] = $this->getInstance();
|
||||
@@ -83,6 +90,9 @@ class DatabaseProvider implements ServiceProviderInterface
|
||||
'database' => DB_NAME,
|
||||
'charset' => 'utf8',
|
||||
'port' => DB_PORT,
|
||||
'ssl_key' => DB_SSL_KEY,
|
||||
'ssl_ca' => DB_SSL_CA,
|
||||
'ssl_cert' => DB_SSL_CERT,
|
||||
));
|
||||
}
|
||||
|
||||
|
||||
@@ -2,16 +2,17 @@
|
||||
|
||||
require __DIR__.'/../vendor/autoload.php';
|
||||
|
||||
// Automatically parse environment configuration (Heroku)
|
||||
if (getenv('DATABASE_URL')) {
|
||||
$dbopts = parse_url(getenv('DATABASE_URL'));
|
||||
$dbUrlParser = new PicoDb\UrlParser();
|
||||
|
||||
define('DB_DRIVER', $dbopts['scheme']);
|
||||
define('DB_USERNAME', $dbopts["user"]);
|
||||
define('DB_PASSWORD', $dbopts["pass"]);
|
||||
define('DB_HOSTNAME', $dbopts["host"]);
|
||||
define('DB_PORT', isset($dbopts["port"]) ? $dbopts["port"] : null);
|
||||
define('DB_NAME', ltrim($dbopts["path"], '/'));
|
||||
if ($dbUrlParser->isEnvironmentVariableDefined()) {
|
||||
$dbSettings = $dbUrlParser->getSettings();
|
||||
|
||||
define('DB_DRIVER', $dbSettings['driver']);
|
||||
define('DB_USERNAME', $dbSettings['username']);
|
||||
define('DB_PASSWORD', $dbSettings['password']);
|
||||
define('DB_HOSTNAME', $dbSettings['hostname']);
|
||||
define('DB_PORT', $dbSettings['port']);
|
||||
define('DB_NAME', $dbSettings['database']);
|
||||
}
|
||||
|
||||
$config_file = implode(DIRECTORY_SEPARATOR, array(__DIR__, '..', 'config.php'));
|
||||
@@ -30,18 +31,18 @@ require __DIR__.'/constants.php';
|
||||
require __DIR__.'/check_setup.php';
|
||||
|
||||
$container = new Pimple\Container;
|
||||
$container->register(new Kanboard\ServiceProvider\HelperProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\SessionProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\LoggingProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\DatabaseProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\AuthenticationProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\NotificationProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\ClassProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\EventDispatcherProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\GroupProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\RouteProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\ActionProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\ExternalLinkProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\AvatarProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\FilterProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\PluginProvider);
|
||||
$container->register(new Kanboard\ServiceProvider\HelperProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\SessionProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\LoggingProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\DatabaseProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\AuthenticationProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\NotificationProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\ClassProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\EventDispatcherProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\GroupProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\RouteProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\ActionProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\ExternalLinkProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\AvatarProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\FilterProvider());
|
||||
$container->register(new Kanboard\ServiceProvider\PluginProvider());
|
||||
|
||||
@@ -34,6 +34,9 @@ defined('DB_PASSWORD') or define('DB_PASSWORD', '');
|
||||
defined('DB_HOSTNAME') or define('DB_HOSTNAME', 'localhost');
|
||||
defined('DB_NAME') or define('DB_NAME', 'kanboard');
|
||||
defined('DB_PORT') or define('DB_PORT', null);
|
||||
defined('DB_SSL_KEY') or define('DB_SSL_KEY', null);
|
||||
defined('DB_SSL_CERT') or define('DB_SSL_CERT', null);
|
||||
defined('DB_SSL_CA') or define('DB_SSL_CA', null);
|
||||
|
||||
// Database backend group provider
|
||||
defined('DB_GROUP_PROVIDER') or define('DB_GROUP_PROVIDER', true);
|
||||
|
||||
Reference in New Issue
Block a user