upstream_rs/services/builder/
mod.rs1pub mod determine;
2pub mod downloader;
3pub mod profiles;
4pub mod scripts;
5pub mod worker;
6
7use std::path::PathBuf;
8
9use crate::models::{
10 common::{enums::Provider, version::Version},
11 provider::Release,
12};
13
14#[derive(Debug, Clone, Copy, PartialEq, Eq)]
15pub enum BuildProfile {
16 Rust,
17 Dotnet,
18 Go,
19 Zig,
20 Cmake,
21}
22
23#[derive(Debug, Clone)]
24pub struct BuildRequest {
25 pub name: String,
26 pub repo_slug: String,
27 pub provider: Provider,
28 pub base_url: Option<String>,
29 pub version_tag: Option<String>,
30 pub branch: Option<String>,
31 pub requested_profile: Option<BuildProfile>,
32 pub script_action: scripts::BuildScriptAction,
33}
34
35#[derive(Debug, Clone)]
36pub struct BuildOutput {
37 pub artifact_path: PathBuf,
38 pub profile: BuildProfile,
39 pub release: Release,
40 pub version: Version,
41 pub branch: Option<String>,
42 pub commit: Option<String>,
43}