39 lines
1.0 KiB
Rust
39 lines
1.0 KiB
Rust
|
use async_trait::async_trait;
|
||
|
use dagger_cuddle_please::{
|
||
|
models::CuddlePleaseSrcArgs, DaggerCuddlePlease, DaggerCuddlePleaseAction,
|
||
|
};
|
||
|
|
||
|
use crate::{MainAction, PullRequestAction};
|
||
|
|
||
|
pub struct CuddlePlease {
|
||
|
client: dagger_sdk::Query,
|
||
|
}
|
||
|
|
||
|
impl CuddlePlease {
|
||
|
pub fn new(client: dagger_sdk::Query) -> Self {
|
||
|
Self { client }
|
||
|
}
|
||
|
}
|
||
|
|
||
|
#[async_trait]
|
||
|
impl MainAction for CuddlePlease {
|
||
|
async fn execute_main(&self) -> eyre::Result<()> {
|
||
|
let client = self.client.clone();
|
||
|
|
||
|
let action = DaggerCuddlePlease::new(client);
|
||
|
|
||
|
action
|
||
|
.cuddle_please_src(&CuddlePleaseSrcArgs {
|
||
|
cuddle_image: "kasperhermansen/cuddle-please:main-1691504183".into(),
|
||
|
server: dagger_cuddle_please::models::SrcServer::Gitea {
|
||
|
token: std::env::var("CUDDLE_PLEASE_TOKEN")
|
||
|
.expect("CUDDLE_PLEASE_TOKEN to be present"),
|
||
|
},
|
||
|
log_level: Some(dagger_cuddle_please::models::LogLevel::Debug),
|
||
|
})
|
||
|
.await?;
|
||
|
|
||
|
Ok(())
|
||
|
}
|
||
|
}
|