Server!
This commit is contained in:
parent
eca0a825dc
commit
67827bd051
16
src/main.rs
16
src/main.rs
@ -1,9 +1,9 @@
|
|||||||
use chrono::NaiveDate;
|
|
||||||
use sqlx::{Connection, PgConnection};
|
use sqlx::{Connection, PgConnection};
|
||||||
use toggl::TogglApi;
|
use toggl::TogglApi;
|
||||||
use worker::Worker;
|
use worker::Worker;
|
||||||
|
|
||||||
mod sensitive;
|
mod sensitive;
|
||||||
|
mod server;
|
||||||
mod toggl;
|
mod toggl;
|
||||||
mod worker;
|
mod worker;
|
||||||
|
|
||||||
@ -17,6 +17,9 @@ enum AppError {
|
|||||||
|
|
||||||
#[error("User modified since time delta is too large. Max allowed is 90 days.")]
|
#[error("User modified since time delta is too large. Max allowed is 90 days.")]
|
||||||
LookBackTooLarge,
|
LookBackTooLarge,
|
||||||
|
|
||||||
|
#[error("IO error: {0}")]
|
||||||
|
IO(#[from] std::io::Error),
|
||||||
}
|
}
|
||||||
|
|
||||||
struct TableSummary {
|
struct TableSummary {
|
||||||
@ -46,14 +49,5 @@ async fn main() {
|
|||||||
|
|
||||||
let mut worker = Worker { db, toggl_api: api };
|
let mut worker = Worker { db, toggl_api: api };
|
||||||
|
|
||||||
worker.update_tags().await.unwrap();
|
server::serve().await.expect("Failed to start server")
|
||||||
|
|
||||||
let start = NaiveDate::from_ymd_opt(2024, 2, 1).expect("Invalid date");
|
|
||||||
|
|
||||||
let end = NaiveDate::from_ymd_opt(2024, 2, 2).expect("Invalid date");
|
|
||||||
|
|
||||||
worker
|
|
||||||
.fetch_within(start, end)
|
|
||||||
.await
|
|
||||||
.expect("Failed to fetch time entries");
|
|
||||||
}
|
}
|
||||||
|
|||||||
19
src/server.rs
Normal file
19
src/server.rs
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
use axum::{
|
||||||
|
http::StatusCode,
|
||||||
|
routing::{get, post},
|
||||||
|
Json, Router,
|
||||||
|
};
|
||||||
|
|
||||||
|
use crate::AppError;
|
||||||
|
|
||||||
|
pub async fn serve() -> Result<(), AppError> {
|
||||||
|
// build our application with a route
|
||||||
|
let app = Router::new();
|
||||||
|
|
||||||
|
// run our app with hyper, listening globally on port 3000
|
||||||
|
let listener = tokio::net::TcpListener::bind("0.0.0.0:3000").await?;
|
||||||
|
|
||||||
|
axum::serve(listener, app).await?;
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user