cuddle-rust-service-plan/ci/src/main.rs
kjuulh 6948b19b79
All checks were successful
continuous-integration/drone/push Build is passing
feat: update image
Signed-off-by: kjuulh <contact@kjuulh.io>
2024-02-03 20:26:52 +01:00

44 lines
1.1 KiB
Rust

use std::sync::Arc;
use cuddle_ci::rust_service::architecture::{Architecture, Os};
use cuddle_ci::rust_service::{extensions::*, RustService};
use cuddle_ci::CuddleCI;
use tokio::sync::Mutex;
#[tokio::main]
async fn main() -> eyre::Result<()> {
let client = dagger_sdk::connect().await?;
let service = RustService::from(client)
.with_arch(Architecture::Amd64)
.with_os(Os::Linux)
.with_apt(&[
"clang",
"libssl-dev",
"libz-dev",
"libgit2-dev",
"git",
"openssh-client",
])
.with_apt_release(&["git", "openssh-client"])
.with_docker_cli()
.with_cuddle_cli()
.with_kubectl()
.with_apt_ca_certificates()
.with_crates(["ci", "crates/*"])
.with_mold("2.3.3")
.with_bin_name("cuddle-rust-service-plan")
.with_deployment(false)
.to_owned();
let service = Arc::new(Mutex::new(service));
CuddleCI::default()
.with_pull_request(service.clone())
.with_main(service.clone())
.execute(std::env::args())
.await?;
Ok(())
}