mirror of
git://f0xx.org/ac/ac-be-builder
synced 2026-07-29 04:18:20 +03:00
fix bootstrap paths for lab cluster composed backend
This commit is contained in:
@@ -1,17 +1,59 @@
|
|||||||
<?php
|
<?php
|
||||||
declare(strict_types=1);
|
declare(strict_types=1);
|
||||||
|
|
||||||
$examplesRoot = dirname(__DIR__, 3);
|
/**
|
||||||
require_once $examplesRoot . '/platform/shared_session.php';
|
* Resolve platform + shared auth src for monolith, lab cluster, or composed backend.
|
||||||
require_once $examplesRoot . '/platform/footer.php';
|
*
|
||||||
|
* @return array{platform_dir:string,crash_src:string,config:string}
|
||||||
|
*/
|
||||||
|
function ac_builder_paths(): array {
|
||||||
|
$builderRoot = dirname(__DIR__);
|
||||||
|
|
||||||
$crashSrc = $examplesRoot . '/crash_reporter/backend/src';
|
$clusterPlatform = '/var/www/ac/platform/shared_session.php';
|
||||||
$configPath = __DIR__ . '/../config/config.php';
|
$clusterComposedSrc = '/var/www/ac/composed/backend/src';
|
||||||
if (!is_file($configPath)) {
|
$clusterComposedCfg = '/var/www/ac/composed/backend/config/config.php';
|
||||||
$configPath = __DIR__ . '/../config/config.example.php';
|
if (is_file($clusterPlatform) && is_dir($clusterComposedSrc)) {
|
||||||
|
$cfg = $builderRoot . '/config/config.php';
|
||||||
|
if (!is_file($cfg)) {
|
||||||
|
$cfg = is_file($clusterComposedCfg) ? $clusterComposedCfg : $builderRoot . '/config/config.example.php';
|
||||||
|
}
|
||||||
|
return [
|
||||||
|
'platform_dir' => '/var/www/ac/platform',
|
||||||
|
'crash_src' => $clusterComposedSrc,
|
||||||
|
'config' => $cfg,
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
$examplesRoot = dirname($builderRoot, 3);
|
||||||
|
if (!is_file($examplesRoot . '/platform/shared_session.php')) {
|
||||||
|
$examplesRoot = dirname($builderRoot, 2);
|
||||||
|
}
|
||||||
|
$cfg = $builderRoot . '/config/config.php';
|
||||||
|
if (!is_file($cfg)) {
|
||||||
|
$cfg = $builderRoot . '/config/config.example.php';
|
||||||
|
}
|
||||||
|
return [
|
||||||
|
'platform_dir' => $examplesRoot . '/platform',
|
||||||
|
'crash_src' => $examplesRoot . '/crash_reporter/backend/src',
|
||||||
|
'config' => $cfg,
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$paths = ac_builder_paths();
|
||||||
|
require_once $paths['platform_dir'] . '/shared_session.php';
|
||||||
|
require_once $paths['platform_dir'] . '/footer.php';
|
||||||
|
|
||||||
|
$crashSrc = $paths['crash_src'];
|
||||||
|
$configPath = $paths['config'];
|
||||||
$config = require $configPath;
|
$config = require $configPath;
|
||||||
|
|
||||||
|
// Cluster: reuse issues DB/session; ensure builder paths when config came from composed issues tree.
|
||||||
|
if (($config['base_path'] ?? '') === '/app/androidcast_project/issues'
|
||||||
|
|| ($config['base_path'] ?? '') === '/app/androidcast_project/crashes') {
|
||||||
|
$config['app_name'] = 'Android Cast Builder';
|
||||||
|
$config['base_path'] = '/app/androidcast_project/build';
|
||||||
|
}
|
||||||
|
|
||||||
platform_start_session(
|
platform_start_session(
|
||||||
$config['session_name'] ?? 'ac_crash_sess',
|
$config['session_name'] ?? 'ac_crash_sess',
|
||||||
$config['session_cookie_path'] ?? '/app/androidcast_project'
|
$config['session_cookie_path'] ?? '/app/androidcast_project'
|
||||||
@@ -63,7 +105,7 @@ function json_out(array $data, int $code = 200): void {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function assets_base(): string {
|
function assets_base(): string {
|
||||||
return rtrim((string) cfg('links.crashes', '/app/androidcast_project/crashes/'), '/');
|
return rtrim((string) cfg('links.crashes', '/app/androidcast_project/issues/'), '/');
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @return 'running'|'passed'|'failed' */
|
/** @return 'running'|'passed'|'failed' */
|
||||||
|
|||||||
Reference in New Issue
Block a user