k8s-maestro 0.1.0

A Kubernetes job orchestrator tool library
Documentation
#[derive(Debug, Clone, PartialEq, PartialOrd, Eq)]
pub enum ComputeResource {Cpu, Memory, Disk }

impl Ord for ComputeResource {
    fn cmp(&self, other: &Self) -> std::cmp::Ordering {
        match (self, other) {
            (ComputeResource::Cpu, ComputeResource::Cpu) => std::cmp::Ordering::Equal,
            (ComputeResource::Cpu, ComputeResource::Memory) => std::cmp::Ordering::Greater,
            (ComputeResource::Cpu, ComputeResource::Disk) => std::cmp::Ordering::Greater,
            (ComputeResource::Memory, ComputeResource::Cpu) => std::cmp::Ordering::Less,
            (ComputeResource::Memory, ComputeResource::Memory) => std::cmp::Ordering::Equal,
            (ComputeResource::Memory, ComputeResource::Disk) => std::cmp::Ordering::Greater,
            (ComputeResource::Disk, ComputeResource::Cpu) => std::cmp::Ordering::Less,
            (ComputeResource::Disk, ComputeResource::Memory) => std::cmp::Ordering::Less,
            (ComputeResource::Disk, ComputeResource::Disk) => std::cmp::Ordering::Equal,
        }
    }
}


impl ToString for ComputeResource {
    fn to_string(&self) -> String {
        let string_slice_name = 
            match *self {
                ComputeResource::Cpu => "cpu",
                ComputeResource::Memory => "memory",
                ComputeResource::Disk => "ephemeral-storage",
            };

        string_slice_name.to_string()
    }
}