Skip to content

Instantly share code, notes, and snippets.

@paulmalenke
Created August 22, 2014 20:56
Show Gist options
  • Save paulmalenke/9fd4e4c4b6fb076dd7aa to your computer and use it in GitHub Desktop.
Save paulmalenke/9fd4e4c4b6fb076dd7aa to your computer and use it in GitHub Desktop.
fn main() {
let args = std::os::args();
let env_var = "ZENDESK_SUBDOMAIN";
let subdomain = std::os::getenv(env_var);
if subdomain == None {
print_env_error(env_var)
} else {
get_opts(subdomain);
}
}
fn get_opts(sub: Option<String>) {
let args = std::os::args();
if args.len() == 1 {
std::io::Command::new("open").arg(format!("{}", sub)).spawn();
} else if args.len() == 2 {
println!("Hello 2");
} else {
println!("Hello else");
}
}
fn print_help() {
println!("\nNAME:");
println!("\n zd - zendesk launcher");
println!("\nOPTIONS:");
println!("\n h Print help");
println!("\nEXAMPLES:");
println!("\n zd 12345");
println!("\n Open ticket 12345");
println!("\n zd");
println!("\n Launch Zendesk");
}
fn print_env_error(env_var: &str) {
println!("{} is not defined as an environment variable.", env_var);
println!("Please add 'export {}=subdomain_here' to your .bashrc or .zshrc", env_var);
std::os::set_exit_status(1);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment