decthings_api/client/rpc/spawned/
response.rs1use crate::client::rpc::ExecutionLocation;
2use serde::Deserialize;
3
4#[cfg(feature = "events")]
5#[derive(Debug, Clone, Deserialize)]
6#[serde(rename_all = "snake_case", tag = "code")]
7pub enum SpawnedCommandTerminatedReason {
8 TerminatedOnRequest,
9 LauncherTerminated,
10 InactiveTimeout,
11 Unknown,
12 #[serde(rename_all = "camelCase")]
13 ProcessExit {
14 exit_code: Option<i32>,
15 signal: Option<String>,
16 oom: bool,
17 },
18}
19
20#[cfg(feature = "events")]
21#[derive(Debug, Clone, Deserialize)]
22#[serde(rename_all = "camelCase", tag = "event", content = "params")]
23pub enum SpawnedEvent {
24 #[serde(rename_all = "camelCase")]
25 Exit {
26 spawned_command_id: String,
27 reason: SpawnedCommandTerminatedReason,
28 },
29 #[serde(rename_all = "camelCase")]
30 Stdout {
31 spawned_command_id: String,
32 #[serde(skip_deserializing)]
33 data: bytes::Bytes,
34 },
35 #[serde(rename_all = "camelCase")]
36 Stderr {
37 spawned_command_id: String,
38 #[serde(skip_deserializing)]
39 data: bytes::Bytes,
40 },
41}
42
43#[derive(Debug, Clone, Deserialize)]
44#[serde(rename_all = "camelCase")]
45pub struct SpawnCommandResult {
46 pub spawned_command_id: String,
48}
49
50#[derive(Debug, Clone, Deserialize)]
51#[serde(rename_all = "snake_case", tag = "code")]
52pub enum SpawnCommandError {
53 PersistentLauncherNotFound,
54 QuotaExceeded,
55 ServerOverloaded,
56 BadCredentials,
57 TooManyRequests,
58 PaymentRequired,
59 Unknown,
60 #[serde(rename_all = "camelCase")]
61 InvalidParameter {
62 parameter_name: String,
63 reason: String,
64 },
65}
66
67#[derive(Debug, Clone, Deserialize)]
68#[serde(rename_all = "camelCase")]
69pub struct SpawnCommandForModelResult {
70 pub spawned_command_id: String,
72}
73
74#[derive(Debug, Clone, Deserialize)]
75#[serde(rename_all = "snake_case", tag = "code")]
76pub enum SpawnCommandForModelError {
77 ModelNotFound,
78 PersistentLauncherNotFound,
79 QuotaExceeded,
80 ServerOverloaded,
81 BadCredentials,
82 TooManyRequests,
83 PaymentRequired,
84 Unknown,
85 #[serde(rename_all = "camelCase")]
86 InvalidParameter {
87 parameter_name: String,
88 reason: String,
89 },
90}
91
92#[derive(Debug, Clone, Deserialize)]
93#[serde(rename_all = "camelCase")]
94pub struct TerminateSpawnedCommandResult {}
95
96#[derive(Debug, Clone, Deserialize)]
97#[serde(rename_all = "snake_case", tag = "code")]
98pub enum TerminateSpawnedCommandError {
99 SpawnedCommandNotFound,
100 BadCredentials,
101 TooManyRequests,
102 PaymentRequired,
103 Unknown,
104 #[serde(rename_all = "camelCase")]
105 InvalidParameter {
106 parameter_name: String,
107 reason: String,
108 },
109}
110
111#[derive(Debug, Clone, Deserialize)]
112#[serde(rename_all = "camelCase")]
113pub struct SpawnedCommand {
114 pub id: String,
115 pub started_at: i64,
116 pub model_id: Option<String>,
117 pub execution_location: ExecutionLocation,
118}
119
120#[derive(Debug, Clone, Deserialize)]
121#[serde(rename_all = "camelCase")]
122pub struct GetSpawnedCommandsResult {
123 pub spawned_commands: Vec<SpawnedCommand>,
124}
125
126#[derive(Debug, Clone, Deserialize)]
127#[serde(rename_all = "snake_case", tag = "code")]
128pub enum GetSpawnedCommandsError {
129 BadCredentials,
130 TooManyRequests,
131 PaymentRequired,
132 Unknown,
133 #[serde(rename_all = "camelCase")]
134 InvalidParameter {
135 parameter_name: String,
136 reason: String,
137 },
138}
139
140#[derive(Debug, Clone, Deserialize)]
141#[serde(rename_all = "camelCase")]
142pub struct WriteToSpawnedCommandResult {}
143
144#[derive(Debug, Clone, Deserialize)]
145#[serde(rename_all = "snake_case", tag = "code")]
146pub enum WriteToSpawnedCommandError {
147 SpawnedCommandNotFound,
148 BadCredentials,
149 TooManyRequests,
150 PaymentRequired,
151 Unknown,
152 #[serde(rename_all = "camelCase")]
153 InvalidParameter {
154 parameter_name: String,
155 reason: String,
156 },
157}
158
159#[cfg(feature = "events")]
160#[derive(Debug, Clone, Deserialize)]
161#[serde(rename_all = "camelCase")]
162pub struct SpawnedSubscribeToEventsResult {}
163
164#[cfg(feature = "events")]
165#[derive(Debug, Clone, Deserialize)]
166#[serde(rename_all = "snake_case", tag = "code")]
167pub enum SpawnedSubscribeToEventsError {
168 SpawnedCommandNotFound,
169 BadCredentials,
170 TooManyRequests,
171 PaymentRequired,
172 Unknown,
173 #[serde(rename_all = "camelCase")]
174 InvalidParameter {
175 parameter_name: String,
176 reason: String,
177 },
178}
179
180#[cfg(feature = "events")]
181#[derive(Debug, Clone, Deserialize)]
182#[serde(rename_all = "camelCase")]
183pub struct SpawnedUnsubscribeFromEventsResult {}
184
185#[cfg(feature = "events")]
186#[derive(Debug, Clone, Deserialize)]
187#[serde(rename_all = "snake_case", tag = "code")]
188pub enum SpawnedUnsubscribeFromEventsError {
189 NotSubscribed,
190 TooManyRequests,
191 Unknown,
192 #[serde(rename_all = "camelCase")]
193 InvalidParameter {
194 parameter_name: String,
195 reason: String,
196 },
197}