Interface KubernetesConfig

All Superinterfaces:
EnvVarHolder, PlatformConfiguration

@ConfigMapping(prefix="quarkus.kubernetes") @ConfigRoot(phase=BUILD_TIME) public interface KubernetesConfig extends PlatformConfiguration
Kubernetes
  • Method Details

    • targetPlatformName

      default String targetPlatformName()
      Description copied from interface: EnvVarHolder
      Specifies which the name of the platform this EnvVarHolder targets. This name, when needed, is used by dekorate to generate the descriptor associated with the targeted deployment platform.
      Specified by:
      targetPlatformName in interface EnvVarHolder
      Returns:
      the name of the targeted platform e.g. Constants.KUBERNETES
    • deploymentKind

      Optional<DeploymentResourceKind> deploymentKind()
      The kind of the deployment resource to use. Supported values are 'StatefulSet', 'Job', 'CronJob' and 'Deployment' defaulting to the latter.
    • deploymentTarget

      Optional<List<String>> deploymentTarget()
      The target deployment platform. Defaults to kubernetes. Can be kubernetes, openshift, knative, minikube etc., or any combination of the above as comma separated list.
    • strategy

      @WithDefault("None") io.dekorate.kubernetes.config.DeploymentStrategy strategy()
      Specifies the deployment strategy.
    • rollingUpdate

      RollingUpdateConfig rollingUpdate()
      Specifies rolling update configuration. The configuration is applied when DeploymentStrategy == RollingUpdate, or when explicit configuration has been provided. In the later case RollingUpdate is assumed.
    • replicas

      @WithDefault("1") Integer replicas()
      The number of desired pods
    • nodePort

      OptionalInt nodePort()
      The nodePort to set when serviceType is set to node-port.
    • ingress

      IngressConfig ingress()
      Ingress configuration
    • job

      JobConfig job()
      Job configuration. It's only used if and only if quarkus.kubernetes.deployment-kind is `Job`.
    • cronJob

      CronJobConfig cronJob()
      CronJob configuration. It's only used if and only if quarkus.kubernetes.deployment-kind is `CronJob`.
    • remoteDebug

      DebugConfig remoteDebug()
      Debug configuration to be set in pods.
    • externalizeInit

      @Deprecated(since="3.1", forRemoval=true) @WithDefault("true") boolean externalizeInit()
      Deprecated, for removal: This API element is subject to removal in a future version.
      use initTasks() configuration instead
      Flag to enable init task externalization. When enabled (default), all initialization tasks created by extensions, will be externalized as Jobs. In addition, the deployment will wait for these jobs.
    • initTasks

      @ConfigDocMapKey("task-name") Map<String,InitTaskConfig> initTasks()
      Init tasks configuration.

      The init tasks are automatically generated by extensions like Flyway to perform the database migration before starting up the application.

      This property is only taken into account if `quarkus.kubernetes.externalize-init` is true.

    • initTaskDefaults

      InitTaskConfig initTaskDefaults()
      Default Init tasks configuration.

      The init tasks are automatically generated by extensions like Flyway to perform the database migration before staring up the application.

    • outputDirectory

      Optional<String> outputDirectory()
      Optionally set directory generated Kubernetes resources will be written to. Default is `target/kubernetes`.
    • deploy

      @WithDefault("false") boolean deploy()
      If set to true, Quarkus will attempt to deploy the application to the target Kubernetes cluster
    • deployStrategy

      @WithDefault("CreateOrUpdate") DeployStrategy deployStrategy()
      If deploy is enabled, it will follow this strategy to update the resources to the target Kubernetes cluster.
    • getDeploymentResourceKind

      default DeploymentResourceKind getDeploymentResourceKind(io.quarkus.deployment.Capabilities capabilities)