Eclipse JKube 1.13 is now available!
On behalf of the Eclipse JKube
team and everyone who has contributed, I'm happy to announce that Eclipse JKube 1.13.1
has been
released and is now available from
Maven Central 🎉.
Thanks to all of you who have contributed with issue reports, pull requests, feedback, and spreading the word with blogs, videos, comments, and so on. We really appreciate your help, keep it up!
What's new?
Without further ado, let's have a look at the most significant updates:
- Support for Helm
Chart.yaml
fragments - Kubernetes resource Security Hardening profile
- 🐛 Many other bug-fixes and minor improvements
Support for Helm Chart.yaml fragments
JKube now allows you to use fragments to configure the resulting generated Helm Chart.yaml
file.
Until now, it was only possible to customize this file by providing XML or DSL configuration.
With this new enhancement, you can now place a Chart.helm.yaml
file in the src/main/jkube
directory of your project
and JKube will merge the contents of this file with the generated Chart.yaml
file.
For example, the following Chart.helm.yaml
file will set the description of the generated Helm chart:
description: The description provided through a fragment
The generated Chart.yaml
file will look like this:
apiVersion: v1
name: the-fragment-name
description: The description provided through a fragment
# ...
Kubernetes resource Security Hardening profile
To improve the overall security of the generated Kubernetes resources, JKube now provides a new profile called security-hardening
.
The profile enforces a set of rules, the following list contains a few of them:
- Disables the auto-mounting of the service account token.
- Prevents containers from running in privileged mode.
- Ensures containers do not allow privilege escalation.
You can find the complete list of rules in the Kubernetes-Maven-Plugin documentation.
This profile is not enabled by default (opt-in). You can enable it through the plugin configuration:
<plugin>
<groupId>org.eclipse.jkube</groupId>
<artifactId>kubernetes-maven-plugin</artifactId>
<configuration>
<profile>security-hardening</profile>
<!-- ... -->
</configuration>
</plugin>
Or through a Maven/Gradle property. For example, in a Maven project you can do this from the command line:
mvn k8s:resource -Djkube.profile=security-hardening
Using this release
If your project is based on Maven, you just need to add the Kubernetes Maven plugin or the OpenShift Maven plugin to your plugin dependencies:
<plugin>
<groupId>org.eclipse.jkube</groupId>
<artifactId>kubernetes-maven-plugin</artifactId>
<version>1.13.1</version>
</plugin>
If your project is based on Gradle, you just need to add the Kubernetes Gradle plugin or the OpenShift Gradle plugin to your plugin dependencies:
plugins {
id 'org.eclipse.jkube.kubernetes' version '1.13.1'
}
How can you help?
If you're interested in helping out and are a first-time contributor, check out the "first-timers-only" tag in the issue repository. We've tagged extremely easy issues so that you can get started contributing to Open Source and the Eclipse organization.
If you are a more experienced developer or have already contributed to JKube, check the "help wanted" tag.
We're also excited to read articles and posts mentioning our project and sharing the user experience. Feedback is the only way to improve.
Project Page | GitHub | Issues | Gitter | Mailing list | Stack Overflow