Setzt Phase 1 aus Visualization.md um: Vanilla-PHP-REST-API mit SQLite-Persistenz, statischen API-Keys pro Agent, Codeberg-Sync fuer Backlog/Done, PHPUnit-Tests und vollstaendiger API.md-Dokumentation - Vorgaben aus Detailantworten.md (F1-F16) umgesetzt. Entwicklung/Build/Test laufen komplett in Docker-Compose-Containern (PHP 8.2 + SQLite + Composer + PHPUnit/pcov), analog zum NC-Gantt-Projekt ist auf dem Host kein PHP/Composer noetig. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
26 lines
649 B
PHP
Executable file
26 lines
649 B
PHP
Executable file
#!/usr/bin/env php
|
|
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
use Monitor\Api\Config;
|
|
use Monitor\Api\Db\Database;
|
|
use Monitor\Api\Repository\TicketRepository;
|
|
use Monitor\Api\Sync\CodebergSyncService;
|
|
use Monitor\Api\Sync\CurlCodebergClient;
|
|
|
|
require dirname(__DIR__) . '/vendor/autoload.php';
|
|
|
|
$config = Config::fromEnvironment();
|
|
$db = Database::forFile($config->dbPath());
|
|
|
|
$service = new CodebergSyncService(
|
|
new CurlCodebergClient($config->codebergApiBase(), $config->codebergToken()),
|
|
new TicketRepository($db),
|
|
$config->codebergOwner(),
|
|
$config->codebergRepo(),
|
|
);
|
|
|
|
$service->sync();
|
|
|
|
fwrite(STDOUT, "Codeberg-Sync abgeschlossen.\n");
|