remote-environment-broker/

directory
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 8, 2018 License: Apache-2.0

README

Remote Environment Broker

Overview

The Remote Environment Broker (REB) provides remote environments in the Service Catalog. A remote environment represents the environment connected to the Kyma instance. The REB implements the Service Broker API.

The REB fetches all the remote environments' custom resources and exposes their APIs and Events as service classes to the Service Catalog. When the remote environments list is available in the Service Catalog, you can provision those service classes and enable Kyma services to use them.

For more details about provisioning, deprovisioning, binding, and unbinding, see the Service Broker API documentation.

Prerequisites

You need the following tools to set up the project:

  • The 1.9 or higher version of Go
  • The latest version of Docker
  • The latest version of Dep

Details

The Remote Environment Broker converts the RemoteEnvironment Custom Resource to the Open Service Broker API Service Object. All fields are mapped one-to-one except from the name and metadata.providerDisplayName properties.

The pattern for the metadata.providerDisplayName property is as follows:

{RemoteEnvironment.Service.ProviderDisplayName} - {RemoteEnvironment.Name}

It enables you to easily distinguish different remote environments from the same provider.

The pattern for the name property is as follows:

{NORMALIZED_DISPLAY_NAME}-{FIST_FIVE_CHARARACTERS_OF_SHA_FROM_SERVICE_ID}

After normalization, the displayName contains only lowercase characters, numbers and hyphens.

Development

Before each commit, use the before-commit.sh script, which tests your changes.

Code generation

Structs related to Custom Resource Definitions are defined in pkg/apis/remoteenvironment/v1alpha1/types.go and registered in pkg/apis/remoteenvironment/v1alpha1/. After making any changes there, please run:

./hack/update-codegen.sh

Directories

Path Synopsis
cmd
access/automock
Code generated by mockery v1.0.0
Code generated by mockery v1.0.0
broker/automock
Code generated by mockery v1.0.0
Code generated by mockery v1.0.0
labeler/automock
Code generated by mockery v1.0.0
Code generated by mockery v1.0.0
storage/populator/automock
Code generated by mockery v1.0.0
Code generated by mockery v1.0.0
storage/testing
Package testing provides test functions for storage.
Package testing provides test functions for storage.
syncer/automock
Code generated by mockery v1.0.0
Code generated by mockery v1.0.0
pkg
apis/remoteenvironment/v1alpha1
+groupName=remoteenvironment.kyma.cx
+groupName=remoteenvironment.kyma.cx
client/clientset/versioned
This package has the automatically generated clientset.
This package has the automatically generated clientset.
client/clientset/versioned/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
client/clientset/versioned/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
client/clientset/versioned/typed/remoteenvironment/v1alpha1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
client/clientset/versioned/typed/remoteenvironment/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.
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.
time
Package time provide features which supplements standard time package.
Package time provide features which supplements standard time package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL