Skip to main content

manta_shared/shared/params/
sat_file.rs

1//! Parameters for `POST /sat-file`.
2
3/// Parameters for applying a SAT file.
4pub struct ApplySatFileParams<'a> {
5  /// Raw YAML body of the SAT file. May contain Jinja2 syntax that
6  /// the service layer renders against `values` and
7  /// `values_file_content` before parsing.
8  pub sat_file_content: &'a str,
9  /// Inline JSON object of Jinja2 variable overrides. Merged on top
10  /// of `values_file_content` when both are supplied.
11  pub values: Option<&'a serde_json::Value>,
12  /// YAML body of a separate values file, supplying the lower-priority
13  /// half of the Jinja2 variable set.
14  pub values_file_content: Option<&'a str>,
15  /// Ansible verbosity level (0–4) passed to any CFS sessions
16  /// created by this SAT file.
17  pub ansible_verbosity: Option<u8>,
18  /// Extra arguments forwarded verbatim to `ansible-playbook`.
19  pub ansible_passthrough: Option<&'a str>,
20  /// When true, reboot affected nodes after the session templates
21  /// are applied.
22  pub reboot: bool,
23  /// When true, stream CFS session logs to the caller as part of
24  /// the response.
25  pub watch_logs: bool,
26  /// When true, prefix each streamed log line with its timestamp.
27  pub timestamps: bool,
28  /// Process only the `images` section of the SAT file; skip
29  /// session templates.
30  pub image_only: bool,
31  /// Process only the `session_templates` section; skip image
32  /// builds.
33  pub session_template_only: bool,
34  /// Overwrite existing CFS configurations or IMS images instead
35  /// of erroring on conflict.
36  pub overwrite: bool,
37  /// Render and validate the SAT file without creating any
38  /// resources.
39  pub dry_run: bool,
40}