public void TestGetters() { TarImage tarImage = TarImage.Named("tar/image").SaveTo(Paths.Get("output/file")); Assert.AreEqual("tar/image", tarImage.GetImageReference().ToString()); Assert.AreEqual(Paths.Get("output/file"), tarImage.GetOutputFile()); }
public static async Task CreateImageAsync() { SystemPath root = imageLocation.GetRoot().ToPath(); SystemPath fileA = Files.CreateFile(root.Resolve("fileA.txt")); SystemPath fileB = Files.CreateFile(root.Resolve("fileB.txt")); SystemPath fileC = Files.CreateFile(root.Resolve("fileC.txt")); SystemPath subdir = Files.CreateDirectory(root.Resolve("dir")); SystemPath subsubdir = Files.CreateDirectory(subdir.Resolve("subdir")); Files.CreateFile(subdir.Resolve("fileD.txt")); Files.CreateFile(subsubdir.Resolve("fileE.txt")); imageTar = new FileInfo(Path.Combine(imageLocation.GetRoot().FullName, "image.tar")); Containerizer containerizer = Containerizer.To(TarImage.Named("fibdotnet-core/reproducible").SaveTo(imageTar.ToPath())); await FibContainerBuilder.FromScratch() .SetEntrypoint("echo", "Hello World") .AddLayer(ImmutableArray.Create(fileA), AbsoluteUnixPath.Get("/app")) // layer with out-of-order files .AddLayer(ImmutableArray.Create(fileC, fileB), "/app") .AddLayer( LayerConfiguration.CreateBuilder() .AddEntryRecursive(subdir, AbsoluteUnixPath.Get("/app")) .Build()) .ContainerizeAsync(containerizer).ConfigureAwait(false); }
protected override IContainerizer CreateContainerizer(ImageReference imageReference) { if (!Path.IsPathRooted(OutputFile)) { OutputFile = Path.Combine(Directory.GetCurrentDirectory(), OutputFile); } return(Containerizer.To(TarImage.Named(imageReference).SaveTo(OutputFile))); }
public void TestGetImageConfiguration_tarImage() { Containerizer containerizer = Containerizer.To(TarImage.Named("tar/image").SaveTo(Paths.Get("output/file"))); ImageConfiguration imageConfiguration = containerizer.GetImageConfiguration(); Assert.AreEqual("tar/image", imageConfiguration.GetImage().ToString()); Assert.AreEqual(0, imageConfiguration.GetCredentialRetrievers().Length); }
private async Task <FibContainer> BuildTarImageAsync( ImageReference baseImage, ImageReference targetImage, SystemPath outputPath, List <string> additionalTags) { return(await BuildImageAsync( baseImage, Containerizer.To(TarImage.Named(targetImage).SaveTo(outputPath)), additionalTags).ConfigureAwait(false)); }
public void TestTo() { RegistryImage registryImage = RegistryImage.Named(ImageReference.Of(null, "repository", null)); DockerDaemonImage dockerDaemonImage = DockerDaemonImage.Named(ImageReference.Of(null, "repository", null)); TarImage tarImage = TarImage.Named(ImageReference.Of(null, "repository", null)).SaveTo(Paths.Get("ignored")); VerifyTo(Containerizer.To(registryImage)); VerifyTo(Containerizer.To(dockerDaemonImage)); VerifyTo(Containerizer.To(tarImage)); }
protected override IContainerizer CreateContainerizer(FibCliConfiguration configuration) { if (!Path.IsPathRooted(OutputFile)) { OutputFile = Path.Combine(Directory.GetCurrentDirectory(), OutputFile); } var tarImage = TarImage.Named(configuration.GetTargetImageReference()).SaveTo(OutputFile); // if(configuration.TargetImageCredential!=null && !string.IsNullOrEmpty(configuration.TargetImageCredential.UserName) // && !string.IsNullOrEmpty(configuration.TargetImageCredential.Password)) // { // tarImage.AddCredential(configuration.TargetImageCredential.UserName, configuration.TargetImageCredential.Password); // } return(Containerizer.To(tarImage)); }