- Add libs/frontend crate: build.rs runs pnpm build, copies dist/ to
OUT_DIR/dist_blobs/, generates frontend.rs with lazy_static! map
- libs/api/dist.rs serves embedded assets via serve_frontend handler
- Register /{path:.*} SPA fallback in route.rs (after /api/*)
- Remove frontend container from deploy: docker/frontend.Dockerfile,
deploy/templates/frontend-*.yaml, values.yaml frontend section
- Update ingress: gitdata.ai root now routes to app service
- Update scripts: build.js removes frontend step, deploy.js removes frontend
33 lines
1.3 KiB
Rust
33 lines
1.3 KiB
Rust
use actix_web::web;
|
|
|
|
pub fn init_routes(cfg: &mut web::ServiceConfig) {
|
|
cfg.service(
|
|
web::scope("/ws")
|
|
.route("", web::get().to(crate::room::ws_universal::ws_universal))
|
|
.route("/rooms/{room_id}", web::get().to(crate::room::ws::ws_room))
|
|
.route(
|
|
"/projects/{project_id}",
|
|
web::get().to(crate::room::ws::ws_project),
|
|
),
|
|
);
|
|
|
|
cfg.service(
|
|
web::scope("/api")
|
|
.configure(crate::auth::init_auth_routes)
|
|
.configure(crate::git::init_git_routes)
|
|
.configure(crate::git::init_git_toplevel_routes)
|
|
.configure(crate::issue::init_issue_routes)
|
|
.configure(crate::project::init_project_routes)
|
|
.configure(crate::user::init_user_routes)
|
|
.configure(crate::pull_request::init_pull_request_routes)
|
|
.configure(crate::agent::init_agent_routes)
|
|
.configure(crate::workspace::init_workspace_routes)
|
|
.configure(crate::search::init_search_routes)
|
|
.configure(crate::room::init_room_routes)
|
|
.configure(crate::skill::init_skill_routes),
|
|
);
|
|
|
|
// SPA fallback — must be registered last so /api/* takes precedence
|
|
cfg.route("/{path:.*}", web::get().to(crate::dist::serve_frontend));
|
|
}
|