go-open-service-broker-client
A golang client for communicating with service brokers implementing the
Open Service Broker API.
Who should use this library?
This library is most interesting if you are implementing an integration
between an application platform and the Open Service Broker API.
Example
import (
osb "github.com/kubernetes-sigs/go-open-service-broker-client/v2"
)
func GetBrokerCatalog(URL string) (*osb.CatalogResponse, error) {
config := osb.DefaultClientConfiguration()
config.URL = URL
client, err := osb.NewClient(config)
if err != nil {
return nil, err
}
return client.GetCatalog()
}
Documentation
This client library supports the following versions of the
Open Service Broker API:
Only fields supported by the version configured for a client are
sent/returned.
Check out the
API specification.
Check out the detailed docs for the v2 client here.
Current status
This repository is used in:
Goals
Overall, to make an excellent golang client for the Open Service Broker API.
Specifically:
- Provide useful insights to newcomers to the API
- Support moving between major and minor versions of the OSB API easily
- Support new auth modes in a backward-compatible manner
- Support alpha features in the Open Service Broker API in a clear manner
- Allow advanced configuration of TLS configuration to a broker
- Provide a fake client suitable for unit-type testing
Goals for the content of the project are:
- Provide high-quality godoc comments
- High degree of unit test coverage
- Code should pass vet and lint checks
Non-goals
This project does not aim to provide:
- A v1 client
- A fake service broker; you may be interested in the OSB starter
pack
- A conformance suite for service brokers; see
osb-checker
for that
- Any 'custom' API features that are not either in a released version of the
Open Service Broker API spec or accepted into the spec but not yet released
Community, discussion, contribution, and support
Learn how to engage with the Kubernetes community on the community page.
You can reach the maintainers of this project at:
Code of conduct
Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.