[grade=A] Shipdeck fleet module and manual deploy flow
Adds validated fleet install/lifecycle routes, bridge-backed Git and OCI workflows, persistent service cards, and the Local-tab Shipdeck deployment UI while preserving catalog and External flows. Judge: urn:ump:if6udffdyelsf4qvskkr65ikhuprsjiajzij6h653fhf2zgyynzq
This commit is contained in:
@@ -43,6 +43,7 @@ const path = require('path');
|
||||
const crypto = require('crypto');
|
||||
const { ok, errorResponse } = require('../src/utils/responses');
|
||||
const { ErrorCodes } = require('../src/utilities/error-codes');
|
||||
const shipdeckFleet = require('./shipdeck-fleet');
|
||||
const {
|
||||
validateFleetHost,
|
||||
resolveAndCheckAddress,
|
||||
@@ -58,7 +59,7 @@ const MAX_PROBE_CONCURRENCY = 5;
|
||||
// Per-host probe timeout for /fleet/status.
|
||||
const PROBE_TIMEOUT_MS = 3000;
|
||||
|
||||
module.exports = function({ log, asyncHandler }) {
|
||||
module.exports = function({ log, asyncHandler, auditLogger, fetchT, servicesStateManager }) {
|
||||
const wrap = asyncHandler || ((fn) => (req, res, next) => Promise.resolve(fn(req, res, next)).catch(next));
|
||||
const router = express.Router();
|
||||
|
||||
@@ -352,5 +353,15 @@ module.exports = function({ log, asyncHandler }) {
|
||||
});
|
||||
}));
|
||||
|
||||
// Shipdeck v0.2 lifecycle and install endpoints share the existing /fleet
|
||||
// namespace without changing the DC-108 host-management routes above.
|
||||
router.use('/fleet', shipdeckFleet({
|
||||
asyncHandler: wrap,
|
||||
log,
|
||||
auditLogger,
|
||||
fetchT,
|
||||
servicesStateManager,
|
||||
}));
|
||||
|
||||
return router;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user