add docker container creation (add broken since sqlite change)
This commit is contained in:
@ -4,8 +4,7 @@ use crate::status::ServerStatus;
|
||||
use crate::utils::{ validate_name, extract_archive, move_all_elements};
|
||||
|
||||
use diesel::prelude::*;
|
||||
use crate::{DbPool, models};
|
||||
use crate::schema;
|
||||
use crate::{DbPool, models}; use crate::schema;
|
||||
|
||||
use tokio::{fs::{File, create_dir}, io::AsyncWriteExt};
|
||||
|
||||
@ -27,7 +26,7 @@ pub fn create_subcommand() -> Command {
|
||||
|
||||
|
||||
pub async fn subcommand(arg: &ArgMatches, pool: DbPool) -> Result<(), String>{
|
||||
// use schema::servers::dsl::*;
|
||||
use schema::servers::dsl::*;
|
||||
let config = crate::Config::load();
|
||||
let server_name = arg.get_one::<String>("NAME").unwrap();
|
||||
|
||||
@ -65,6 +64,7 @@ pub async fn subcommand(arg: &ArgMatches, pool: DbPool) -> Result<(), String>{
|
||||
redirect_ip: None
|
||||
};
|
||||
|
||||
// insert_into(schema::servers::dsl::servers).values(&new_server).execute(conn).map_err(|e| format!("Failed to insert in db, error : {:?}", e))?;
|
||||
// diesel::insert_into(schema::servers::dsl::servers).values(&new_server).execute(conn).map_err(|e| format!("Failed to insert in db, error : {:?}", e))?;
|
||||
// TODO: fix weird error
|
||||
Ok(())
|
||||
}
|
||||
|
||||
@ -96,5 +96,3 @@ pub fn update_env(arguments: &ArgMatches, prev_env: String) -> String{
|
||||
settings_to_env(merged)
|
||||
|
||||
}
|
||||
// START COMMAND :
|
||||
// docker run --rm --env-file ./env -u 1000:100 -it --volume $PWD/server:/data itzg/minecraft-server
|
||||
|
||||
@ -2,6 +2,7 @@ pub mod add;
|
||||
pub mod edit;
|
||||
pub mod remove;
|
||||
pub mod ls;
|
||||
pub mod start;
|
||||
|
||||
pub mod env_settings;
|
||||
|
||||
|
||||
20
src/cli/start.rs
Normal file
20
src/cli/start.rs
Normal file
@ -0,0 +1,20 @@
|
||||
use bollard::Docker;
|
||||
use clap::Arg;
|
||||
use clap::{Command, ArgMatches};
|
||||
|
||||
use crate::DbPool;
|
||||
|
||||
use crate::dockermgr;
|
||||
|
||||
pub fn create_subcommand() -> Command {
|
||||
Command::new("start")
|
||||
.about("manually start a server (and set last login datetime to now)")
|
||||
.arg(Arg::new("NAME").required(true))
|
||||
}
|
||||
|
||||
pub async fn subcommand(arguments: &ArgMatches, pool: &DbPool, docker: Docker) -> Result<(), String> {
|
||||
let server_name = arguments.get_one::<String>("NAME").unwrap();
|
||||
dockermgr::start_server(&docker, pool, server_name).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
Reference in New Issue
Block a user