Make fields public in RestartPolicy and ChildProcess structs; add default implementation for RestartPolicyType

This commit is contained in:
Noor 2024-12-16 15:58:55 +05:30
parent a565b35b48
commit 1bbe16a85e

@ -36,11 +36,11 @@ pub mod config {
#[derive(Clone, Serialize, Deserialize, prost::Message)]
pub struct RestartPolicy {
#[prost(uint32, tag = "1")]
max_retries: u32,
pub max_retries: u32,
#[prost(uint32, tag = "2")]
delay_seconds: u32,
pub delay_seconds: u32,
#[prost(oneof = "RestartPolicyType", tags = "3, 4")]
policy: Option<RestartPolicyType>,
pub policy: Option<RestartPolicyType>,
}
#[derive(Clone, Serialize, Deserialize, prost::Oneof)]
@ -51,6 +51,12 @@ pub mod config {
OnNonZeroExit(bool),
}
impl Default for RestartPolicyType {
fn default() -> Self {
RestartPolicyType::Always(true)
}
}
#[derive(Clone, Serialize, Deserialize, prost::Message)]
pub struct ChildProcess {
#[prost(string, tag = "1")]
@ -58,7 +64,7 @@ pub mod config {
#[prost(string, repeated, tag = "2")]
pub arguments: Vec<String>,
#[prost(message, optional, tag = "3")]
restart: Option<RestartPolicy>,
pub restart: Option<RestartPolicy>,
}
#[derive(Clone, Serialize, Deserialize, prost::Message)]