fly_sdk/machines/
process.rs1use serde::{Deserialize, Serialize};
2use std::collections::HashMap;
3
4#[derive(Serialize, Deserialize, Debug)]
5pub struct ProcessConfig {
6 pub cmd: Option<Vec<String>>,
7 pub entrypoint: Option<Vec<String>>,
8 pub env: Option<HashMap<String, String>>,
9 pub env_from: Option<Vec<EnvVarConfig>>,
10 pub exec: Option<Vec<String>>,
11 pub ignore_app_secrets: Option<bool>,
12 pub secrets: Option<Vec<SecretConfig>>,
13 pub user: Option<String>,
14}
15
16#[derive(Serialize, Deserialize, Debug)]
17pub struct EnvVarConfig {
18 pub env_var: String,
19 pub field_ref: FieldRefEnum,
20}
21
22#[derive(Serialize, Deserialize, Debug)]
23#[serde(rename_all = "lowercase")]
24pub enum FieldRefEnum {
25 Id,
26 Version,
27 AppName,
28 PrivateIp,
29 Region,
30 Image,
31}
32
33#[derive(Serialize, Deserialize, Debug)]
34pub struct SecretConfig {
35 pub env_var: String,
36 pub name: Option<String>,
37}
38
39#[derive(Serialize, Deserialize, Debug)]
40pub struct CommandResponse {
41 pub exit_code: Option<i32>,
42 pub exit_signal: Option<i32>,
43 pub stderr: Option<String>,
44 pub stdout: Option<String>,
45}
46
47#[derive(Serialize, Deserialize, Debug)]
48pub struct ProcessResponse {
49 pub command: Option<String>,
50 pub cpu: Option<u32>,
51 pub directory: Option<String>,
52 pub listen_sockets: Option<Vec<ListenSocket>>,
53 pub pid: Option<u32>,
54 pub rss: Option<u64>,
55 pub rtime: Option<u64>,
56 pub stime: Option<u64>,
57}
58
59#[derive(Serialize, Deserialize, Debug)]
60pub struct ListenSocket {
61 pub address: Option<String>,
62 pub proto: Option<String>,
63}