avalanche-ops 0.3.0-beta.1

avalanche-ops spec
Documentation
use std::io::{self, Error, ErrorKind};

use rust_embed::RustEmbed;

pub fn asg_ubuntu_yaml() -> io::Result<String> {
    #[derive(RustEmbed)]
    #[folder = "src/aws/cfn-templates/"]
    #[prefix = "src/aws/cfn-templates/"]
    struct Asset;
    let f = Asset::get("src/aws/cfn-templates/asg_ubuntu.yaml").unwrap();
    let s = std::str::from_utf8(f.data.as_ref()).map_err(|e| {
        Error::new(
            ErrorKind::InvalidInput,
            format!("failed to convert embed file to str {}", e),
        )
    })?;
    Ok(s.to_string())
}

pub fn ec2_instance_role_yaml() -> io::Result<String> {
    #[derive(RustEmbed)]
    #[folder = "src/aws/cfn-templates/"]
    #[prefix = "src/aws/cfn-templates/"]
    struct Asset;
    let f = Asset::get("src/aws/cfn-templates/ec2_instance_role.yaml").unwrap();
    let s = std::str::from_utf8(f.data.as_ref()).map_err(|e| {
        Error::new(
            ErrorKind::InvalidInput,
            format!("failed to convert embed file to str {}", e),
        )
    })?;
    Ok(s.to_string())
}

pub fn ssm_install_subnet_chain_yaml() -> io::Result<String> {
    #[derive(RustEmbed)]
    #[folder = "src/aws/cfn-templates/"]
    #[prefix = "src/aws/cfn-templates/"]
    struct Asset;
    let f = Asset::get("src/aws/cfn-templates/ssm_install_subnet_chain.yaml").unwrap();
    let s = std::str::from_utf8(f.data.as_ref()).map_err(|e| {
        Error::new(
            ErrorKind::InvalidInput,
            format!("failed to convert embed file to str {}", e),
        )
    })?;
    Ok(s.to_string())
}

pub fn vpc_yaml() -> io::Result<String> {
    #[derive(RustEmbed)]
    #[folder = "src/aws/cfn-templates/"]
    #[prefix = "src/aws/cfn-templates/"]
    struct Asset;
    let f = Asset::get("src/aws/cfn-templates/vpc.yaml").unwrap();
    let s = std::str::from_utf8(f.data.as_ref()).map_err(|e| {
        Error::new(
            ErrorKind::InvalidInput,
            format!("failed to convert embed file to str {}", e),
        )
    })?;
    Ok(s.to_string())
}