Package io.quarkus.kubernetes.deployment
Class KubernetesCommonHelper
java.lang.Object
io.quarkus.kubernetes.deployment.KubernetesCommonHelper
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncombinePorts(List<io.quarkus.kubernetes.spi.KubernetesPortBuildItem> ports, PlatformConfiguration config) Creates the configurator build items.static io.quarkus.kubernetes.spi.KubernetesEffectiveServiceAccountBuildItemcomputeEffectiveServiceAccount(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.DecoratorBuildItemcreateProbeHttpPortDecorator(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 voidprintMessageAboutPortsThatCantChange(String target, List<io.quarkus.kubernetes.spi.KubernetesPortBuildItem> ports, PlatformConfiguration configuration) Creates the configurator build items.
-
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
-
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
-
createInitJobDecorators
-
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 targetprobeKind- The probe kind (e.g. readinessProbe, livenessProbe etc)portName- the probe port name build itemports- a list of kubernetes port build items- Returns:
- a decorator for configures the port of the http action of the probe.
-