mirror of
https://github.com/jupyterhub/jupyterhub.git
synced 2025-10-07 18:14:10 +00:00
92 lines
2.5 KiB
JavaScript
92 lines
2.5 KiB
JavaScript
const webpack = require("webpack");
|
|
const path = require("path");
|
|
const user_json = require("./testing/user.json");
|
|
const group_json = require("./testing/group.json");
|
|
|
|
module.exports = {
|
|
entry: path.resolve(__dirname, "src", "App.jsx"),
|
|
mode: "production",
|
|
module: {
|
|
rules: [
|
|
{
|
|
test: /\.(js|jsx)/,
|
|
exclude: /node_modules/,
|
|
use: "babel-loader",
|
|
},
|
|
{
|
|
test: /\.(css)/,
|
|
exclude: /node_modules/,
|
|
use: ["style-loader", "css-loader"],
|
|
},
|
|
{
|
|
test: /\.(png|jpe?g|gif|svg|woff2?|ttf)$/i,
|
|
exclude: /node_modules/,
|
|
use: "file-loader",
|
|
},
|
|
],
|
|
},
|
|
output: {
|
|
publicPath: "/",
|
|
filename: "admin-react.js",
|
|
path: path.resolve(__dirname, "../share/jupyterhub/static/js/"),
|
|
},
|
|
resolve: {
|
|
extensions: [".css", ".js", ".jsx"],
|
|
},
|
|
plugins: [new webpack.HotModuleReplacementPlugin()],
|
|
devServer: {
|
|
client: {
|
|
overlay: false,
|
|
},
|
|
static: ["build", "testing", "../share/jupyterhub"],
|
|
port: 9000,
|
|
onBeforeSetupMiddleware: (devServer) => {
|
|
const app = devServer.app;
|
|
|
|
// get user_data
|
|
app.get("/hub/api/users", (req, res) => {
|
|
res.set("Content-Type", "application/json").send(user_json);
|
|
});
|
|
// get group_data
|
|
app.get("/hub/api/groups", (req, res) => {
|
|
res.set("Content-Type", "application/json").send(group_json);
|
|
});
|
|
// add users to group
|
|
app.post("/hub/api/groups/*/users", (req, res) => {
|
|
console.log(req.url, req.body);
|
|
res.status(200).end();
|
|
});
|
|
// remove users from group
|
|
app.delete("/hub/api/groups/*", (req, res) => {
|
|
console.log(req.url, req.body);
|
|
res.status(200).end();
|
|
});
|
|
// add users
|
|
app.post("/hub/api/users", (req, res) => {
|
|
console.log(req.url, req.body);
|
|
res.status(200).end();
|
|
});
|
|
// delete user
|
|
app.delete("/hub/api/users", (req, res) => {
|
|
console.log(req.url, req.body);
|
|
res.status(200).end();
|
|
});
|
|
// start user server
|
|
app.post("/hub/api/users/*/server", (req, res) => {
|
|
console.log(req.url, req.body);
|
|
res.status(200).end();
|
|
});
|
|
// stop user server
|
|
app.delete("/hub/api/users/*/server", (req, res) => {
|
|
console.log(req.url, req.body);
|
|
res.status(200).end();
|
|
});
|
|
// shutdown hub
|
|
app.post("/hub/api/shutdown", (req, res) => {
|
|
console.log(req.url, req.body);
|
|
res.status(200).end();
|
|
});
|
|
},
|
|
},
|
|
};
|