summaryrefslogtreecommitdiff
path: root/src/plan.rs
blob: 16158e5491aa25e8131aae18d7ed9fcafd0c7d80 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use anyhow::Result;

use crate::ImageSpec;

#[derive(Debug, Clone, PartialEq, Eq)]
pub struct BuildPlan {
    spec: ImageSpec,
}

impl BuildPlan {
    pub fn compile(spec: ImageSpec) -> Result<Self> {
        spec.validate()?;
        Ok(Self { spec })
    }

    pub fn spec(&self) -> &ImageSpec {
        &self.spec
    }
}