droneconf/src/model.rs
Timo Ley 15dc36f337
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
feat: woodpecker support (hopefully)
2023-07-19 21:51:47 +02:00

28 lines
577 B
Rust

use reqwest::Client;
use serde::{Deserialize, Serialize};
#[derive(Deserialize)]
pub struct Request {
pub repo: Repository,
}
#[derive(Deserialize)]
pub struct Repository {
pub config_path: Option<String>,
pub config_file: Option<String>,
pub config: Option<String>,
}
#[derive(Serialize)]
pub struct Response {
pub data: String,
}
#[derive(Clone)]
pub struct APIConfig(pub Client);
impl Request {
pub fn config(&self) -> Option<String> {
self.repo.config_path.clone().or(self.repo.config_file.clone()).or(self.repo.config.clone())
}
}