...
This commit is contained in:
parent
bb39f3e3f2
commit
29a06d2bb4
@ -20,8 +20,14 @@ fi
|
|||||||
# Echo a success message
|
# Echo a success message
|
||||||
echo "Build successful!"
|
echo "Build successful!"
|
||||||
|
|
||||||
mkdir -p ~/hero/bin/
|
if [ "$EUID" -eq 0 ]; then
|
||||||
cp target/debug/herodo ~/hero/bin/herodo
|
echo "Running as root, copying to /usr/local/bin/"
|
||||||
|
cp target/debug/herodo /usr/local/bin/herodo
|
||||||
|
else
|
||||||
|
echo "Running as non-root user, copying to ~/hero/bin/"
|
||||||
|
mkdir -p ~/hero/bin/
|
||||||
|
cp target/debug/herodo ~/hero/bin/herodo
|
||||||
|
fi
|
||||||
|
|
||||||
# Check if a script name was provided
|
# Check if a script name was provided
|
||||||
if [ $# -eq 1 ]; then
|
if [ $# -eq 1 ]; then
|
||||||
|
@ -3,23 +3,23 @@
|
|||||||
|
|
||||||
fn nerdctl_download(){
|
fn nerdctl_download(){
|
||||||
let name="nerdctl";
|
let name="nerdctl";
|
||||||
let url="https://github.com/containerd/nerdctl/releases/download/v2.0.4/nerdctl-2.0.4-linux-amd64.tar.gz";
|
let url="https://github.com/containerd/nerdctl/releases/download/v2.1.2/nerdctl-2.1.2-linux-amd64.tar.gz";
|
||||||
download(url,`/tmp/${name}`,20000);
|
download(url,`/tmp/${name}`,10000);
|
||||||
copy(`/tmp/${name}/*`,"/root/hero/bin/");
|
copy(`/tmp/${name}/*`,"/root/hero/bin/");
|
||||||
delete(`/tmp/${name}`);
|
delete(`/tmp/${name}`);
|
||||||
|
|
||||||
let name="containerd";
|
let name="containerd";
|
||||||
let url="https://github.com/containerd/containerd/releases/download/v2.0.4/containerd-2.0.4-linux-amd64.tar.gz";
|
let url="https://github.com/containerd/containerd/releases/download/v2.1.2/containerd-2.1.2-linux-amd64.tar.gz";
|
||||||
download(url,`/tmp/${name}`,20000);
|
download(url,`/tmp/${name}`,20000);
|
||||||
copy(`/tmp/${name}/bin/*`,"/root/hero/bin/");
|
copy(`/tmp/${name}/bin/*`,"/root/hero/bin/");
|
||||||
delete(`/tmp/${name}`);
|
delete(`/tmp/${name}`);
|
||||||
|
|
||||||
run("apt-get -y install buildah runc");
|
run("apt-get -y install buildah runc");
|
||||||
|
|
||||||
let url="https://github.com/threefoldtech/rfs/releases/download/v2.0.6/rfs";
|
// let url="https://github.com/threefoldtech/rfs/releases/download/v2.0.6/rfs";
|
||||||
download_file(url,`/tmp/rfs`,10000);
|
// download_file(url,`/tmp/rfs`,10000);
|
||||||
chmod_exec("/tmp/rfs");
|
// chmod_exec("/tmp/rfs");
|
||||||
mv(`/tmp/rfs`,"/root/hero/bin/");
|
// mv(`/tmp/rfs`,"/root/hero/bin/");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,31 +3,22 @@
|
|||||||
//! This is the main entry point for the herodo binary.
|
//! This is the main entry point for the herodo binary.
|
||||||
//! It parses command line arguments and calls into the implementation in the cmd module.
|
//! It parses command line arguments and calls into the implementation in the cmd module.
|
||||||
|
|
||||||
use clap::{App, Arg};
|
|
||||||
use env_logger;
|
use env_logger;
|
||||||
|
use std::env;
|
||||||
|
use std::process;
|
||||||
|
|
||||||
fn main() -> Result<(), Box<dyn std::error::Error>> {
|
fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||||
// Initialize the logger
|
// Initialize the logger
|
||||||
env_logger::init();
|
env_logger::init();
|
||||||
|
|
||||||
// Parse command line arguments
|
let args: Vec<String> = env::args().collect();
|
||||||
let matches = App::new("herodo")
|
|
||||||
.version("0.1.0")
|
|
||||||
.author("SAL Team")
|
|
||||||
.about("Executes Rhai scripts for SAL")
|
|
||||||
.arg(
|
|
||||||
Arg::with_name("path")
|
|
||||||
.short("p")
|
|
||||||
.long("path")
|
|
||||||
.value_name("PATH")
|
|
||||||
.help("Path to a Rhai script file or directory containing Rhai scripts")
|
|
||||||
.required(true)
|
|
||||||
.takes_value(true),
|
|
||||||
)
|
|
||||||
.get_matches();
|
|
||||||
|
|
||||||
// Get the script path from arguments
|
if args.len() != 2 {
|
||||||
let script_path = matches.value_of("path").unwrap();
|
eprintln!("Usage: {} <script_path>", args[0]);
|
||||||
|
process::exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
let script_path = &args[1];
|
||||||
|
|
||||||
// Call the run function from the cmd module
|
// Call the run function from the cmd module
|
||||||
sal::cmd::herodo::run(script_path)
|
sal::cmd::herodo::run(script_path)
|
||||||
|
Loading…
Reference in New Issue
Block a user