()
| 1153 | |
| 1154 | #[test] |
| 1155 | fn test_push() { |
| 1156 | // start a local registry to run this test |
| 1157 | // docker run --rm -d -p 5000:5000 --name registry registry:2 |
| 1158 | let docker = Docker::new_with_local_builder(None).unwrap(); |
| 1159 | let image_to_build = ContainerImage::new( |
| 1160 | private_registry_url(), |
| 1161 | "local-repo/alpine".to_string(), |
| 1162 | vec!["v42.42".to_string()], |
| 1163 | ); |
| 1164 | let image_cache = ContainerImage::new( |
| 1165 | private_registry_url(), |
| 1166 | "local-repo/alpine".to_string(), |
| 1167 | vec!["cache".to_string()], |
| 1168 | ); |
| 1169 | |
| 1170 | // It should work |
| 1171 | let ret = docker.build_with_buildkit( |
| 1172 | &None, |
| 1173 | Path::new("tests/docker/multi_stage_simple/Dockerfile"), |
| 1174 | Path::new("tests/docker/multi_stage_simple/"), |
| 1175 | &image_to_build, |
| 1176 | &[], |
| 1177 | Some(&image_cache), |
| 1178 | false, |
| 1179 | CPU_ARCHITECTURE, |
| 1180 | &mut |msg| println!("{msg}"), |
| 1181 | &mut |msg| eprintln!("{msg}"), |
| 1182 | &CommandKiller::never(), |
| 1183 | None, |
| 1184 | ); |
| 1185 | assert!(ret.is_ok()); |
| 1186 | |
| 1187 | let ret = docker.does_image_exist_locally(&image_to_build); |
| 1188 | assert!(matches!(ret, Ok(true))); |
| 1189 | |
| 1190 | let ret = docker.does_image_exist_remotely(&image_to_build); |
| 1191 | assert!(matches!(ret, Ok(false))); |
| 1192 | |
| 1193 | let ret = docker.push( |
| 1194 | &image_to_build, |
| 1195 | &mut |msg| println!("{msg}"), |
| 1196 | &mut |msg| eprintln!("{msg}"), |
| 1197 | &CommandKiller::never(), |
| 1198 | ); |
| 1199 | assert!(ret.is_ok()); |
| 1200 | |
| 1201 | let ret = docker.does_image_exist_remotely(&image_to_build); |
| 1202 | assert!(matches!(ret, Ok(true))); |
| 1203 | |
| 1204 | let ret = docker.pull( |
| 1205 | &image_to_build, |
| 1206 | &mut |msg| println!("{msg}"), |
| 1207 | &mut |msg| eprintln!("{msg}"), |
| 1208 | &CommandKiller::never(), |
| 1209 | ); |
| 1210 | assert!(ret.is_ok()); |
| 1211 | } |
| 1212 |
nothing calls this directly
no test coverage detected