feat: fix errors
All checks were successful
continuous-integration/drone/push Build is passing

Signed-off-by: kjuulh <contact@kjuulh.io>
This commit is contained in:
Kasper Juul Hermansen 2024-11-16 16:09:07 +01:00
parent 66efb97120
commit c8f56874d0
No known key found for this signature in database
10 changed files with 25 additions and 46 deletions

View File

@ -10,9 +10,7 @@ pub struct CuddlePlease {
impl CuddlePlease { impl CuddlePlease {
pub fn new(client: dagger_sdk::Query) -> Self { pub fn new(client: dagger_sdk::Query) -> Self {
Self { Self { client }
client: client.pipeline("cuddle-please"),
}
} }
} }

View File

@ -18,7 +18,7 @@ pub struct DroneTemplater {
impl DroneTemplater { impl DroneTemplater {
pub fn new(client: dagger_sdk::Query, template: impl Into<PathBuf>) -> Self { pub fn new(client: dagger_sdk::Query, template: impl Into<PathBuf>) -> Self {
Self { Self {
client: client.pipeline("drone-templater"), client,
template: template.into(), template: template.into(),
variables: BTreeMap::default(), variables: BTreeMap::default(),
} }
@ -56,7 +56,7 @@ impl MainAction for DroneTemplater {
let template_name = self.template.display().to_string(); let template_name = self.template.display().to_string();
let mut cmd = vec!["drone-templater", "upload", "--template", &template_name] let cmd = vec!["drone-templater", "upload", "--template", &template_name]
.into_iter() .into_iter()
.map(|v| v.to_string()) .map(|v| v.to_string())
.chain( .chain(

View File

@ -23,7 +23,7 @@ pub struct RustLib {
impl RustLib { impl RustLib {
pub fn new(value: dagger_sdk::Query) -> Self { pub fn new(value: dagger_sdk::Query) -> Self {
Self { Self {
client: value.pipeline("rust-lib"), client: value,
source: None, source: None,
crates: Vec::new(), crates: Vec::new(),
arch: None, arch: None,

View File

@ -43,7 +43,7 @@ pub struct RustService {
impl From<dagger_sdk::Query> for RustService { impl From<dagger_sdk::Query> for RustService {
fn from(value: dagger_sdk::Query) -> Self { fn from(value: dagger_sdk::Query) -> Self {
Self { Self {
client: value.pipeline("rust-service"), client: value,
base_image: None, base_image: None,
final_image: None, final_image: None,
stages: Vec::new(), stages: Vec::new(),
@ -168,8 +168,8 @@ impl RustService {
} }
pub async fn build_base(&self) -> eyre::Result<Container> { pub async fn build_base(&self) -> eyre::Result<Container> {
let client = self.client.pipeline("build-base"); let client = self.client.clone();
let rust_src = RustSource::new(client.pipeline("load-source")); let rust_src = RustSource::new(client.clone());
let (src, dep_src) = rust_src let (src, dep_src) = rust_src
.get_rust_src(Some(&self.get_src()), self.crates.clone()) .get_rust_src(Some(&self.get_src()), self.crates.clone())
@ -245,8 +245,8 @@ impl RustService {
} }
pub async fn build_release(&self) -> eyre::Result<Container> { pub async fn build_release(&self) -> eyre::Result<Container> {
let base = self.build_base().await?.pipeline("build-release"); let base = self.build_base().await?;
let client = self.client.pipeline("build-release"); let client = self.client.clone();
let before_build = self let before_build = self
.stages .stages
@ -305,7 +305,7 @@ impl RustService {
} }
pub async fn build_test(&self) -> eyre::Result<()> { pub async fn build_test(&self) -> eyre::Result<()> {
let base = self.build_base().await?.pipeline("build-test"); let base = self.build_base().await?;
let before_build = self let before_build = self
.stages .stages
@ -330,7 +330,7 @@ impl PullRequestAction for RustService {
async fn execute_pull_request(&self, ctx: &mut Context) -> eyre::Result<()> { async fn execute_pull_request(&self, ctx: &mut Context) -> eyre::Result<()> {
self.build_test().await?; self.build_test().await?;
let container = self.build_release().await?.pipeline("pr"); let container = self.build_release().await?;
let timestamp = std::time::SystemTime::now() let timestamp = std::time::SystemTime::now()
.duration_since(std::time::UNIX_EPOCH) .duration_since(std::time::UNIX_EPOCH)
.unwrap() .unwrap()
@ -372,7 +372,7 @@ impl RustServiceContext for Context {
#[async_trait] #[async_trait]
impl MainAction for RustService { impl MainAction for RustService {
async fn execute_main(&self, ctx: &mut Context) -> eyre::Result<()> { async fn execute_main(&self, ctx: &mut Context) -> eyre::Result<()> {
let container = self.build_release().await?.pipeline("main"); let container = self.build_release().await?;
let timestamp = std::time::SystemTime::now() let timestamp = std::time::SystemTime::now()
.duration_since(std::time::UNIX_EPOCH) .duration_since(std::time::UNIX_EPOCH)
.unwrap() .unwrap()
@ -488,14 +488,7 @@ pub mod extensions {
#[cfg(test)] #[cfg(test)]
mod test { mod test {
use crate::rust_service::{
apt::AptExt,
architecture::{Architecture, Os},
cargo_binstall::CargoBInstallExt,
clap_sanity_test::ClapSanityTestExt,
mold::MoldActionExt,
RustService,
};
#[tokio::test] #[tokio::test]
#[cfg(any(feature = "dagger", feature = "integration"))] #[cfg(any(feature = "dagger", feature = "integration"))]

View File

@ -1,7 +1,7 @@
use std::sync::Arc; use std::sync::Arc;
use async_trait::async_trait; use async_trait::async_trait;
use dagger_sdk::{Container, ImageMediaTypes}; use dagger_sdk::Container;
use crate::dagger_middleware::DaggerMiddleware; use crate::dagger_middleware::DaggerMiddleware;
@ -35,7 +35,8 @@ impl DaggerMiddleware for DaggerBin {
install_script, install_script,
dagger_sdk::ContainerWithFileOpts { dagger_sdk::ContainerWithFileOpts {
owner: None, owner: None,
permissions: Some(0755), permissions: Some(0o755),
expand: None,
}, },
) )
.with_env_variable("DAGGER_VERSION", &self.version) .with_env_variable("DAGGER_VERSION", &self.version)
@ -48,7 +49,8 @@ impl DaggerMiddleware for DaggerBin {
dagger_bin, dagger_bin,
dagger_sdk::ContainerWithFileOpts { dagger_sdk::ContainerWithFileOpts {
owner: None, owner: None,
permissions: Some(0755), permissions: Some(0o755),
expand: None,
}, },
) )
.with_exec(vec!["/usr/local/bin/dagger", "version"])) .with_exec(vec!["/usr/local/bin/dagger", "version"]))

View File

@ -26,21 +26,17 @@ impl DaggerMiddleware for SshAgent {
let socket = self.client.host().unix_socket(&sock_var); let socket = self.client.host().unix_socket(&sock_var);
let home = container.env_variable("HOME").await.unwrap_or("".into());
let c = container let c = container
.with_new_file_opts( .with_new_file_opts(
".ssh/config".to_string(), ".ssh/config".to_string(),
ContainerWithNewFileOptsBuilder::default()
.contents(
r#" r#"
Host * Host *
UserKnownHostsFile=/dev/null UserKnownHostsFile=/dev/null
StrictHostKeyChecking no StrictHostKeyChecking no
"#, "#,
) ContainerWithNewFileOptsBuilder::default()
.permissions(0700_isize) .permissions(0o700_isize)
.build()?, .build()?,
) )
.with_unix_socket(&sock_var, socket) .with_unix_socket(&sock_var, socket)

View File

@ -194,10 +194,7 @@ impl DaggerCuddlePlease {
}, },
) )
.branch("main") .branch("main")
.tree_opts(dagger_sdk::GitRefTreeOpts { .tree()
ssh_auth_socket: Some(socket.id().await?),
ssh_known_hosts: None,
})
} else { } else {
self.client self.client
.git_opts( .git_opts(
@ -288,17 +285,16 @@ impl DaggerCuddlePlease {
.with_env_variable("SSH_AUTH_SOCK", "/tmp/ssh.sock") .with_env_variable("SSH_AUTH_SOCK", "/tmp/ssh.sock")
.with_new_file_opts( .with_new_file_opts(
"/root/.ssh/config", "/root/.ssh/config",
dagger_sdk::ContainerWithNewFileOpts {
contents: Some(
" "
Host * Host *
User git User git
StrictHostKeyChecking no StrictHostKeyChecking no
UserKnownHostsFile /dev/null UserKnownHostsFile /dev/null
", ",
), dagger_sdk::ContainerWithNewFileOpts {
owner: Some("root"), owner: Some("root"),
permissions: Some(700), permissions: Some(700),
expand: None,
}, },
); );

View File

@ -203,7 +203,6 @@ impl RustBuild {
let base_debian = self let base_debian = self
.client .client
.container_opts(dagger_sdk::QueryContainerOpts { .container_opts(dagger_sdk::QueryContainerOpts {
id: None,
platform: Some(target.into_platform()), platform: Some(target.into_platform()),
}) })
.from(image); .from(image);
@ -234,7 +233,6 @@ impl RustBuild {
let base_debian = self let base_debian = self
.client .client
.container_opts(dagger_sdk::QueryContainerOpts { .container_opts(dagger_sdk::QueryContainerOpts {
id: None,
platform: Some(target.into_platform()), platform: Some(target.into_platform()),
}) })
.from(image); .from(image);

View File

@ -200,7 +200,6 @@ impl HtmxBuild {
let base_debian = self let base_debian = self
.client .client
.container_opts(dagger_sdk::QueryContainerOpts { .container_opts(dagger_sdk::QueryContainerOpts {
id: None,
platform: Some(target.into_platform()), platform: Some(target.into_platform()),
}) })
.from(image); .from(image);
@ -250,7 +249,6 @@ impl HtmxBuild {
let base_debian = self let base_debian = self
.client .client
.container_opts(dagger_sdk::QueryContainerOpts { .container_opts(dagger_sdk::QueryContainerOpts {
id: None,
platform: Some(target.into_platform()), platform: Some(target.into_platform()),
}) })
.from(image); .from(image);

View File

@ -187,7 +187,6 @@ impl LeptosBuild {
let base_debian = self let base_debian = self
.client .client
.container_opts(dagger_sdk::QueryContainerOpts { .container_opts(dagger_sdk::QueryContainerOpts {
id: None,
platform: Some(target.into_platform()), platform: Some(target.into_platform()),
}) })
.from(image); .from(image);
@ -237,7 +236,6 @@ impl LeptosBuild {
let base_debian = self let base_debian = self
.client .client
.container_opts(dagger_sdk::QueryContainerOpts { .container_opts(dagger_sdk::QueryContainerOpts {
id: None,
platform: Some(target.into_platform()), platform: Some(target.into_platform()),
}) })
.from(image); .from(image);