All checks were successful
CI / build (push) Successful in 7m18s
Multiple changes: - New contexts (schroot, unshare) - Cross-building quirks, with ephemeral contexts and repositories management - Contexts with parents, global context manager, better lifetime handling - Local building of binary packages - Pull: pulling dsc files by default - Many small bugfixes and changes Co-authored-by: Valentin Haudiquet <valentin.haudiquet@canonical.com> Co-committed-by: Valentin Haudiquet <valentin.haudiquet@canonical.com>
26 lines
624 B
Rust
26 lines
624 B
Rust
use std::error::Error;
|
|
use std::path::Path;
|
|
use std::process::Command;
|
|
|
|
pub fn build_source_package(cwd: Option<&Path>) -> Result<(), Box<dyn Error>> {
|
|
let cwd = cwd.unwrap_or_else(|| Path::new("."));
|
|
|
|
let status = Command::new("dpkg-buildpackage")
|
|
.current_dir(cwd)
|
|
.args(["-S", "-I", "-i", "-nc", "-d"])
|
|
.status()?;
|
|
|
|
if !status.success() {
|
|
return Err(format!("dpkg-buildpackage failed with status: {}", status).into());
|
|
}
|
|
|
|
Ok(())
|
|
}
|
|
|
|
#[cfg(test)]
|
|
mod tests {
|
|
|
|
// We are not testing the build part, as for now this is just a wrapper
|
|
// around dpkg-buildpackage.
|
|
}
|