Docker Compose projeleri için tam kapsamlı yönetim paneli ve otomatik deployment altyapısı eklendi. Sistem özellikleri: - Belirtilen root dizin altındaki docker-compose dosyası içeren projeleri tarama - Git repo bağlantısı ile branch yönetimi ve klonlama/pull işlemleri - Docker compose up/down komutları ile otomatik deploy - Gitea webhook entegrasyonu ile commit bazlı tetikleme - Deploy geçmişi, log kayıtları ve durum takibi (running/success/failed) - Deploy metrikleri ve dashboard görselleştirmesi - Webhook token ve secret yönetimi ile güvenlik - Proje favicon servisi Teknik değişiklikler: - Backend: deploymentProject, deploymentRun ve settings modelleri eklendi - Backend: deploymentService ile git ve docker işlemleri otomatize edildi - Backend: webhook doğrulaması için signature kontrolü eklendi - Docker: docker-cli ve docker-compose bağımlılıkları eklendi - Frontend: deployments ve settings sayfaları eklendi - Frontend: dashboard'a deploy metrikleri ve aktivite akışı eklendi - API: /api/deployments ve /api/settings yolları eklendi
33 lines
1.3 KiB
TypeScript
33 lines
1.3 KiB
TypeScript
import { Navigate, Route, Routes } from "react-router-dom";
|
|
import { LoginPage } from "./pages/LoginPage";
|
|
import { ProtectedRoute } from "./components/ProtectedRoute";
|
|
import { DashboardLayout } from "./components/DashboardLayout";
|
|
import { HomePage } from "./pages/HomePage";
|
|
import { JobsPage } from "./pages/JobsPage";
|
|
import { JobDetailPage } from "./pages/JobDetailPage";
|
|
import { DeploymentsPage } from "./pages/DeploymentsPage";
|
|
import { DeploymentDetailPage } from "./pages/DeploymentDetailPage";
|
|
import { SettingsPage } from "./pages/SettingsPage";
|
|
|
|
function App() {
|
|
return (
|
|
<Routes>
|
|
<Route path="/login" element={<LoginPage />} />
|
|
<Route element={<ProtectedRoute />}>
|
|
<Route element={<DashboardLayout />}>
|
|
<Route path="/home" element={<HomePage />} />
|
|
<Route path="/jobs" element={<JobsPage />} />
|
|
<Route path="/jobs/:id" element={<JobDetailPage />} />
|
|
<Route path="/deployments" element={<DeploymentsPage />} />
|
|
<Route path="/deployments/:id" element={<DeploymentDetailPage />} />
|
|
<Route path="/settings" element={<SettingsPage />} />
|
|
<Route path="*" element={<Navigate to="/home" replace />} />
|
|
</Route>
|
|
</Route>
|
|
<Route path="*" element={<Navigate to="/home" replace />} />
|
|
</Routes>
|
|
);
|
|
}
|
|
|
|
export default App;
|