fly_sdk/machines/
system.rs

1use crate::machines::TimeoutConfig;
2use serde::{Deserialize, Serialize};
3
4#[derive(Serialize, Deserialize, Debug)]
5pub struct InitConfig {
6    pub cmd: Option<Vec<String>>,
7    pub entrypoint: Option<Vec<String>>,
8    pub exec: Option<Vec<String>>,
9    pub kernel_args: Option<Vec<String>>,
10    pub swap_size_mb: Option<u64>,
11    pub tty: Option<bool>,
12}
13
14#[derive(Serialize, Deserialize, Debug)]
15pub struct MountConfig {
16    pub add_size_gb: Option<u64>,
17    pub encrypted: Option<bool>,
18    pub extend_threshold_percent: Option<u64>,
19    pub name: Option<String>,
20    pub path: String,
21    pub size_gb: Option<u64>,
22    pub size_gb_limit: Option<u64>,
23    pub volume: String,
24}
25
26#[derive(Serialize, Deserialize, Debug)]
27pub struct FileConfig {
28    pub guest_path: String,
29    pub mode: Option<u32>,
30    pub raw_value: Option<String>,
31    pub secret_name: Option<String>,
32}
33
34#[derive(Serialize, Deserialize, Debug)]
35pub struct StaticConfig {
36    pub guest_path: String,
37    pub url_prefix: String,
38    pub index_document: Option<String>,
39    pub tigris_bucket: Option<String>,
40}
41
42#[derive(Serialize, Deserialize, Debug)]
43pub struct MetricsConfig {
44    pub port: u16,
45    pub path: String,
46}
47
48#[derive(Serialize, Deserialize, Debug)]
49pub struct StopConfig {
50    pub signal: Option<String>,
51    pub timeout: Option<TimeoutConfig>,
52}