servicebinding-runtime
Description
Experimental implementation of the ServiceBinding.io 1.0 spec using reconciler-runtime. The full specification is implemented, please open an issue for any discrepancies.
Getting Started
You’ll need a Kubernetes cluster to run against. You can use KIND to get a local cluster for testing, or run against a remote cluster.
Note: Your controller will automatically use the current context in your kubeconfig file (i.e. whatever cluster kubectl cluster-info
shows).
Running on the cluster
-
Define where to publish images:
export KO_DOCKER_REPO=<a-repository-you-can-write-to>
For kind, a registry is not required:
export KO_DOCKER_REPO=kind.local/servicebinding
-
Build and Deploy the controller to the cluster:
make deploy
Undeploy controller
Undeploy the controller to the cluster:
make undeploy
Contributing
Test It Out
Run the unit tests:
make test
Modifying the API definitions
If you are editing the API definitions, generate the manifests such as CRs or CRDs using:
make manifests
NOTE: Run make --help
for more information on all potential make
targets
More information can be found via the Kubebuilder Documentation
Acknowledgements
Large chunks of this code base are from the upstream reference implementation for the service binding specification, include the apis, projector and resolver packages. These sources retain the upstream copyright headers
License
Copyright 2022 Scott Andrews.
Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.