Skip to main content

systemprompt_models/profile/
secrets.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize, schemars::JsonSchema)]
4#[serde(rename_all = "lowercase")]
5pub enum SecretsSource {
6    File,
7    Env,
8}
9
10#[derive(Debug, Clone, Serialize, Deserialize, schemars::JsonSchema)]
11#[serde(deny_unknown_fields)]
12pub struct SecretsConfig {
13    pub secrets_path: String,
14
15    #[serde(default)]
16    pub validation: SecretsValidationMode,
17
18    pub source: SecretsSource,
19}
20
21#[derive(
22    Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize, Default, schemars::JsonSchema,
23)]
24#[serde(rename_all = "lowercase")]
25pub enum SecretsValidationMode {
26    Strict,
27
28    #[default]
29    Warn,
30
31    Skip,
32}