Radish alpha
r
Radicle CI broker
Radicle
Git (anonymous pull)
Log in to clone via SSH
fix: handle all cases for RunResult
Lars Wirzenius committed 2 years ago
commit 0014c6a4ddb6a74a12cd1402aa8954dd430f5f1c
parent e2f352d68e54495077658a0dd610845e2e28c381
2 files changed +4 -6
modified src/bin/ci-broker.rs
@@ -48,6 +48,7 @@ fn main() -> anyhow::Result<()> {
                        Some(RunResult::Error(e)) => format!("ERROR: {}", e),
                        Some(RunResult::Failure) => "FAILED".into(),
                        Some(RunResult::Success) => "OK".into(),
+
                        Some(x) => format!("UNKNOWN: {:#?}", x),
                    };
                    println!("Run CI run #{}: {}, {} -> {}", counter, rid, oid, ret,);
                }
modified src/msg.rs
@@ -43,18 +43,16 @@ impl fmt::Display for RunId {
/// The result of a CI run.
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(deny_unknown_fields)]
+
#[serde(rename_all = "snake_case")]
#[non_exhaustive]
pub enum RunResult {
    /// CI run was successful.
-
    #[serde(rename = "success")]
    Success,

    /// CI run failed.
-
    #[serde(rename = "failure")]
    Failure,

    /// CI run has failed in a way external to the software under test.
-
    #[serde(rename = "error")]
    Error(String),
}

@@ -71,10 +69,10 @@ impl fmt::Display for RunResult {
/// A request message sent by the broker to its adapter child process.
#[derive(Debug, Serialize, Deserialize)]
#[serde(tag = "request")]
+
#[serde(rename_all = "snake_case")]
#[non_exhaustive]
pub enum Request {
    /// Trigger a run.
-
    #[serde(rename = "trigger")]
    Trigger { repo: Id, commit: Oid },
}

@@ -110,14 +108,13 @@ impl Request {
/// A response message from the adapter child process to the broker.
#[derive(Debug, Serialize, Deserialize)]
#[serde(deny_unknown_fields)]
+
#[serde(rename_all = "snake_case")]
#[serde(tag = "response")]
pub enum Response {
    /// A CI run has been triggered.
-
    #[serde(rename = "triggered")]
    Triggered { run_id: RunId },

    /// A CI run has finished.
-
    #[serde(rename = "finished")]
    Finished { result: RunResult },
}