release_tool/target/mod.rs
1mod docker_archive;
2mod maven_reactor;
3
4pub use docker_archive::DockerArchiveTarget;
5pub use maven_reactor::MavenReactorTarget;
6
7use crate::domain::{ArtifactManifest, ReleaseCandidate, TargetPlan};
8use anyhow::Result;
9use std::path::Path;
10
11pub trait TargetAdapter {
12 fn resolve(&self, release: &ReleaseCandidate) -> Result<TargetPlan>;
13 fn prepare(&self, plan: &TargetPlan, staging: &Path) -> Result<ArtifactManifest>;
14}