Skip to content

Commit 8354674

Browse files
committed
Added auth for bull-board
1 parent 89442e6 commit 8354674

23 files changed

+9938
-257
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
.env
22
node_modules
3+
data/db
34
.snyk

background.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ const { ExpressAdapter } = require("@bull-board/express");
66

77
const serverAdapter = new ExpressAdapter();
88

9+
const express = require('express');
10+
const app = express();
11+
912
const bullBoard = createBullBoard({
1013
queues: [new BullAdapter(predictQueue), new BullAdapter(jobScheduler)],
1114
serverAdapter: serverAdapter,
@@ -35,6 +38,13 @@ const initScheduler = async () => {
3538
);
3639
};
3740

41+
app.get('/login', async (req, res) => {
42+
console.log('Received login');
43+
res.render('login');
44+
});
45+
3846
initScheduler();
3947

48+
serverAdapter.getRouter();
49+
4050
module.exports.bullBoardServerAdapter = serverAdapter;

data/screenshots/bull-dashboard1.png

-121 KB
Binary file not shown.

data/screenshots/bull-dashboard2.png

-122 KB
Binary file not shown.

data/screenshots/extension_demo.gif

-2.57 MB
Binary file not shown.

data/screenshots/icon.png

-206 KB
Binary file not shown.

data/screenshots/web_demo.gif

-1.2 MB
Binary file not shown.

main.js

Lines changed: 25 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,24 +32,42 @@ app.use(limiter);
3232
// body limit
3333
app.use(express.json({ limit: "10kb" }));
3434

35+
app.set("view engine", "ejs");
36+
app.set("views", __dirname + "/views");
37+
app.use(bodyParser.urlencoded({ extended: true }));
38+
app.use(express.static("public"));
39+
3540
// background
3641
if (process.env.BACKGROUND == true) {
3742
const { bullBoardServerAdapter } = require("./background");
38-
app.use("/bull-board", bullBoardServerAdapter.getRouter());
43+
const {ensureLoggedIn} = require("connect-ensure-login");
44+
const passport = require('passport');
45+
const session = require('express-session');
46+
app.use(session({secret : 'keyboard cat'}));
47+
app.use(passport.initialize({}));
48+
app.use(passport.session({}));
49+
const authRouter = require("./routes/auth");
50+
app.use("/login", authRouter);
51+
app.use("/bull-board",
52+
ensureLoggedIn('/login'),
53+
bullBoardServerAdapter.getRouter()
54+
);
3955
console.info("BACKGROUND is up.");
4056
}
4157

4258
// web
4359
if (process.env.WEB == true) {
44-
const webRouter = require("./web");
45-
app.set("view engine", "ejs");
46-
app.set("views", __dirname + "/views");
4760
app.set("layout", "layouts/layout");
4861
app.set("layout extractScripts", true);
4962
app.use(expressLayouts);
50-
app.use(bodyParser.urlencoded({ extended: true }));
51-
app.use(express.static("public"));
52-
app.use("/", webRouter);
63+
const unless = require('express-unless');
64+
const webRouter = require("./web");
65+
webRouter.unless = unless;
66+
app.use("/",
67+
webRouter.unless({
68+
path : ['/login', '/bull-board']
69+
}),
70+
);
5371
console.info("WEB is up.");
5472
}
5573

0 commit comments

Comments
 (0)