codex_exec_server/
environment_registry.rs1use serde::Deserialize;
2use serde::Serialize;
3
4use crate::NoiseChannelPublicKey;
5
6#[derive(Clone, Deserialize, Eq, PartialEq, Serialize)]
8pub struct EnvironmentRegistryRegistrationRequest {
9 pub security_profile: String,
10 pub executor_public_key: NoiseChannelPublicKey,
11}
12
13#[derive(Clone, Debug, Deserialize, Eq, PartialEq, Serialize)]
15pub struct EnvironmentRegistryRegistrationResponse {
16 pub environment_id: String,
17 pub url: String,
18 pub security_profile: String,
19 pub executor_registration_id: String,
20}
21
22#[derive(Clone, Deserialize, Eq, PartialEq, Serialize)]
24pub struct EnvironmentRegistryConnectRequest {
25 pub harness_public_key: NoiseChannelPublicKey,
26}
27
28#[derive(Clone, Deserialize, Eq, PartialEq, Serialize)]
30pub struct EnvironmentRegistryConnectResponse {
31 pub environment_id: String,
32 pub url: String,
33 pub security_profile: String,
34 pub executor_registration_id: String,
35 pub executor_public_key: NoiseChannelPublicKey,
36 pub harness_key_authorization: String,
37}
38
39impl std::fmt::Debug for EnvironmentRegistryConnectResponse {
40 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
41 f.debug_struct("EnvironmentRegistryConnectResponse")
42 .field("environment_id", &self.environment_id)
43 .field("url", &"<redacted>")
44 .field("security_profile", &self.security_profile)
45 .field("executor_registration_id", &self.executor_registration_id)
46 .field("executor_public_key", &self.executor_public_key)
47 .field("harness_key_authorization", &"<redacted>")
48 .finish()
49 }
50}
51
52#[derive(Clone, Deserialize, Eq, PartialEq, Serialize)]
54pub struct EnvironmentRegistryHarnessKeyValidationRequest {
55 pub executor_registration_id: String,
56 pub harness_public_key: NoiseChannelPublicKey,
57 pub harness_key_authorization: String,
58}
59
60#[derive(Clone, Debug, Deserialize, Eq, PartialEq, Serialize)]
62pub struct EnvironmentRegistryHarnessKeyValidationResponse {
63 pub valid: bool,
64}
65
66#[cfg(test)]
67#[path = "environment_registry_tests.rs"]
68mod tests;