Set up runner subcommand

This commit is contained in:
Joscha 2023-08-07 14:54:47 +02:00
parent 7635af88cd
commit 4f69f5cb21
3 changed files with 25 additions and 0 deletions

View file

@ -7,6 +7,7 @@ pub const VERSION: &str = concat!(env!("CARGO_PKG_VERSION"), " (", env!("VERGEN_
pub struct ServerCommand { pub struct ServerCommand {
/// Path to the repo's tablejohn database. /// Path to the repo's tablejohn database.
pub db: PathBuf, pub db: PathBuf,
// TODO Make repo optional
/// Path to the git repo. /// Path to the git repo.
pub repo: PathBuf, pub repo: PathBuf,
} }
@ -14,6 +15,7 @@ pub struct ServerCommand {
#[derive(Debug, clap::Parser)] #[derive(Debug, clap::Parser)]
pub enum Command { pub enum Command {
Server(ServerCommand), Server(ServerCommand),
Runner,
} }
#[derive(Debug, clap::Parser)] #[derive(Debug, clap::Parser)]

View file

@ -1,5 +1,6 @@
mod args; mod args;
mod config; mod config;
mod runner;
mod server; mod server;
mod somehow; mod somehow;
@ -16,6 +17,7 @@ use tracing_subscriber::{
use crate::{ use crate::{
args::{Args, Command, NAME, VERSION}, args::{Args, Command, NAME, VERSION},
config::Config, config::Config,
runner::Runner,
server::Server, server::Server,
}; };
@ -121,6 +123,14 @@ async fn run() -> somehow::Result<()> {
_ = server.shut_down() => {} _ = server.shut_down() => {}
} }
} }
Command::Runner => {
let runner = Runner::new();
select! {
_ = wait_for_signal() => {}
_ = runner.run() => {}
}
}
} }
Ok(()) Ok(())

13
src/runner.rs Normal file
View file

@ -0,0 +1,13 @@
use tracing::error;
pub struct Runner {}
impl Runner {
pub fn new() -> Self {
Self {}
}
pub async fn run(&self) {
error!("Runner not yet implemented");
}
}