Fork me on GitHub

createk8syaml:generate

Full name:

io.github.parj:createk8syaml-maven-plugin:0.0.6-SNAPSHOT:generate

Description:

Creates a minimal Kubernetes deployment, service and ingress yaml file.

Attributes:

  • Requires a Maven project to be executed.
  • Binds by default to the lifecycle phase: package.

Required Parameters

Name Type Since Description
<host> String - The hostname to be used in the ingress. If not provided, localhost is provided as default
Default value is: localhost.
User property is: host.
<image> String - The docker image registry url to use. Example parjanya/samplespringbootapp
User property is: image.
<namespace> String - Namespace to be used in Kubernetes. If not provided the default Kubernetes namespace is used.
Default value is: default.
User property is: namespace.
<path> String - The end point of the application to be exposed. Example /foo/bar
User property is: path.

Optional Parameters

Name Type Since Description
<inputDirectory> String - The location where the template kubernetes files are sitting. If not provided, will default to the resources folder
User property is: inputDirectory.
<livenessProbePath> String - Path for the liveness probe for Kubernetes. Ex. /hello/actuator/customHealthCheck. Liveness is used to check if the pod is functioning If this is not set, the block of yaml driving liveness will not be included. cf - https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/ https://spring.io/blog/2020/03/25/liveness-and-readiness-probes-with-spring-boot
User property is: livenessProbePath.
<name> String - Name of the Kubernetes application to use in the deployment, service and ingress. By default the name provided in the pom.xml is picked up and applied.
Default value is: ${project.name}.
User property is: name.
<outputDirectory> String - The location where the kuberentes files should be written to. If not provided, will default to the project build folder
Default value is: ${project.build.directory}.
User property is: outputDirectory.
<port> String - The application port to be exposed. If not provided 8080 is exposed by default
Default value is: 8080.
User property is: port.
<readinessProbePath> String - Path for the readiness probe for Kubernetes. Ex. /hello/actuator/health. Readiness is used to check if the deployment pod is ready to receive traffic. If this is not set, the block of yaml driving readiness will not be included. cf - https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/ https://spring.io/blog/2020/03/25/liveness-and-readiness-probes-with-spring-boot
User property is: readinessProbePath.

Parameter Details

<host>

The hostname to be used in the ingress. If not provided, localhost is provided as default
  • Type: java.lang.String
  • Required: Yes
  • User Property: host
  • Default: localhost

<image>

The docker image registry url to use. Example parjanya/samplespringbootapp
  • Type: java.lang.String
  • Required: Yes
  • User Property: image

<inputDirectory>

The location where the template kubernetes files are sitting. If not provided, will default to the resources folder
  • Type: java.lang.String
  • Required: No
  • User Property: inputDirectory

<livenessProbePath>

Path for the liveness probe for Kubernetes. Ex. /hello/actuator/customHealthCheck. Liveness is used to check if the pod is functioning If this is not set, the block of yaml driving liveness will not be included. cf - https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/ https://spring.io/blog/2020/03/25/liveness-and-readiness-probes-with-spring-boot
  • Type: java.lang.String
  • Required: No
  • User Property: livenessProbePath

<name>

Name of the Kubernetes application to use in the deployment, service and ingress. By default the name provided in the pom.xml is picked up and applied.
  • Type: java.lang.String
  • Required: No
  • User Property: name
  • Default: ${project.name}

<namespace>

Namespace to be used in Kubernetes. If not provided the default Kubernetes namespace is used.
  • Type: java.lang.String
  • Required: Yes
  • User Property: namespace
  • Default: default

<outputDirectory>

The location where the kuberentes files should be written to. If not provided, will default to the project build folder
  • Type: java.lang.String
  • Required: No
  • User Property: outputDirectory
  • Default: ${project.build.directory}

<path>

The end point of the application to be exposed. Example /foo/bar
  • Type: java.lang.String
  • Required: Yes
  • User Property: path

<port>

The application port to be exposed. If not provided 8080 is exposed by default
  • Type: java.lang.String
  • Required: No
  • User Property: port
  • Default: 8080

<readinessProbePath>

Path for the readiness probe for Kubernetes. Ex. /hello/actuator/health. Readiness is used to check if the deployment pod is ready to receive traffic. If this is not set, the block of yaml driving readiness will not be included. cf - https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/ https://spring.io/blog/2020/03/25/liveness-and-readiness-probes-with-spring-boot
  • Type: java.lang.String
  • Required: No
  • User Property: readinessProbePath