mirror of
https://gitlab.com/wgp/dougal/software.git
synced 2025-12-06 10:47:07 +00:00
Add /version API endpoint
This commit is contained in:
@@ -88,6 +88,9 @@ app.use(mw.etag.ifNoneMatch);
|
||||
|
||||
// We must be authenticated before we can access these
|
||||
app.map({
|
||||
'/version': {
|
||||
get: [ mw.version.get ]
|
||||
},
|
||||
'/project': {
|
||||
get: [ mw.project.get ], // Get list of projects
|
||||
post: [ mw.auth.access.admin, mw.project.post ], // Create a new project
|
||||
|
||||
@@ -17,5 +17,6 @@ module.exports = {
|
||||
meta: require('./meta'),
|
||||
openapi: require('./openapi'),
|
||||
rss: require('./rss'),
|
||||
etag: require('./etag')
|
||||
etag: require('./etag'),
|
||||
version: require('./version')
|
||||
};
|
||||
|
||||
19
lib/www/server/api/middleware/version/get.js
Normal file
19
lib/www/server/api/middleware/version/get.js
Normal file
@@ -0,0 +1,19 @@
|
||||
|
||||
const version = require('../../../lib/version');
|
||||
|
||||
module.exports = async function (req, res, next) {
|
||||
|
||||
try {
|
||||
const v = await version();
|
||||
if (req.user.role != "admin" && req.user.role != "user") {
|
||||
delete v.os;
|
||||
delete v.db;
|
||||
}
|
||||
res.status(200).json(v);
|
||||
} catch (err) {
|
||||
next(err);
|
||||
return;
|
||||
}
|
||||
next();
|
||||
|
||||
};
|
||||
4
lib/www/server/api/middleware/version/index.js
Normal file
4
lib/www/server/api/middleware/version/index.js
Normal file
@@ -0,0 +1,4 @@
|
||||
|
||||
module.exports = {
|
||||
get: require('./get')
|
||||
}
|
||||
Reference in New Issue
Block a user