GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - kubernetes-client/java: Official Java client library for kubernetes

BranchesTags
Open more actions menu

Latest commit

 

History

5,478 Commits
5,478 Commits

Folders and files

NameName
Last commit message
Last commit date
.devcontainer
.devcontainer
 
 
.github
.github
 
 
.mvn/wrapper
.mvn/wrapper
 
 
client-java-contrib
client-java-contrib
 
 
docs
docs
 
 
e2e
e2e
 
 
examples
examples
 
 
extended
extended
 
 
fluent-gen
fluent-gen
 
 
fluent
fluent
 
 
gen
gen
 
 
kubernetes
kubernetes
 
 
proto
proto
 
 
scripts
scripts
 
 
spring-aot
spring-aot
 
 
spring
spring
 
 
util
util
 
 
.bazelrc
.bazelrc
 
 
.bazelversion
.bazelversion
 
 
.gitignore
.gitignore
 
 
BUILD.bazel
BUILD.bazel
 
 
CHANGELOG.md
CHANGELOG.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
LICENSE
LICENSE
 
 
MODULE.bazel
MODULE.bazel
 
 
OWNERS
OWNERS
 
 
README.md
README.md
 
 
RELEASES.md
RELEASES.md
 
 
SECURITY_CONTACTS
SECURITY_CONTACTS
 
 
code-of-conduct.md
code-of-conduct.md
 
 
maven_install.json
maven_install.json
 
 
mvnw
mvnw
 
 
mvnw.cmd
mvnw.cmd
 
 
pom.xml
pom.xml
 
 
settings
settings
 
 
settings.xml
settings.xml
 
 

Repository files navigation

Kubernetes Java Client

bazel Client Capabilities Client Support Level Maven Central Sonatype Nexus (Snapshots)

Java client for the kubernetes API.

To start using Kubernetes Java Client

See the wiki page and documentation here.

  • Installation
  • Client Versioning and Compatibility
  • Code Examples

Exec credential plugin policy

Kubeconfig exec credential plugins start local processes. Only load trusted kubeconfigs with the default AllowAll policy. Applications can restrict which plugins may run using ExecCredentialPluginPolicy, which follows the credentialPluginPolicy / credentialPluginAllowlist semantics of kuberc:

// Deny all exec plugins
ApiClient client = ClientBuilder.standard(ExecCredentialPluginPolicy.DENY_ALL).build();

// Only allow specific plugins (basenames resolved via PATH, or full paths)
ApiClient client = ClientBuilder.standard(
    ExecCredentialPluginPolicy.allowlist("kubelogin", "/usr/local/bin/my-trusted-plugin")).build();

// Use the same policy as kubectl ($KUBERC or ~/.kube/kuberc)
ApiClient client = ClientBuilder.standard(ExecCredentialPluginPolicy.fromDefaultKubeRc()).build();

// Or on a KubeConfig loaded manually
kubeConfig.setExecCredentialPluginPolicy(ExecCredentialPluginPolicy.DENY_ALL);

An allowlist entry matches when it is exactly equal to the plugin command, or when both resolve to the same executable via PATH (symlinks and globs are not resolved). Denied plugins are never started and an ExecCredentialPluginDeniedException is thrown. The policy applies to both initial credential acquisition and token refresh. It does not restrict plugin arguments or environment, and is a defense-in-depth measure rather than a sandbox.

Release

Starting from 20.0.0 (Kubernetes 1.28), client-java-api has introduced non-backward-compatible changes. Optional parameters are now consolidated into a single object, and Java8 support has been removed. For Java8 users or those preferring the old SDK interface, a legacy SDK module version is available with a "-legacy" suffix, like 20.0.0-legacy.

Development

  • Development and Contributing
  • Generate Java CRD Models
  • Known Issues
  • Troubleshooting/FAQ

To update the Maven project version across all pom.xml files, including the optional fluent-gen module, run:

./scripts/update-version.sh 28.0.0-SNAPSHOT

The helper delegates to the Maven Versions Plugin, so the equivalent Maven command is:

./mvnw -Pfluent-gen versions:set -DnewVersion=28.0.0-SNAPSHOT -DprocessAllModules=true -DgenerateBackupPoms=false

Support

If you need support, start with checking whether you're hitting known issues. If that doesn't work, please open an issue to describe the cases. Additionally, before you file an issue, please search existing issues to see if your issue is already covered.

You can also reach out to us via #kubernetes-client slack channel.

About

Official Java client library for kubernetes

kubernetes.io/

Resources

Readme
Apache-2.0 license

Code of conduct

Code of conduct

Contributing

Contributing

Security policy

Security policy
Activity
Custom properties

Stars

4.0k stars

Watchers

104 watching

Forks

2.1k forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.