README

Components

Overview

The components directory contains the sources of all Kyma components. A Kyma component is any Pod, container, or image deployed with and referenced in a Kyma module or chart to provide the module's functionality. Each subdirectory in the components directory defines one component.

Details

Every Kyma component resides in a dedicated folder which contains its sources and a README.md file. This file provides instructions on how to build and develop the component.

The component's name consists of a term describing the component, followed by the component type. The first part of the name may differ depending on the component's purpose. This table lists the available types:

type description example
controller A Kubernetes Controller which reacts to a standard Kubernetes resource or manages Custom Resource Definition resources. The component's name reflects the name of the primary resource it controls. Function-controller
controller-manager A daemon that embeds all Kubernetes Controllers of a domain. Such an approach brings operational benefits in comparison to shipping all controllers separately. A controller-manager takes the name of the domain it belongs to. -
operator is a Kubernetes Operator which covers the application-specific logic behind the operation of the application, such as steps to upscale a stateful application. It reacts on changes made to custom resources derived from a given CustomResourceDefinition. It uses the name of the application it operates. application-operator
job A Kubernetes Job which performs a task once or periodically. It uses the name of the task it performs. istio-patch-job (not renamed yet)
proxy Acts as a proxy for an existing component, usually introducing a security model for this component. It uses the component's name. apiserver-proxy
service Serves an HTTP/S-based API, usually securely exposed to the public. It uses the domain name and the API it serves. connector-service
broker Implements the OpenServiceBroker specification to enrich the Kyma Service Catalog with the services of a provider. It uses the name of the provider it integrates with. azure-broker
configurer A one-time task which usually runs as an Init Container in order to configure the application. dex-static-user-configurer

Development

Follow this development guide when you add a new component to the kyma repository.

Expand ▾ Collapse ▴

Directories

Path Synopsis
apiserver-proxy
application-broker
pkg/apis/applicationconnector/v1alpha1
+groupName=applicationconnector.kyma-project.io
+groupName=applicationconnector.kyma-project.io
pkg/client/clientset/versioned
This package has the automatically generated clientset.
This package has the automatically generated clientset.
pkg/client/clientset/versioned/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
pkg/client/clientset/versioned/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
pkg/client/clientset/versioned/typed/applicationconnector/v1alpha1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
pkg/client/clientset/versioned/typed/applicationconnector/v1alpha1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
platform/logger
Package logger is responsible for logging.
Package logger is responsible for logging.
platform/logger/spy
Package spy provides an implementation of go-sdk.logger that helps test logging.
Package spy provides an implementation of go-sdk.logger that helps test logging.
platform/time
Package time provide features which supplements standard time package.
Package time provide features which supplements standard time package.
third_party/machinebox/graphql
Package graphql provides a low level GraphQL client.
Package graphql provides a low level GraphQL client.
event-service
event-sources
apis/sources/v1alpha1
Package v1alpha1 contains the definition of custom API objects.
Package v1alpha1 contains the definition of custom API objects.
client/generated/clientset/internalclientset
This package has the automatically generated clientset.
This package has the automatically generated clientset.
client/generated/clientset/internalclientset/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
client/generated/clientset/internalclientset/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
client/generated/clientset/internalclientset/typed/sources/v1alpha1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
client/generated/clientset/internalclientset/typed/sources/v1alpha1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
reconciler/errors
Package errors contains custom error types and error utilities for reconcilers.
Package errors contains custom error types and error utilities for reconcilers.
reconciler/httpsource
Package httpsource implements a controller for the HTTPSource custom resource.
Package httpsource implements a controller for the HTTPSource custom resource.
reconciler/object
Package object contains utilities for creating and comparing API objects.
Package object contains utilities for creating and comparing API objects.
k8s-dashboard-proxy