30 lines
579 B
Rust
Raw Normal View History

use serde::Serialize;
mod node;
pub use node::{EnvEntry, NodeDescriptor};
2026-02-02 07:19:22 +01:00
/// Top-level docker-compose descriptor built from an environment-specific
/// topology.
#[derive(Clone, Debug, Serialize)]
pub struct ComposeDescriptor {
2026-01-26 08:26:15 +01:00
nodes: Vec<NodeDescriptor>,
}
impl ComposeDescriptor {
#[must_use]
2026-02-02 07:19:22 +01:00
pub fn new(nodes: Vec<NodeDescriptor>) -> Self {
Self { nodes }
}
2026-02-02 07:19:22 +01:00
#[must_use]
2026-01-26 08:26:15 +01:00
pub fn nodes(&self) -> &[NodeDescriptor] {
&self.nodes
}
2026-02-02 07:19:22 +01:00
#[cfg(test)]
pub fn test_nodes(&self) -> &[NodeDescriptor] {
self.nodes()
}
}