Updating bullboard to use the new koa version (supported).
This commit is contained in:
parent
bb8fe8e941
commit
047318fdf7
|
@ -71,6 +71,8 @@
|
||||||
"@budibase/auth": "^0.9.185-alpha.9",
|
"@budibase/auth": "^0.9.185-alpha.9",
|
||||||
"@budibase/client": "^0.9.185-alpha.9",
|
"@budibase/client": "^0.9.185-alpha.9",
|
||||||
"@budibase/string-templates": "^0.9.185-alpha.9",
|
"@budibase/string-templates": "^0.9.185-alpha.9",
|
||||||
|
"@bull-board/api": "^3.7.0",
|
||||||
|
"@bull-board/koa": "^3.7.0",
|
||||||
"@elastic/elasticsearch": "7.10.0",
|
"@elastic/elasticsearch": "7.10.0",
|
||||||
"@koa/router": "8.0.0",
|
"@koa/router": "8.0.0",
|
||||||
"@sendgrid/mail": "7.1.1",
|
"@sendgrid/mail": "7.1.1",
|
||||||
|
@ -80,7 +82,6 @@
|
||||||
"aws-sdk": "^2.767.0",
|
"aws-sdk": "^2.767.0",
|
||||||
"bcryptjs": "2.4.3",
|
"bcryptjs": "2.4.3",
|
||||||
"bull": "^3.22.4",
|
"bull": "^3.22.4",
|
||||||
"bull-board": "^2.0.1",
|
|
||||||
"chmodr": "1.2.0",
|
"chmodr": "1.2.0",
|
||||||
"csvtojson": "2.0.10",
|
"csvtojson": "2.0.10",
|
||||||
"dotenv": "8.2.0",
|
"dotenv": "8.2.0",
|
||||||
|
@ -139,7 +140,6 @@
|
||||||
"copyfiles": "^2.4.1",
|
"copyfiles": "^2.4.1",
|
||||||
"docker-compose": "^0.23.6",
|
"docker-compose": "^0.23.6",
|
||||||
"eslint": "^6.8.0",
|
"eslint": "^6.8.0",
|
||||||
"express": "^4.17.1",
|
|
||||||
"jest": "^27.0.5",
|
"jest": "^27.0.5",
|
||||||
"nodemon": "^2.0.4",
|
"nodemon": "^2.0.4",
|
||||||
"prettier": "^2.3.1",
|
"prettier": "^2.3.1",
|
||||||
|
|
|
@ -41,16 +41,8 @@ app.use(
|
||||||
)
|
)
|
||||||
|
|
||||||
if (!env.isTest()) {
|
if (!env.isTest()) {
|
||||||
const bullApp = bullboard.init()
|
const plugin = bullboard.init()
|
||||||
app.use(async (ctx: ExtendableContext, next: () => any) => {
|
app.use(plugin)
|
||||||
if (ctx.path.startsWith(bullboard.pathPrefix)) {
|
|
||||||
ctx.status = 200
|
|
||||||
ctx.respond = false
|
|
||||||
bullApp(ctx.req, ctx.res)
|
|
||||||
} else {
|
|
||||||
await next()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
app.context.eventEmitter = eventEmitter
|
app.context.eventEmitter = eventEmitter
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
const { createBullBoard } = require("bull-board")
|
const { createBullBoard } = require("@bull-board/api")
|
||||||
const { BullAdapter } = require("bull-board/bullAdapter")
|
const { BullAdapter } = require("@bull-board/api/bullAdapter")
|
||||||
const express = require("express")
|
const { KoaAdapter } = require("@bull-board/koa")
|
||||||
const env = require("../environment")
|
const env = require("../environment")
|
||||||
const Queue = env.isTest()
|
const Queue = env.isTest()
|
||||||
? require("../utilities/queue/inMemoryQueue")
|
? require("../utilities/queue/inMemoryQueue")
|
||||||
|
@ -19,7 +19,7 @@ async function cleanup() {
|
||||||
await automationQueue.clean(CLEANUP_PERIOD_MS, "completed")
|
await automationQueue.clean(CLEANUP_PERIOD_MS, "completed")
|
||||||
}
|
}
|
||||||
|
|
||||||
exports.pathPrefix = "/bulladmin"
|
const PATH_PREFIX = "/bulladmin"
|
||||||
|
|
||||||
exports.init = () => {
|
exports.init = () => {
|
||||||
// cleanup the events every 5 minutes
|
// cleanup the events every 5 minutes
|
||||||
|
@ -30,17 +30,19 @@ exports.init = () => {
|
||||||
console.error(`Unable to cleanup automation queue initially - ${err}`)
|
console.error(`Unable to cleanup automation queue initially - ${err}`)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
const expressApp = express()
|
|
||||||
// Set up queues for bull board admin
|
// Set up queues for bull board admin
|
||||||
const queues = [automationQueue]
|
const queues = [automationQueue]
|
||||||
const adapters = []
|
const adapters = []
|
||||||
|
const serverAdapter = new KoaAdapter()
|
||||||
for (let queue of queues) {
|
for (let queue of queues) {
|
||||||
adapters.push(new BullAdapter(queue))
|
adapters.push(new BullAdapter(queue))
|
||||||
}
|
}
|
||||||
const { router } = createBullBoard(adapters)
|
createBullBoard({
|
||||||
|
queues: adapters,
|
||||||
expressApp.use(exports.pathPrefix, router)
|
serverAdapter,
|
||||||
return expressApp
|
})
|
||||||
|
serverAdapter.setBasePath(PATH_PREFIX)
|
||||||
|
return serverAdapter.registerPlugin()
|
||||||
}
|
}
|
||||||
|
|
||||||
exports.queue = automationQueue
|
exports.queue = automationQueue
|
||||||
|
|
Loading…
Reference in New Issue