Class ContainerImageProcessor

java.lang.Object
io.quarkus.container.image.deployment.ContainerImageProcessor

public class ContainerImageProcessor extends Object
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    (package private) void
    failForNativeSources(ContainerImageConfig containerImageConfig, Optional<io.quarkus.container.spi.ContainerImageBuildRequestBuildItem> buildRequest, Optional<io.quarkus.container.spi.ContainerImagePushRequestBuildItem> pushRequest, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.pkg.builditem.ArtifactResultBuildItem> artifactResultProducer)
     
    (package private) static Optional<String>
     
    (package private) static Optional<String>
    getEffectiveGroup(Optional<String> group, boolean isSingleSegmentRequested)
    Since user.name which is default value can be uppercase and uppercase values are not allowed in the repository part of image references, we need to make the username lowercase.
    void
    ignoreCredentialsChange(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.SuppressNonRuntimeConfigChangedWarningBuildItem> producer)
     
    (package private) static boolean
    Users are allowed to specify an empty group, however this is mapped to Optional.emtpy().
    void
    publishImageInfo(io.quarkus.deployment.builditem.ApplicationInfoBuildItem app, ContainerImageConfig containerImageConfig, Optional<io.quarkus.container.spi.SingleSegmentContainerImageRequestBuildItem> singleSegmentImageRequest, Optional<io.quarkus.container.spi.FallbackContainerImageRegistryBuildItem> containerImageRegistry, Optional<io.quarkus.container.spi.ContainerImageCustomNameBuildItem> containerImageCustomName, io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.container.spi.ContainerImageInfoBuildItem> containerImage)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ContainerImageProcessor

      public ContainerImageProcessor()
  • Method Details

    • failForNativeSources

      void failForNativeSources(ContainerImageConfig containerImageConfig, Optional<io.quarkus.container.spi.ContainerImageBuildRequestBuildItem> buildRequest, Optional<io.quarkus.container.spi.ContainerImagePushRequestBuildItem> pushRequest, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.pkg.builditem.ArtifactResultBuildItem> artifactResultProducer)
    • ignoreCredentialsChange

      public void ignoreCredentialsChange(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.SuppressNonRuntimeConfigChangedWarningBuildItem> producer)
    • publishImageInfo

      public void publishImageInfo(io.quarkus.deployment.builditem.ApplicationInfoBuildItem app, ContainerImageConfig containerImageConfig, Optional<io.quarkus.container.spi.SingleSegmentContainerImageRequestBuildItem> singleSegmentImageRequest, Optional<io.quarkus.container.spi.FallbackContainerImageRegistryBuildItem> containerImageRegistry, Optional<io.quarkus.container.spi.ContainerImageCustomNameBuildItem> containerImageCustomName, io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.container.spi.ContainerImageInfoBuildItem> containerImage)
    • getEffectiveGroup

      static Optional<String> getEffectiveGroup(Optional<String> group, boolean isSingleSegmentRequested)
      Since user.name which is default value can be uppercase and uppercase values are not allowed in the repository part of image references, we need to make the username lowercase. If spaces exist in the user name, we replace them with the dash character. We purposely don't change the value of an explicitly set group.
    • getEffectiveGroup

      static Optional<String> getEffectiveGroup()
    • isGroupSpecified

      static boolean isGroupSpecified()
      Users are allowed to specify an empty group, however this is mapped to Optional.emtpy(). We need to know if the user has actually specified a group or not. The only way is to check the property names provided.