Skip to main content

openjd_model/template/
environment_template.rs

1// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2// Copyright by contributors to this project.
3// SPDX-License-Identifier: (Apache-2.0 OR MIT)
4
5//! Environment template per spec §1.2.
6
7use super::constrained_strings::ExtensionName;
8use super::environment::Environment;
9use super::parameters::JobParameterDefinition;
10use serde::Deserialize;
11
12/// §1.2 EnvironmentTemplate
13#[derive(Debug, Clone, Deserialize)]
14#[serde(rename_all = "camelCase", deny_unknown_fields)]
15pub struct EnvironmentTemplate {
16    pub specification_version: String,
17    pub extensions: Option<Vec<ExtensionName>>,
18    pub parameter_definitions: Option<Vec<JobParameterDefinition>>,
19    pub environment: Environment,
20}
21
22impl EnvironmentTemplate {
23    pub fn environment(&self) -> &Environment {
24        &self.environment
25    }
26}