//public FibContainerBuilder AddImageCredential(Credential credential) //{ // credential = credential ?? throw new ArgumentNullException(nameof(credential)); //} public FibContainerBuilder(RegistryImage baseImage, BuildConfiguration.Builder buildConfigurationBuilder) { baseImage = baseImage ?? throw new ArgumentNullException(nameof(baseImage)); this.buildConfigurationBuilder = buildConfigurationBuilder ?? throw new ArgumentNullException(nameof(buildConfigurationBuilder)); ImageConfiguration imageConfiguration = ImageConfiguration.CreateBuilder(baseImage.GetImageReference()) .SetCredentialRetrievers(baseImage.GetCredentialRetrievers()) .Build(); buildConfigurationBuilder.SetBaseImageConfiguration(imageConfiguration); }
/** * Gets a new {@link Containerizer} that containerizes to a container registry. * * @param registryImage the {@link RegistryImage} that defines target container registry and * credentials * @return a new {@link Containerizer} */ public static Containerizer To(RegistryImage registryImage) { registryImage = registryImage ?? throw new ArgumentNullException(nameof(registryImage)); ImageConfiguration imageConfiguration = ImageConfiguration.CreateBuilder(registryImage.GetImageReference()) .SetCredentialRetrievers(registryImage.GetCredentialRetrievers()) .Build(); return(new Containerizer( DescriptionForDockerRegistry, imageConfiguration, StepsRunnerFactory, true)); StepsRunner StepsRunnerFactory(BuildConfiguration buildConfiguration) => StepsRunner.Begin(buildConfiguration) .RetrieveTargetRegistryCredentials() .AuthenticatePush() .PullBaseImage() .PullAndCacheBaseImageLayers() .PushBaseImageLayers() .BuildAndCacheApplicationLayers() .BuildImage() .PushContainerConfiguration() .PushApplicationLayers() .PushImage(); }