OpenDroneMap-NodeODM/docs/generateSwaggerAPI.js

47 wiersze
1.5 KiB
JavaScript
Czysty Zwykły widok Historia

2016-09-14 23:02:44 +00:00
/*
2023-06-08 09:58:50 +00:00
NodeODM App and REST API to access ODM.
Copyright (C) 2016 NodeODM Contributors
2016-09-14 23:02:44 +00:00
This program is free software: you can redistribute it and/or modify
2023-06-08 09:58:50 +00:00
it under the terms of the GNU Affero General Public License as published by
2016-09-14 23:02:44 +00:00
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
2023-06-08 09:58:50 +00:00
You should have received a copy of the GNU Affero General Public License
2016-09-14 23:02:44 +00:00
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
"use strict";
let swaggerJSDoc = require('swagger-jsdoc');
let fs = require('fs');
let packageJson = JSON.parse(fs.readFileSync('../package.json'));
2016-09-14 23:02:44 +00:00
let options = {
swaggerDefinition: {
info: {
title: packageJson.name,
version: packageJson.version,
description: packageJson.description,
2016-09-14 23:02:44 +00:00
license: {
name: packageJson.license
2016-09-14 23:02:44 +00:00
},
contact: {
2016-09-21 13:28:55 +00:00
name: packageJson.author
2016-09-14 23:02:44 +00:00
}
},
consumes: ["application/json"],
produces: ["application/json", "application/zip"],
basePath: "/",
schemes: ["http"]
},
apis: ['../index.js'], // Path to the API docs
};
// Initialize swagger-jsdoc -> returns validated swagger spec in json format
let swaggerSpec = swaggerJSDoc(options);
fs.writeFileSync('swagger.json', JSON.stringify(swaggerSpec));