diff --git a/core-dockpack/src/cmd_processes/push/execute_push.rs b/core-dockpack/src/cmd_processes/push/execute_push.rs index 4e637b6..482b7f7 100644 --- a/core-dockpack/src/cmd_processes/push/execute_push.rs +++ b/core-dockpack/src/cmd_processes/push/execute_push.rs @@ -1,5 +1,6 @@ use crate::utils::cache; -use bollard::models::CreateImageInfo; +use bollard::models::{CreateImageInfo, PushImageInfo}; +use bollard::query_parameters::{CreateImageOptionsBuilder, PushImageOptionsBuilder}; use bollard::Docker; use futures_util::stream::TryStreamExt; use tokio::fs::File; @@ -32,18 +33,24 @@ pub async fn execute_docker_build(directory: &str, image: &str) -> Result<(), St let docker = Docker::connect_with_socket_defaults() .expect("Could no connect to docker socket. Is docker running?"); - let options = bollard::query_parameters::CreateImageOptionsBuilder::default() + let options = CreateImageOptionsBuilder::default() .from_src("-") // from_src must be "-" when sending the archive in the request body .repo(image) // The name of the image in the docker daemon. .tag("1.0.0") // The tag of this particular image. .build(); - let _: Vec = docker .create_image(Some(options), Some(bollard::body_try_stream(stream)), None) .try_collect() .await .expect("Could not create image"); + let options = PushImageOptionsBuilder::new().tag("latest").build(); + let _: Vec = docker + .push_image(&cache::process_image_name(image), Some(options), None) + .try_collect() + .await + .expect("Could not push image"); + Ok(()) }