feat: UpdateAgent Selbstaktualisierung & kopflose Installation, .NET 10 Migration, Backend- & SDK-Fixes
- .NET 10 Migration: Alle .NET-Projekte auf net10.0 umgestellt (#459) - Client-SDK: ResolveAgentPath bereinigt und DLL-Pruefung ergaenzt (#458) - Packager: Commit-Ermittlung aus publishDir / Assembly InformationalVersion (#456) - BuildInfo.targets: ExitCode-Abfang und Regex-Validierung gegen Git-Fehlertexte (#363) - UpdateService: Re-Publish erhaelt bestehende Manifeste und Werte (#457) - Bugtracker API: on_roadmap-Filter in manage?action=list durchgereicht (#349) - Watchdog API: project_slug-Filter in GET /status ergaenzt (#420) - UpdateService API: no_release_for_platform mit verfuegbaren Plattformen (#421) - Bugtracker Core: Fehler-Normalisierung gegen zersplitterte error_hashes (#419) - UpdateAgent: Kopfloser Installationsmodus via --answers (#89) - Installer & Agent: Automatische Selbstaktualisierung beim Start - Tooling: AGENTS.md, CLAUDE.md und Standalone-CLI scripts/dc.py hinzugefuegt
This commit is contained in:
@@ -88,13 +88,25 @@ switch ($action) {
|
||||
Http::fail(400, 'missing_product', 'Der Parameter "product" wird benoetigt.');
|
||||
}
|
||||
|
||||
$release = $manager->latestRelease(
|
||||
$product,
|
||||
Http::str('channel') ?? 'prod',
|
||||
Http::str('platform') ?? Http::str('rid')
|
||||
);
|
||||
$platform = Http::str('platform') ?? Http::str('rid');
|
||||
$channel = Http::str('channel') ?? 'prod';
|
||||
|
||||
$release = $manager->latestRelease($product, $channel, $platform);
|
||||
if ($release === null) {
|
||||
Http::fail(404, 'no_release', sprintf('Fuer "%s" ist kein Release hinterlegt.', $product));
|
||||
$available = $manager->getAvailablePlatforms($product, $channel);
|
||||
if (!empty($available)) {
|
||||
Http::fail(404, 'no_release_for_platform', sprintf(
|
||||
'Fuer "%s" (%s) ist kein Release fuer die Plattform "%s" hinterlegt. Verfuegbare Plattformen: %s.',
|
||||
$product,
|
||||
$channel,
|
||||
$platform ?? 'any',
|
||||
implode(', ', $available)
|
||||
), null, [
|
||||
'requested_platform' => $platform ?? 'any',
|
||||
'available_platforms' => $available,
|
||||
]);
|
||||
}
|
||||
Http::fail(404, 'no_release', sprintf('Fuer "%s" (%s) ist kein Release hinterlegt.', $product, $channel));
|
||||
}
|
||||
|
||||
Http::ok(['release' => $release]);
|
||||
|
||||
Reference in New Issue
Block a user