add dynlay
This commit is contained in:
@ -40,10 +40,31 @@ enum Command {
|
||||
/// Path where the logs are stored
|
||||
#[arg(long, short = 'p', default_value = "/var/log", env = "DKL_LOG_PATH")]
|
||||
log_path: String,
|
||||
/// Name of the log set to operate on.
|
||||
log_name: String,
|
||||
#[command(subcommand)]
|
||||
op: LogOp,
|
||||
},
|
||||
Dynlay {
|
||||
layer: String,
|
||||
version: String,
|
||||
#[arg(
|
||||
long,
|
||||
short = 'u',
|
||||
default_value = "https://dkl.novit.io/dist/layers",
|
||||
env = "DKL_DYNLAY_URL"
|
||||
)]
|
||||
url_prefix: String,
|
||||
#[arg(
|
||||
long,
|
||||
short = 'd',
|
||||
default_value = "/opt/dynlay",
|
||||
env = "DKL_DYNLAY_DIR"
|
||||
)]
|
||||
layers_dir: String,
|
||||
#[arg(long, default_value = "/")]
|
||||
chroot: std::path::PathBuf,
|
||||
},
|
||||
}
|
||||
|
||||
#[tokio::main(flavor = "current_thread")]
|
||||
@ -90,6 +111,21 @@ async fn main() -> Result<()> {
|
||||
log_name,
|
||||
op,
|
||||
} => op.run(&log_path, &log_name).await,
|
||||
C::Dynlay {
|
||||
ref layer,
|
||||
ref version,
|
||||
ref url_prefix,
|
||||
ref layers_dir,
|
||||
chroot,
|
||||
} => {
|
||||
dkl::dynlay::Dynlay {
|
||||
url_prefix,
|
||||
layers_dir,
|
||||
chroot,
|
||||
}
|
||||
.install(layer, version)
|
||||
.await
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user