mirror of
https://github.com/sasjs/server.git
synced 2025-12-10 11:24:35 +00:00
36 lines
883 B
TypeScript
36 lines
883 B
TypeScript
import express from 'express'
|
|
import { createFileTree, getTreeExample } from '../../controllers'
|
|
import { isFileTree } from '../../types'
|
|
|
|
const driveRouter = express.Router()
|
|
|
|
driveRouter.post('/deploy', async (req, res) => {
|
|
if (!isFileTree(req.body.fileTree)) {
|
|
res.status(400).send({
|
|
status: 'failure',
|
|
message: 'Provided not supported data format.',
|
|
example: getTreeExample()
|
|
})
|
|
|
|
return
|
|
}
|
|
|
|
await createFileTree(
|
|
req.body.fileTree.members,
|
|
req.body.appLoc ? req.body.appLoc.replace(/^\//, '').split('/') : []
|
|
)
|
|
.then(() => {
|
|
res.status(200).send({
|
|
status: 'success',
|
|
message: 'Files deployed successfully to @sasjs/server.'
|
|
})
|
|
})
|
|
.catch((err) => {
|
|
res
|
|
.status(500)
|
|
.send({ status: 'failure', message: 'Deployment failed!', ...err })
|
|
})
|
|
})
|
|
|
|
export default driveRouter
|