mirror of
https://github.com/coollabsio/coolify-examples.git
synced 2026-02-18 21:38:58 +00:00
49 lines
1.7 KiB
PHP
49 lines
1.7 KiB
PHP
<?php declare(strict_types=1);
|
|
|
|
use Shopware\Core\DevOps\Environment\EnvironmentHelper;
|
|
use Shopware\Core\Framework\Plugin\KernelPluginLoader\ComposerPluginLoader;
|
|
use Shopware\Core\Installer\InstallerKernel;
|
|
use Shopware\Core\Framework\Adapter\Kernel\KernelFactory;
|
|
|
|
$_SERVER['SCRIPT_FILENAME'] = __FILE__;
|
|
|
|
require_once __DIR__ . '/../vendor/autoload_runtime.php';
|
|
|
|
if (!file_exists(__DIR__ . '/../.env') && !file_exists(__DIR__ . '/../.env.dist') && !file_exists(__DIR__ . '/../.env.local.php')) {
|
|
$_SERVER['APP_RUNTIME_OPTIONS']['disable_dotenv'] = true;
|
|
}
|
|
|
|
return function (array $context) {
|
|
$classLoader = require __DIR__ . '/../vendor/autoload.php';
|
|
|
|
if (!EnvironmentHelper::getVariable('SHOPWARE_SKIP_WEBINSTALLER', false) && !file_exists(dirname(__DIR__) . '/install.lock')) {
|
|
$baseURL = str_replace(basename(__FILE__), '', $_SERVER['SCRIPT_NAME']);
|
|
$baseURL = rtrim($baseURL, '/');
|
|
|
|
if (strpos($_SERVER['REQUEST_URI'], '/installer') === false) {
|
|
header('Location: ' . $baseURL . '/installer');
|
|
exit;
|
|
}
|
|
}
|
|
|
|
$appEnv = $context['APP_ENV'] ?? 'dev';
|
|
$debug = (bool) ($context['APP_DEBUG'] ?? ($appEnv !== 'prod'));
|
|
|
|
if (!EnvironmentHelper::getVariable('SHOPWARE_SKIP_WEBINSTALLER', false) && !file_exists(dirname(__DIR__) . '/install.lock')) {
|
|
return new InstallerKernel($appEnv, $debug);
|
|
}
|
|
|
|
$pluginLoader = null;
|
|
|
|
if (EnvironmentHelper::getVariable('COMPOSER_PLUGIN_LOADER', false)) {
|
|
$pluginLoader = new ComposerPluginLoader($classLoader, null);
|
|
}
|
|
|
|
return KernelFactory::create(
|
|
environment: $appEnv,
|
|
debug: $debug,
|
|
classLoader: $classLoader,
|
|
pluginLoader: $pluginLoader,
|
|
);
|
|
};
|