openshift/kubernetes-apiserver

Description: Library for writing a Kubernetes-style API server.

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 55 minutes ago
Added to GitGenius on June 23rd, 2023
Created on March 3rd, 2017
Open Issues & Pull Requests: 2 (+0)
Number of forks: 34
Total Stargazers: 2 (+0)
Total Subscribers: 104 (+0)

Issue Activity (beta)

Open issues: 0
New in 7 days: 0
Closed in 7 days: 0
Avg open age: N/A days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

The kubernetes-apiserver repository is a Go-based library maintained by the OpenShift project that provides foundational infrastructure for building Kubernetes-style API servers. Specifically, it serves as a generic library for constructing Kubernetes aggregated API servers, enabling developers to create custom API servers that integrate seamlessly with the Kubernetes ecosystem.

The library's primary purpose is to abstract and provide reusable components for building aggregation servers with delegated authentication and authorization mechanisms. It includes kubectl-compatible discovery information, an optional admission chain for request processing, and support for versioned types. These components allow developers to extend Kubernetes functionality without reimplementing core API server logic. The library's initial consumers included the main Kubernetes project itself, the Kubernetes aggregator component, and the service-catalog project, demonstrating its role as foundational infrastructure within the Kubernetes ecosystem.

An important characteristic of this repository is its relationship to the upstream Kubernetes project. The code is synced from the staging directory in the main Kubernetes repository at kubernetes/kubernetes/staging/src/k8s.io/apiserver. Code changes are made in that upstream location, merged into the main Kubernetes repository, and subsequently synced to this OpenShift-maintained mirror. This means the repository functions as a downstream mirror rather than a primary development location, and contributors are explicitly instructed not to directly modify files under the pkg directory, as those changes should flow through the upstream Kubernetes repository instead.

The repository explicitly states that it provides no compatibility guarantees at this time. The library is in direct support of Kubernetes development, meaning its branches track Kubernetes releases and maintain compatibility with corresponding Kubernetes versions. The API surface is acknowledged to be unstable and changing rapidly, reflecting the library's role as supporting infrastructure for an evolving platform rather than a stable, independently-versioned library. The maintainers have indicated a goal to eventually provide clearer compatibility guarantees as the layers become more cleanly separated, but this remains a future objective rather than a current commitment.

GitGenius activity data indicates this repository is classified across multiple infrastructure and cloud-native domains including container orchestration, microservices, deployment automation, cluster management, infrastructure automation, service mesh, configuration management, API server development, service deployment, cloud computing, cloud-native technologies, resource scheduling, security, Kubernetes integration, microservices architecture, and platform development. This broad classification reflects the repository's foundational role in supporting multiple layers of the Kubernetes and OpenShift ecosystems.

The library addresses a specific architectural need within Kubernetes: enabling the creation of custom API servers that behave like native Kubernetes components. By providing delegated authentication and authorization, discovery mechanisms compatible with kubectl, and admission processing chains, the library reduces the complexity of building extensions to Kubernetes that maintain consistency with the platform's design patterns and operational expectations. This approach allows teams building on Kubernetes to extend its capabilities while maintaining compatibility with existing tooling and workflows.

kubernetes-apiserver
by
openshiftopenshift/kubernetes-apiserver

Repository Details

Fetching additional details & charts...