summaryrefslogtreecommitdiff
path: root/makima/src/daemon/api
diff options
context:
space:
mode:
Diffstat (limited to 'makima/src/daemon/api')
-rw-r--r--makima/src/daemon/api/directive.rs20
1 files changed, 20 insertions, 0 deletions
diff --git a/makima/src/daemon/api/directive.rs b/makima/src/daemon/api/directive.rs
index cd21692..5886766 100644
--- a/makima/src/daemon/api/directive.rs
+++ b/makima/src/daemon/api/directive.rs
@@ -134,4 +134,24 @@ impl ApiClient {
let req = UpdateGoalRequest { goal: goal.to_string() };
self.put(&format!("/api/v1/directives/{}/goal", directive_id), &req).await
}
+
+ /// Update directive metadata (PR URL, PR branch, etc.)
+ pub async fn directive_update(
+ &self,
+ directive_id: Uuid,
+ pr_url: Option<String>,
+ pr_branch: Option<String>,
+ ) -> Result<JsonValue, ApiError> {
+ let req = UpdateDirectiveMetadataRequest { pr_url, pr_branch };
+ self.put(&format!("/api/v1/directives/{}", directive_id), &req).await
+ }
+}
+
+#[derive(Serialize)]
+#[serde(rename_all = "camelCase")]
+pub struct UpdateDirectiveMetadataRequest {
+ #[serde(skip_serializing_if = "Option::is_none")]
+ pub pr_url: Option<String>,
+ #[serde(skip_serializing_if = "Option::is_none")]
+ pub pr_branch: Option<String>,
}