Class KubernetesCommonHelper

java.lang.Object
io.quarkus.kubernetes.deployment.KubernetesCommonHelper

public class KubernetesCommonHelper extends Object
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static Map<String,io.dekorate.kubernetes.config.Port>
    combinePorts(List<io.quarkus.kubernetes.spi.KubernetesPortBuildItem> ports, PlatformConfiguration config)
    Creates the configurator build items.
    static io.quarkus.kubernetes.spi.KubernetesEffectiveServiceAccountBuildItem
    computeEffectiveServiceAccount(String name, String target, PlatformConfiguration config, List<io.quarkus.kubernetes.spi.KubernetesServiceAccountBuildItem> serviceAccountsFromExtensions, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.kubernetes.spi.DecoratorBuildItem> decorators)
     
    static List<io.quarkus.kubernetes.spi.DecoratorBuildItem>
    createDecorators(Optional<io.dekorate.project.Project> project, String target, String name, Optional<io.quarkus.kubernetes.spi.KubernetesNamespaceBuildItem> namespace, PlatformConfiguration config, Optional<io.quarkus.deployment.metrics.MetricsCapabilityBuildItem> metricsConfiguration, Optional<io.quarkus.kubernetes.client.spi.KubernetesClientCapabilityBuildItem> kubernetesClientConfiguration, List<io.quarkus.kubernetes.spi.KubernetesAnnotationBuildItem> annotations, List<io.quarkus.kubernetes.spi.KubernetesLabelBuildItem> labels, Optional<io.quarkus.container.spi.ContainerImageInfoBuildItem> image, Optional<io.quarkus.kubernetes.spi.KubernetesCommandBuildItem> command, Optional<io.dekorate.kubernetes.config.Port> port, Optional<io.quarkus.kubernetes.spi.KubernetesHealthLivenessPathBuildItem> livenessProbePath, Optional<io.quarkus.kubernetes.spi.KubernetesHealthReadinessPathBuildItem> readinessProbePath, Optional<io.quarkus.kubernetes.spi.KubernetesHealthStartupPathBuildItem> startupPath, List<io.quarkus.kubernetes.spi.KubernetesRoleBuildItem> roles, List<io.quarkus.kubernetes.spi.KubernetesClusterRoleBuildItem> clusterRoles, List<io.quarkus.kubernetes.spi.KubernetesEffectiveServiceAccountBuildItem> serviceAccounts, List<io.quarkus.kubernetes.spi.KubernetesRoleBindingBuildItem> roleBindings, List<io.quarkus.kubernetes.spi.KubernetesClusterRoleBindingBuildItem> clusterRoleBindings)
    Creates the common decorator build items.
    static List<io.quarkus.kubernetes.spi.DecoratorBuildItem>
    createInitContainerDecorators(String target, String applicationName, List<io.quarkus.kubernetes.spi.KubernetesInitContainerBuildItem> items, List<io.quarkus.kubernetes.spi.DecoratorBuildItem> decorators)
     
    static List<io.quarkus.kubernetes.spi.DecoratorBuildItem>
    createInitJobDecorators(String target, String applicationName, List<io.quarkus.kubernetes.spi.KubernetesJobBuildItem> items, List<io.quarkus.kubernetes.spi.DecoratorBuildItem> decorators)
     
    static io.quarkus.kubernetes.spi.DecoratorBuildItem
    createProbeHttpPortDecorator(String name, String target, String probeKind, ProbeConfig probeConfig, Optional<io.quarkus.kubernetes.spi.KubernetesProbePortNameBuildItem> portName, List<io.quarkus.kubernetes.spi.KubernetesPortBuildItem> ports, Map<String,PortConfig> portsFromConfig)
    Create a decorator that sets the port to the http probe.
    static Optional<io.dekorate.project.Project>
    createProject(io.quarkus.deployment.builditem.ApplicationInfoBuildItem app, Optional<io.quarkus.kubernetes.spi.CustomProjectRootBuildItem> customProjectRoot, io.quarkus.deployment.pkg.builditem.OutputTargetBuildItem outputTarget, io.quarkus.deployment.pkg.PackageConfig packageConfig)
     
    static Optional<io.dekorate.project.Project>
    createProject(io.quarkus.deployment.builditem.ApplicationInfoBuildItem app, Optional<io.quarkus.kubernetes.spi.CustomProjectRootBuildItem> customProjectRoot, Path artifactPath)
     
    static Optional<io.dekorate.kubernetes.config.Port>
    getPort(List<io.quarkus.kubernetes.spi.KubernetesPortBuildItem> ports, KubernetesConfig config)
    Creates the configurator build items.
    static Optional<io.dekorate.kubernetes.config.Port>
    getPort(List<io.quarkus.kubernetes.spi.KubernetesPortBuildItem> ports, PlatformConfiguration config, String targetPort)
    Creates the configurator build items.
    static void
    printMessageAboutPortsThatCantChange(String target, List<io.quarkus.kubernetes.spi.KubernetesPortBuildItem> ports, PlatformConfiguration configuration)
    Creates the configurator build items.

    Methods inherited from class java.lang.Object

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

    • KubernetesCommonHelper

      public KubernetesCommonHelper()
  • Method Details

    • createProject

      public static Optional<io.dekorate.project.Project> createProject(io.quarkus.deployment.builditem.ApplicationInfoBuildItem app, Optional<io.quarkus.kubernetes.spi.CustomProjectRootBuildItem> customProjectRoot, io.quarkus.deployment.pkg.builditem.OutputTargetBuildItem outputTarget, io.quarkus.deployment.pkg.PackageConfig packageConfig)
    • createProject

      public static Optional<io.dekorate.project.Project> createProject(io.quarkus.deployment.builditem.ApplicationInfoBuildItem app, Optional<io.quarkus.kubernetes.spi.CustomProjectRootBuildItem> customProjectRoot, Path artifactPath)
    • getPort

      public static Optional<io.dekorate.kubernetes.config.Port> getPort(List<io.quarkus.kubernetes.spi.KubernetesPortBuildItem> ports, KubernetesConfig config)
      Creates the configurator build items.
    • getPort

      public static Optional<io.dekorate.kubernetes.config.Port> getPort(List<io.quarkus.kubernetes.spi.KubernetesPortBuildItem> ports, PlatformConfiguration config, String targetPort)
      Creates the configurator build items.
    • combinePorts

      public static Map<String,io.dekorate.kubernetes.config.Port> combinePorts(List<io.quarkus.kubernetes.spi.KubernetesPortBuildItem> ports, PlatformConfiguration config)
      Creates the configurator build items.
    • printMessageAboutPortsThatCantChange

      public static void printMessageAboutPortsThatCantChange(String target, List<io.quarkus.kubernetes.spi.KubernetesPortBuildItem> ports, PlatformConfiguration configuration)
      Creates the configurator build items.
    • createDecorators

      public static List<io.quarkus.kubernetes.spi.DecoratorBuildItem> createDecorators(Optional<io.dekorate.project.Project> project, String target, String name, Optional<io.quarkus.kubernetes.spi.KubernetesNamespaceBuildItem> namespace, PlatformConfiguration config, Optional<io.quarkus.deployment.metrics.MetricsCapabilityBuildItem> metricsConfiguration, Optional<io.quarkus.kubernetes.client.spi.KubernetesClientCapabilityBuildItem> kubernetesClientConfiguration, List<io.quarkus.kubernetes.spi.KubernetesAnnotationBuildItem> annotations, List<io.quarkus.kubernetes.spi.KubernetesLabelBuildItem> labels, Optional<io.quarkus.container.spi.ContainerImageInfoBuildItem> image, Optional<io.quarkus.kubernetes.spi.KubernetesCommandBuildItem> command, Optional<io.dekorate.kubernetes.config.Port> port, Optional<io.quarkus.kubernetes.spi.KubernetesHealthLivenessPathBuildItem> livenessProbePath, Optional<io.quarkus.kubernetes.spi.KubernetesHealthReadinessPathBuildItem> readinessProbePath, Optional<io.quarkus.kubernetes.spi.KubernetesHealthStartupPathBuildItem> startupPath, List<io.quarkus.kubernetes.spi.KubernetesRoleBuildItem> roles, List<io.quarkus.kubernetes.spi.KubernetesClusterRoleBuildItem> clusterRoles, List<io.quarkus.kubernetes.spi.KubernetesEffectiveServiceAccountBuildItem> serviceAccounts, List<io.quarkus.kubernetes.spi.KubernetesRoleBindingBuildItem> roleBindings, List<io.quarkus.kubernetes.spi.KubernetesClusterRoleBindingBuildItem> clusterRoleBindings)
      Creates the common decorator build items.
    • computeEffectiveServiceAccount

      public static io.quarkus.kubernetes.spi.KubernetesEffectiveServiceAccountBuildItem computeEffectiveServiceAccount(String name, String target, PlatformConfiguration config, List<io.quarkus.kubernetes.spi.KubernetesServiceAccountBuildItem> serviceAccountsFromExtensions, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.kubernetes.spi.DecoratorBuildItem> decorators)
    • createInitContainerDecorators

      public static List<io.quarkus.kubernetes.spi.DecoratorBuildItem> createInitContainerDecorators(String target, String applicationName, List<io.quarkus.kubernetes.spi.KubernetesInitContainerBuildItem> items, List<io.quarkus.kubernetes.spi.DecoratorBuildItem> decorators)
    • createInitJobDecorators

      public static List<io.quarkus.kubernetes.spi.DecoratorBuildItem> createInitJobDecorators(String target, String applicationName, List<io.quarkus.kubernetes.spi.KubernetesJobBuildItem> items, List<io.quarkus.kubernetes.spi.DecoratorBuildItem> decorators)
    • createProbeHttpPortDecorator

      public static io.quarkus.kubernetes.spi.DecoratorBuildItem createProbeHttpPortDecorator(String name, String target, String probeKind, ProbeConfig probeConfig, Optional<io.quarkus.kubernetes.spi.KubernetesProbePortNameBuildItem> portName, List<io.quarkus.kubernetes.spi.KubernetesPortBuildItem> ports, Map<String,PortConfig> portsFromConfig)
      Create a decorator that sets the port to the http probe. The rules for setting the probe are the following: 1. if 'http-action-port' is set, use that. 2. if 'http-action-port-name' is set, use that to lookup the port value. 3. if a `KubernetesPorbePortBuild` is set, then use that to lookup the port. 4. if we still haven't found a port fallback to 8080.
      Parameters:
      name - The name of the deployment / container.
      target - The deployment target
      probeKind - The probe kind (e.g. readinessProbe, livenessProbe etc)
      portName - the probe port name build item
      ports - a list of kubernetes port build items
      Returns:
      a decorator for configures the port of the http action of the probe.