Releases: servicebinding/runtime
v0.9.0
Highlights
What's Changed
- Migrate to reconciler.io/dies by @scothis in #404
- Bump golang.org/x/tools from 0.19.0 to 0.20.0 in /hack/goimports by @dependabot in #405
- Bump sigs.k8s.io/controller-runtime from 0.17.2 to 0.17.3 by @dependabot in #406
- Bump the kubernetes group with 3 updates by @dependabot in #407
- Bump sigs.k8s.io/controller-tools from 0.14.0 to 0.15.0 in /hack/controller-gen by @dependabot in #412
- Kubernetes 1.30 et al by @scothis in #414
- Bump sigs.k8s.io/controller-runtime from 0.18.0 to 0.18.1 by @dependabot in #415
- Bump sigs.k8s.io/controller-runtime from 0.18.1 to 0.18.2 by @dependabot in #416
- Bump golang.org/x/tools from 0.20.0 to 0.21.0 in /hack/goimports by @dependabot in #417
- Set DefaultMode for projected ProjectedVolumeSource by @scothis in #413
- Test with latest kind node images by @scothis in #418
Full Changelog: v0.8.0...v0.9.0
v0.8.0
Highlights
- Publish servicebinding.io/v1 API by @scothis in #395
- Support configure election timeouts by @ChunyiLyu in #382
What's Changed
- Bump actions/setup-go from 4 to 5 by @dependabot in #368
- Bump actions/setup-python from 4 to 5 by @dependabot in #367
- Bump golang.org/x/tools from 0.16.0 to 0.16.1 in /hack/goimports by @dependabot in #369
- Bump github.com/vmware-tanzu/carvel-kbld from 0.38.1 to 0.38.2 in /hack/kbld by @dependabot in #373
- Bump github.com/go-logr/logr from 1.3.0 to 1.4.0 by @dependabot in #374
- Support configure election timeouts by @ChunyiLyu in #382
- Remove unused controller manager config by @ChunyiLyu in #383
- Bump golang.org/x/tools from 0.16.1 to 0.17.0 in /hack/goimports by @dependabot in #378
- Bump github.com/vmware-tanzu/carvel-kbld from 0.38.2 to 0.39.0 in /hack/kbld by @dependabot in #381
- Bump dies.dev/diegen from 0.9.0 to 0.10.0 in /hack/diegen by @dependabot in #386
- Bump github.com/vmware-labs/reconciler-runtime from 0.15.1 to 0.17.0 by @dependabot in #384
- Bump github.com/go-logr/logr from 1.4.0 to 1.4.1 by @dependabot in #375
- Bump actions/download-artifact from 3 to 4 by @dependabot in #372
- Bump sigs.k8s.io/controller-tools from 0.13.0 to 0.14.0 in /hack/controller-gen by @dependabot in #377
- Bump the kubernetes group with 3 updates by @dependabot in #388
- Bump sigs.k8s.io/controller-runtime from 0.16.3 to 0.17.0 by @dependabot in #379
- Bump codecov/codecov-action from 3 to 4 by @dependabot in #385
- Bump sigs.k8s.io/controller-runtime from 0.17.0 to 0.17.1 by @dependabot in #389
- Bump golang.org/x/tools from 0.17.0 to 0.18.0 in /hack/goimports by @dependabot in #390
- Bump the kubernetes group with 3 updates by @dependabot in #391
- Bump github.com/vmware-labs/reconciler-runtime from 0.17.0 to 0.18.0 by @dependabot in #393
- Bump github.com/google/ko from 0.15.1 to 0.15.2 in /hack/ko by @dependabot in #394
- Bump github.com/stretchr/testify from 1.8.4 to 1.9.0 by @dependabot in #396
- Bump dies.dev from 0.10.0 to 0.10.1 by @dependabot in #398
- Bump golang.org/x/tools from 0.18.0 to 0.19.0 in /hack/goimports by @dependabot in #397
- Bump dies.dev/diegen from 0.10.0 to 0.10.1 in /hack/diegen by @dependabot in #399
- bump kind to v0.22.0 by @sadlerap in #400
- Publish servicebinding.io/v1 API by @scothis in #395
- Bump github.com/vmware-labs/reconciler-runtime from 0.18.0 to 0.19.0 by @dependabot in #401
- Bump the kubernetes group with 3 updates by @dependabot in #403
- Migrate to reconciler.io/runtime by @scothis in #402
New Contributors
- @ChunyiLyu made their first contribution in #382
Full Changelog: v0.7.0...v0.8.0
v0.7.0
Highlights
- Require Go 1.21+ by @scothis in #358
- disable http2 for metrics and webhooks by default by @sadlerap in #356
- Watch status subresource updates to trigger reconcile by @scothis in #364
What's Changed
- Bump github.com/google/ko from 0.14.1 to 0.15.0 in /hack/ko by @dependabot in #353
- Bump the kubernetes group with 2 updates by @dependabot in #354
- Bump sigs.k8s.io/controller-runtime from 0.16.2 to 0.16.3 by @dependabot in #355
- Bump sigs.k8s.io/yaml from 1.3.0 to 1.4.0 by @dependabot in #357
- Require Go 1.21+ by @scothis in #358
- Bump github.com/go-logr/logr from 1.2.4 to 1.3.0 by @dependabot in #359
- Bump github.com/vmware-tanzu/carvel-kbld from 0.38.0 to 0.38.1 in /hack/kbld by @dependabot in #360
- disable http2 for metrics and webhooks by default by @sadlerap in #356
- Bump golang.org/x/tools from 0.14.0 to 0.15.0 in /hack/goimports by @dependabot in #361
- Bump github.com/google/ko from 0.15.0 to 0.15.1 in /hack/ko by @dependabot in #363
- Bump the kubernetes group with 2 updates by @dependabot in #362
- Watch status subresource updates to trigger reconcile by @scothis in #364
- Bump golang.org/x/tools from 0.15.0 to 0.16.0 in /hack/goimports by @dependabot in #365
Full Changelog: v0.6.0...v0.7.0
v0.6.0
Highlights
- Workloads that were, but are no longer targeted by a
ServiceBinding
will now have the projection removed - The
Resolver
andServiceBindingProjector
interfaces are updated to include the fullServiceBinding
resource. The projector must also implement a function,IsProjected
, that indicates if a workload is bound by a particularServiceBinding
.
The are no breaking changes when deployed to a cluster.
What's Changed
- Bump github.com/vmware-tanzu/carvel-kbld from 0.37.5 to 0.37.6 in /hack/kbld by @dependabot in #343
- Bump github.com/vmware-tanzu/carvel-imgpkg from 0.37.3 to 0.37.4 in /hack/imgpkg by @dependabot in #344
- Bump github.com/vmware-tanzu/carvel-imgpkg from 0.37.4 to 0.38.0 in /hack/imgpkg by @dependabot in #347
- Bump github.com/vmware-tanzu/carvel-kbld from 0.37.6 to 0.38.0 in /hack/kbld by @dependabot in #346
- Bump golang.org/x/tools from 0.13.0 to 0.14.0 in /hack/goimports by @dependabot in #349
- Unproject workloads no longer targeted by a ServiceBinding by @scothis in #348
Full Changelog: v0.5.0...v0.6.0
v0.5.0
Highlights
- ✨ Add lifecycle hooks #327
- ✨ Migrate from VMware implementation #336
- 🐛 Restore compatibility with v1alpha3 API #334
Lifecycle Hooks
Lifecycle hooks allow for the Service Binding Reference Implementation to be configured in new ways that we didn't anticipate. An empty hooks object is a conformance validated implementation of the spec. Distribution of the runtime can use the lifecycle hooks to inject a custom resolver or projector to be used to bind services to workloads.
Hooks can also inject callbacks into the lifecycle to manipulate the Workload and ServiceBinding objects either before or after projection. An experimental set of hooks are provided that enable migration from the VMware Service Binding implementation to the reference implementation by cleaning up values and resources created by the legacy implementation in a running cluster. Use of this hook is not supported by the community and should not be used in production without validating its behavior.
What's Changed
- Bump golang.org/x/tools from 0.11.0 to 0.11.1 in /hack/goimports by @dependabot in #308
- Bump sigs.k8s.io/controller-runtime from 0.15.0 to 0.15.1 by @dependabot in #310
- Bump github.com/vmware-labs/reconciler-runtime from 0.12.0 to 0.13.0 by @dependabot in #311
- Bump golang.org/x/tools from 0.11.1 to 0.12.0 in /hack/goimports by @dependabot in #312
- Bump github.com/vmware-tanzu/carvel-imgpkg from 0.37.2 to 0.37.3 in /hack/imgpkg by @dependabot in #313
- Bump gomodules.xyz/jsonpatch/v2 from 2.3.0 to 2.4.0 by @dependabot in #314
- Bump github.com/vmware-labs/reconciler-runtime from 0.13.0 to 0.14.0 by @dependabot in #319
- Bump github.com/vmware-tanzu/carvel-kbld from 0.37.4 to 0.37.5 in /hack/kbld by @dependabot in #315
- Bump sigs.k8s.io/controller-tools from 0.12.1 to 0.13.0 in /hack/controller-gen by @dependabot in #322
- Bump sigs.k8s.io/controller-runtime from 0.15.1 to 0.16.0 by @dependabot in #323
- Group dependabot PRs for k8s.io modules by @scothis in #328
- Bump the kubernetes group with 2 updates by @dependabot in #329
- Bump sigs.k8s.io/controller-runtime from 0.16.0 to 0.16.1 by @dependabot in #330
- Bump actions/checkout from 3 to 4 by @dependabot in #331
- Bump golang.org/x/tools from 0.12.0 to 0.13.0 in /hack/goimports by @dependabot in #332
- Restore v1alpha3 API support by @scothis in #334
- Bump docker/login-action from 2 to 3 by @dependabot in #338
- Bump github.com/vmware-labs/reconciler-runtime from 0.14.0 to 0.15.0 by @dependabot in #340
- Bump sigs.k8s.io/controller-runtime from 0.16.1 to 0.16.2 by @dependabot in #339
- Bump the kubernetes group with 2 updates by @dependabot in #341
- Track selected workloads by @scothis in #335
- Fix TriggerWebhook name by @scothis in #337
- Add lifecycle hooks by @scothis in #327
- Migrate from VMware implementation by @scothis in #336
- Bump github.com/stretchr/testify from 1.8.2 to 1.8.4 by @dependabot in #342
Full Changelog: v0.4.0...v0.5.0
v0.4.0
No significant outward changes for the controller. Lots of dependency updates that can impact consumers of the library.
What's Changed
- Bump golang.org/x/tools from 0.5.0 to 0.6.0 in /hack/goimports by @dependabot in #242
- Bump github.com/vmware-tanzu/carvel-imgpkg from 0.35.0 to 0.36.0 in /hack/imgpkg by @dependabot in #243
- Bump github.com/vmware-labs/reconciler-runtime from 0.11.0 to 0.11.1 by @dependabot in #245
- Default KO_PLATFORMS to only the current arch when kind is the target by @scothis in #244
- Bump k8s.io/api from 0.26.1 to 0.26.2 by @dependabot in #246
- Consistently say
ValidatingWebhookConfiguration
by @mamachanko in #249 - Bump sigs.k8s.io/controller-runtime from 0.14.4 to 0.14.5 by @dependabot in #250
- Bump golang.org/x/tools from 0.6.0 to 0.7.0 in /hack/goimports by @dependabot in #251
- Bump github.com/vmware-tanzu/carvel-kbld from 0.36.4 to 0.37.0 in /hack/kbld by @dependabot in #252
- Bump github.com/google/ko from 0.12.0 to 0.13.0 in /hack/ko by @dependabot in #253
- Bump actions/setup-go from 3 to 4 by @dependabot in #254
- Bump k8s.io/api from 0.26.2 to 0.26.3 by @dependabot in #257
- Bump github.com/vmware-tanzu/carvel-imgpkg from 0.36.0 to 0.36.1 in /hack/imgpkg by @dependabot in #258
- Bump sigs.k8s.io/controller-runtime from 0.14.5 to 0.14.6 by @dependabot in #259
- Bump github.com/go-logr/logr from 1.2.3 to 1.2.4 by @dependabot in #260
- Bump golang.org/x/tools from 0.7.0 to 0.8.0 in /hack/goimports by @dependabot in #262
- Add k8s 1.27 to test matrix by @scothis in #267
- Use go 1.20 by @scothis in #268
- Update conformance suite to latest by @scothis in #272
- Bump sigs.k8s.io/controller-tools from 0.11.3 to 0.11.4 in /hack/controller-gen by @dependabot in #271
- Bump sigs.k8s.io/controller-tools from 0.11.4 to 0.12.0 in /hack/controller-gen by @dependabot in #274
- Bump github.com/vmware-tanzu/carvel-imgpkg from 0.36.1 to 0.36.2 in /hack/imgpkg by @dependabot in #275
- Bump golang.org/x/tools from 0.8.0 to 0.9.0 in /hack/goimports by @dependabot in #277
- Bump github.com/vmware-tanzu/carvel-kbld from 0.37.0 to 0.37.1 in /hack/kbld by @dependabot in #278
- Bump golang.org/x/tools from 0.9.0 to 0.9.1 in /hack/goimports by @dependabot in #279
- ci: bump kind to v0.19.0 by @sadlerap in #276
- bump cert-manager to v1.12.0 by @sadlerap in #282
- Sample using External Secrets Operator by @scothis in #273
- Add missing link for kapp by @scothis in #285
- Run conformance tests in parallel by @scothis in #287
- Bump github.com/vmware-tanzu/carvel-imgpkg from 0.36.2 to 0.37.0 in /hack/imgpkg by @dependabot in #288
- Bump github.com/vmware-tanzu/carvel-imgpkg from 0.37.0 to 0.37.1 in /hack/imgpkg by @dependabot in #289
- Bump golang.org/x/tools from 0.9.1 to 0.9.2 in /hack/goimports by @dependabot in #290
- Adopt upstream breaking changes by @scothis in #261
- Bump github.com/vmware-tanzu/carvel-kbld from 0.37.1 to 0.37.2 in /hack/kbld by @dependabot in #291
- Bump github.com/vmware-tanzu/carvel-imgpkg from 0.37.1 to 0.37.2 in /hack/imgpkg by @dependabot in #295
- Bump golang.org/x/tools from 0.9.2 to 0.9.3 in /hack/goimports by @dependabot in #292
- Bump github.com/vmware-tanzu/carvel-kbld from 0.37.2 to 0.37.3 in /hack/kbld by @dependabot in #294
- ci: upload test results as an artifact by @sadlerap in #293
- Bump conformance to v0.3.1 by @scothis in #296
- Bump github.com/vmware-tanzu/carvel-kbld from 0.37.3 to 0.37.4 in /hack/kbld by @dependabot in #297
- Bump k8s.io/client-go from 0.27.2 to 0.27.3 by @dependabot in #298
- Bump golang.org/x/tools from 0.9.3 to 0.10.0 in /hack/goimports by @dependabot in #301
- Bump golang.org/x/tools from 0.10.0 to 0.11.0 in /hack/goimports by @dependabot in #303
- Bump github.com/google/ko from 0.13.0 to 0.14.1 in /hack/ko by @dependabot in #302
- Bump sigs.k8s.io/controller-tools from 0.12.0 to 0.12.1 in /hack/controller-gen by @dependabot in #304
- Bump k8s.io/client-go from 0.27.3 to 0.27.4 by @dependabot in #306
New Contributors
- @mamachanko made their first contribution in #249
Full Changelog: v0.3.0...v0.4.0
v0.3.0
Reference implementation of the ServiceBinding.io 1.0 spec. The full specification is implemented, please open an issue for any discrepancies.
Install
A Kubernetes cluster with cert-manager installed is required.
To install the Service Binding Runtime with kubectl
, run:
kubectl apply -f https://github.com/servicebinding/runtime/releases/download/v0.3.0/servicebinding-runtime-v0.3.0.yaml
To install the workload resource mappings, run:
kubectl apply -f https://github.com/servicebinding/runtime/releases/download/v0.3.0/servicebinding-workloadresourcemappings-v0.3.0.yaml
Supported Services
Kubernetes defines no provisioned services by default, however, Secrets may be directly referenced.
Additional services can be supported dynamically by defining a ClusterRole.
Supported Workloads
Support for the built-in k8s workload resource is pre-configured including:
- apps
DaemonSet
- apps
Deployment
- apps
ReplicaSet
- apps
StatefulSet
- batch
CronJob
(includes a ClusterWorkloadResourceMapping) - batch
Job
(since Jobs are immutable, the ServiceBinding must be defined and service resolved before the job is created) - core
ReplicationController
Additional workloads can be supported dynamically by defining a ClusterRole and if not PodSpecable, a ClusterWorkloadResourceMapping.
What's Changed
- Unproject using the same mapping used to project the binding by @scothis in #233
- Avoid conflict between controller and webhook for new bindings by @scothis in #164
- Use conformance 0.2 by @scothis in #216
- Test with k8s 1.26 by @scothis in #220
- Update k8s, controller-runtime, reconciler-runtime and dies by @scothis in #227
- Bump go to 1.19 by @scothis in #175
- Test sample app in CI by @scothis in #165
Full Changelog: v0.2.0...v0.3.0
v0.2.0
Reference implementation of the ServiceBinding.io 1.0 spec. The full specification is implemented, please open an issue for any discrepancies.
Install
A Kubernetes cluster with cert-manager installed is required.
To install the Service Binding Runtime with kubectl
, run:
kubectl apply -f https://github.com/servicebinding/runtime/releases/download/v0.2.0/servicebinding-runtime-v0.2.0.yaml
To install the workload resource mappings, run:
kubectl apply -f https://github.com/servicebinding/runtime/releases/download/v0.2.0/servicebinding-workloadresourcemappings-v0.2.0.yaml
Supported Services
Kubernetes defines no provisioned services by default, however, Secrets may be directly referenced.
Additional services can be supported dynamically by defining a ClusterRole.
Supported Workloads
Support for the built-in k8s workload resource is pre-configured including:
- apps
DaemonSet
- apps
Deployment
- apps
ReplicaSet
- apps
StatefulSet
- batch
CronJob
(includes a ClusterWorkloadResourceMapping) - batch
Job
(since Jobs are immutable, the ServiceBinding must be defined and service resolved before the job is created) - core
ReplicationController
Additional workloads can be supported dynamically by defining a ClusterRole and if not PodSpecable, a ClusterWorkloadResourceMapping.
What's Changed
- Runnable samples by @scothis in #146
- Update copyright holder by @scothis in #152
- Build multi-arch controller images by @scothis in #153
- Include cert-manager for local deployment by @baijum in #154
- Restructure readme by @scothis in #155
- Use tag as the release title without any prefix by @baijum in #156
- Drop reinvocationPolicy from ValidatingWebhookConfiguration by @scothis in #158
- Split ClusterWorkloadResourceMappings into a separate file by @scothis in #160
Full Changelog: v0.1.0...v0.2.0
v0.1.1
Reference implementation of the ServiceBinding.io 1.0 spec. The full specification is implemented, please open an issue for any discrepancies.
Install
A Kubernetes cluster with cert-manager installed is required.
To install the Service Binding Runtime with kubectl
, run:
kubectl apply -f https://github.com/servicebinding/runtime/releases/download/v0.1.1/servicebinding-runtime-v0.1.1.yaml
Supported Services
Kubernetes defines no provisioned services by default, however, Secrets may be directly referenced.
Additional services can be supported dynamically by defining a ClusterRole.
Supported Workloads
Support for the built-in k8s workload resource is pre-configured including:
- apps
DaemonSet
- apps
Deployment
- apps
ReplicaSet
- apps
StatefulSet
- batch
CronJob
(includes a ClusterWorkloadResourceMapping) - batch
Job
(since Jobs are immutable, the ServiceBinding must be defined and service resolved before the job is created) - core
ReplicationController
Additional workloads can be supported dynamically by defining a ClusterRole and if not PodSpecable, a ClusterWorkloadResourceMapping.
What's Changed
- Runnable samples by @scothis in #146
- Update copyright holder by @scothis in #152
- Build multi-arch controller images by @scothis in #153
- Include cert-manager for local deployment by @baijum in #154
- Restructure readme by @scothis in #155
- Use tag as the release title without any prefix by @baijum in #156
- Drop reinvocationPolicy from ValidatingWebhookConfiguration by @scothis in #158
Full Changelog: v0.1.0...v0.1.1
v0.1.0
Reference implementation of the ServiceBinding.io 1.0 spec. The full specification is implemented, please open an issue for any discrepancies.
Install
A Kubernetes cluster with cert-manager installed is required.
To install the Service Binding Runtime with kubectl
, run:
kubectl apply -f https://github.com/servicebinding/runtime/releases/download/v0.1.0/servicebinding-runtime-v0.1.0.yaml
Supported Services
Kubernetes defines no provisioned services by default, however, Secrets may be directly referenced.
Additional services can be supported dynamically by defining a ClusterRole.
Supported Workloads
Support for the built-in k8s workload resource is pre-configured including:
- apps
DaemonSet
- apps
Deployment
- apps
ReplicaSet
- apps
StatefulSet
- batch
CronJob
(includes a ClusterWorkloadResourceMapping) - batch
Job
(since Jobs are immutable, the ServiceBinding must be defined and service resolved before the job is created) - core
ReplicationController
Additional workloads can be supported dynamically by defining a ClusterRole and if not PodSpecable, a ClusterWorkloadResourceMapping.
What's Changed
- Bootstrap project using kubebuilder 3.1.0 by @baijum in #1
- Most basic CI by @scothis in #2
- Copy the API schema defined in the spec by @baijum in #3
- Add files required for Kubernetes compliance by @baijum in #4
- Enabled dependabot by @scothis in #6
- Use ginkgo test runner for better output by @baijum in #5
- Avoid duplicate push/pr builds from dependabot by @scothis in #12
- Always use correct tool version by @scothis in #13
- Drop ClusterApplicationResourceMappingReconciler by @scothis in #14
- Use ko to build container image by @scothis in #19
- Ensure generated code is committed by @baijum in #20
- Rename project to service-binding-controller by @baijum in #21
- Rename "Application" to "Workload" by @scothis in #23
- Fix repo path by @baijum in #26
- Publish OCI image and release Kubernetes resources by @baijum in #24
- Add aggregationRule for spec compliance by @baijum in #25
- Update badges and add code coverage by @baijum in #28
- Fix generating coverage profile by @baijum in #30
- Rename
service.binding/v1alpha2
toservicebinding.io/v1alpha3
by @scothis in #34 - Use golang 1.17 by @scothis in #35
- Use dependabot to manage ko version by @scothis in #36
- Use pointer to support empty value by @baijum in #37
- Update repository path to the new location by @baijum in #40
- Update codecov token for new org by @scothis in #43
- Remove GOBIN definition by @scothis in #50
- Create projector package by @scothis in #41
- Add admission webhooks for ServiceBinding resource by @scothis in #51
- Implement Workload Projection by @scothis in #60
- Drop envtest by @scothis in #56
- Tweak coverage reporting by @scothis in #57
- Ignore coverage for generated files by @scothis in #68
- Centralize API resolution logic by @scothis in #67
- Use v1beta1 api, while supporting v1alpha3 by @scothis in #93
- Allow .spec.name to be optional in validation by @sadlerap in #104
- Make controller as internal package by @baijum in #102
- Validate workload selectors by @scothis in #113
- Show bound secret as a printer column by @scothis in #114
- Squashed commit of github.com/scothis/servicebinding-runtime by @scothis in #119
- Add logo for better branding by @baijum in #133
- Fix flag to get help by @baijum in #135
- Adapt to repository rename by @scothis in #137
- Use Service Binding community's Code of Conduct by @baijum in #143
- Implicitly track resources loaded in the resolver by @scothis in #141
New Contributors
- @baijum made their first contribution in #1
- @scothis made their first contribution in #2
- @sadlerap made their first contribution in #104
Full Changelog: https://github.com/servicebinding/runtime/commits/v0.1.0