summaryrefslogtreecommitdiff
path: root/rust/schist_backend/src/main.rs
diff options
context:
space:
mode:
authorJoe Carstairs <me@joeac.net>2024-12-12 08:28:04 +0000
committerJoe Carstairs <me@joeac.net>2024-12-12 08:28:04 +0000
commit54894f9de9bad4fecb2a116d59a03cdd003f84c0 (patch)
tree6ce5517cecf23d4e93d7a381a374e1fa6c810cee /rust/schist_backend/src/main.rs
parent8a30bcbdf9264d235bf93da3df8e170cfde53d02 (diff)
Moves rust workspace to root
Diffstat (limited to 'rust/schist_backend/src/main.rs')
-rw-r--r--rust/schist_backend/src/main.rs48
1 files changed, 0 insertions, 48 deletions
diff --git a/rust/schist_backend/src/main.rs b/rust/schist_backend/src/main.rs
deleted file mode 100644
index 8395681..0000000
--- a/rust/schist_backend/src/main.rs
+++ /dev/null
@@ -1,48 +0,0 @@
-use schist_schema::migrations::MIGRATIONS;
-use diesel::SqliteConnection;
-use diesel_migrations::MigrationHarness;
-use rocket::fairing::AdHoc;
-use rocket::http::ContentType;
-use rocket::{launch, routes, Build, Rocket};
-
-use crate::databases::UserDataDb;
-
-pub mod databases;
-pub mod routes;
-
-fn run_database_migrations(connection: &mut SqliteConnection) {
- connection
- .run_pending_migrations(MIGRATIONS)
- .expect("Error running database migrations");
-}
-
-#[launch]
-async fn rocket() -> Rocket<Build> {
- rocket::build()
- .attach(UserDataDb::fairing())
- .attach(AdHoc::on_liftoff("Database Migration", |rocket| {
- Box::pin(async move {
- let user_data_db = UserDataDb::get_one(rocket).await.expect(
- "Failed to get connection to user data database in order to run migrations",
- );
- user_data_db.run(run_database_migrations).await;
- })
- }))
- .attach(AdHoc::on_response("Add CORS headers", |_req, res| {
- Box::pin(async move {
- res.set_header(ContentType::JSON);
- res.set_header(rocket::http::Header::new(
- "Access-Control-Allow-Origin",
- "http://localhost:5173",
- ));
- })
- }))
- .mount(
- "/",
- routes![
- routes::account::get_all_accounts,
- routes::account::create_account,
- routes::category::get_all_categories,
- ],
- )
-}