Compare commits
2 Commits
a107d9e283
...
19a21b8cdf
Author | SHA1 | Date |
---|---|---|
Jef Roosens | 19a21b8cdf | |
Jef Roosens | ce97f36c18 |
34
build.rs
34
build.rs
|
@ -1,34 +0,0 @@
|
|||
use std::{env, process::Command};
|
||||
|
||||
fn main()
|
||||
{
|
||||
if env::var_os("CARGO_FEATURE_WEB").is_some() {
|
||||
println!("cargo:rerun-if-changed=web");
|
||||
|
||||
let status = Command::new("yarn")
|
||||
.arg("build")
|
||||
.current_dir("web")
|
||||
.status()
|
||||
.expect("Failed to build frontend.");
|
||||
|
||||
if status.code().unwrap() != 0 {
|
||||
panic!("Building frontend failed.");
|
||||
}
|
||||
}
|
||||
|
||||
// This currently isn't possible because cargo doc requires a lock on the Cargo.lock file that
|
||||
// can't be provided
|
||||
|
||||
// if env::var_os("CARGO_FEATURE_DOCS").is_some() {
|
||||
// println!("cargo:rerun-if-changed=src");
|
||||
|
||||
// let status = Command::new(env::var("CARGO").unwrap())
|
||||
// .args(["doc", "--no-deps"])
|
||||
// .status()
|
||||
// .expect("Failed to build docs.");
|
||||
|
||||
// if status.code().unwrap() != 0 {
|
||||
// panic!("Failed to build docs.");
|
||||
// }
|
||||
// }
|
||||
}
|
21
src/main.rs
21
src/main.rs
|
@ -18,6 +18,10 @@ use rocket::{
|
|||
serde::json::{json, Value},
|
||||
Build, Orbit, Request, Rocket,
|
||||
};
|
||||
|
||||
#[cfg(any(feature = "web", feature="docs"))]
|
||||
use rocket::fs;
|
||||
|
||||
use rocket_sync_db_pools::database;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
|
@ -94,7 +98,7 @@ fn rocket() -> _
|
|||
.merge(Yaml::file("Rb.yaml").nested())
|
||||
.merge(Env::prefixed("RB_").global());
|
||||
|
||||
rocket::custom(figment)
|
||||
let mut instance = rocket::custom(figment)
|
||||
.attach(RbDbConn::fairing())
|
||||
.attach(AdHoc::try_on_ignite(
|
||||
"Run database migrations",
|
||||
|
@ -112,5 +116,18 @@ fn rocket() -> _
|
|||
routes![admin::create_user, admin::get_user_info],
|
||||
)
|
||||
.mount("/api/sections", routes![sections::create_section])
|
||||
.mount("/api/posts", routes![posts::get, posts::create])
|
||||
.mount("/api/posts", routes![posts::get, posts::create]);
|
||||
|
||||
// It's weird that this is allowed, but the line on its own isn't
|
||||
#[cfg(feature = "web")]
|
||||
{
|
||||
instance = instance.mount("/", fs::FileServer::new("/var/www/html/web", fs::Options::Index | fs::Options::NormalizeDirs));
|
||||
}
|
||||
|
||||
#[cfg(feature = "docs")]
|
||||
{
|
||||
instance = instance.mount("/docs", fs::FileServer::new("/var/www/html/docs", fs::Options::Index | fs::Options::NormalizeDirs));
|
||||
}
|
||||
|
||||
instance
|
||||
}
|
||||
|
|
Reference in New Issue