feat: better env var support
parent
b023516162
commit
5a69234877
|
@ -1,2 +1,2 @@
|
||||||
[alias]
|
[alias]
|
||||||
runs = "run -- paper 1.19.4-545 --config data/config --backup data/backups --world data/worlds data/paper-1.19.4-545.jar"
|
runs = "run -- paper --config data/config --backup data/backups --world data/worlds --jar data/paper.jar"
|
||||||
|
|
|
@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||||
|
|
||||||
## [Unreleased](https://git.rustybever.be/Chewing_Bever/alex/src/branch/dev)
|
## [Unreleased](https://git.rustybever.be/Chewing_Bever/alex/src/branch/dev)
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
* Better env var support
|
||||||
|
|
||||||
## [0.1.0](https://git.rustybever.be/Chewing_Bever/alex/src/tag/0.1.0)
|
## [0.1.0](https://git.rustybever.be/Chewing_Bever/alex/src/tag/0.1.0)
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
50
src/main.rs
50
src/main.rs
|
@ -12,19 +12,41 @@ struct Cli {
|
||||||
/// Type of server
|
/// Type of server
|
||||||
type_: ServerType,
|
type_: ServerType,
|
||||||
/// Version string for the server, e.g. 1.19.4-545
|
/// Version string for the server, e.g. 1.19.4-545
|
||||||
|
#[arg(env = "ALEX_SERVER_VERSION")]
|
||||||
server_version: String,
|
server_version: String,
|
||||||
/// Server jar to execute
|
|
||||||
jar: PathBuf,
|
|
||||||
|
|
||||||
/// Directory where configs are stored, and where the server will run [default: .]
|
/// Server jar to execute
|
||||||
#[arg(long, value_name = "CONFIG_DIR", env = "ALEX_CONFIG_DIR")]
|
#[arg(
|
||||||
config: Option<PathBuf>,
|
long,
|
||||||
/// Directory where world files will be saved [default: ../worlds]
|
value_name = "JAR_PATH",
|
||||||
#[arg(long, value_name = "WORLD_DIR", env = "ALEX_WORLD_DIR")]
|
default_value = "server.jar",
|
||||||
world: Option<PathBuf>,
|
env = "ALEX_JAR"
|
||||||
/// Directory where backups will be stored [default: ../backups]
|
)]
|
||||||
#[arg(long, value_name = "BACKUP_DIR", env = "ALEX_WORLD_DIR")]
|
jar: PathBuf,
|
||||||
backup: Option<PathBuf>,
|
/// Directory where configs are stored, and where the server will run
|
||||||
|
#[arg(
|
||||||
|
long,
|
||||||
|
value_name = "CONFIG_DIR",
|
||||||
|
default_value = ".",
|
||||||
|
env = "ALEX_CONFIG_DIR"
|
||||||
|
)]
|
||||||
|
config: PathBuf,
|
||||||
|
/// Directory where world files will be saved
|
||||||
|
#[arg(
|
||||||
|
long,
|
||||||
|
value_name = "WORLD_DIR",
|
||||||
|
default_value = "../worlds",
|
||||||
|
env = "ALEX_WORLD_DIR"
|
||||||
|
)]
|
||||||
|
world: PathBuf,
|
||||||
|
/// Directory where backups will be stored
|
||||||
|
#[arg(
|
||||||
|
long,
|
||||||
|
value_name = "BACKUP_DIR",
|
||||||
|
default_value = "../backups",
|
||||||
|
env = "ALEX_WORLD_DIR"
|
||||||
|
)]
|
||||||
|
backup: PathBuf,
|
||||||
/// Java command to run the server jar with
|
/// Java command to run the server jar with
|
||||||
#[arg(long, value_name = "JAVA_CMD", default_value_t = String::from("java"), env = "ALEX_JAVA")]
|
#[arg(long, value_name = "JAVA_CMD", default_value_t = String::from("java"), env = "ALEX_JAVA")]
|
||||||
java: String,
|
java: String,
|
||||||
|
@ -63,9 +85,9 @@ fn main() {
|
||||||
let cmd = server::ServerCommand::new(cli.type_, &cli.server_version)
|
let cmd = server::ServerCommand::new(cli.type_, &cli.server_version)
|
||||||
.java(&cli.java)
|
.java(&cli.java)
|
||||||
.jar(cli.jar)
|
.jar(cli.jar)
|
||||||
.config(cli.config.unwrap_or(".".into()))
|
.config(cli.config)
|
||||||
.world(cli.world.unwrap_or("../worlds".into()))
|
.world(cli.world)
|
||||||
.backup(cli.backup.unwrap_or("../backups".into()))
|
.backup(cli.backup)
|
||||||
.xms(cli.xms)
|
.xms(cli.xms)
|
||||||
.xmx(cli.xmx)
|
.xmx(cli.xmx)
|
||||||
.max_backups(cli.max_backups);
|
.max_backups(cli.max_backups);
|
||||||
|
|
Loading…
Reference in New Issue