Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 1509029 - ServiceBinding reconciliation errors prevent binding from being deleted (unbindable class)
Summary: ServiceBinding reconciliation errors prevent binding from being deleted (unbi...
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Service Broker
Version: 3.7.0
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
: 3.9.0
Assignee: Jay Boyd
QA Contact: Zhang Cheng
Depends On:
TreeView+ depends on / blocked
Reported: 2017-11-02 18:03 UTC by Jay Boyd
Modified: 2018-12-13 19:26 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: No Doc Update
Doc Text:
Clone Of:
: 1510153 (view as bug list)
Last Closed: 2018-12-13 19:26:48 UTC
Target Upstream Version:

Attachments (Terms of Use)

System ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2018:3748 None None None 2018-12-13 19:26:58 UTC

Description Jay Boyd 2017-11-02 18:03:08 UTC
This bug ensures we cover tracking & testing of

If the ServiceBinding is in an error state, it can block deletion of the binding.

Version-Release number of selected component (if applicable):  3.7

How reproducible:  Always

Steps to Reproduce:
I've seen several examples of this:

Reproduction #1.  Go through the walkthrough without starting the service broker.
A. kubectl create -f contrib/examples/walkthrough/ups-broker.yaml
B. kubectl create namespace test-ns
C. kubectl create -f contrib/examples/walkthrough/ups-instance.yaml
D. kubectl create -f contrib/examples/walkthrough/ups-binding.yaml
E. At this point you can't get rid of the binding. Try kubectl delete -n test-ns servicebindings ups-binding
F. The instance can't be deleted either because of the associated binding.

Reproduction #2.  I used a Service Broker that had a non-bindable ClusterServiceClass. I created a binding, but then the controller just kept logging an error like " 'Warning' reason: 'ErrorNonbindableServiceClass' References a non-bindable ClusterServiceClass (K8S: "ab24ffd54da0aefdea5277e0edce8425" ExternalName: "dh-hastebin-apb") and Plan ("default") combination" and I couldn't delete the binding.

I'm kind of lite on the details in #2 but I can reproduce if necessary (OpenShift with the Ansible Service Broker and hastebin service).

I believe another variation of example 1 can be achieved by modifying contrib/examples/walkthrough/ups-instance.yaml to point to a bogus class name.

Comment 1 Jay Boyd 2017-11-02 18:11:11 UTC
partial fix in

Comment 2 Paul Morie 2017-11-06 15:10:45 UTC
Fixed in origin with

Comment 3 Jay Boyd 2017-11-06 19:36:51 UTC
I cloned this bug to 1510153 and split up the 2 error cases.  Error case #1 is moved to 1510153, this bug only covers use case #2 (binding a non-bindable ClusterServiceClass).

Comment 5 Jay Boyd 2017-11-06 20:29:36 UTC
not fixed (I reproduced).  Looks like this requires upstream to be fixed and vendored.


Comment 9 Jay Boyd 2018-01-25 14:53:28 UTC
This is fixed in 3.9 MASTER.

via webconsole, create serviceinstance for Hastebin (APB).

use this ups-binding.yaml:
kind: ServiceBinding
  name: ups-binding
  namespace: proj
    name: dh-hastebin-apb-mwxk2

oc create -f ups-binding.yaml

oc describe servicebindings -n proj ups-binding   shows the binding can not be ready and is in a ready=false status. 

oc delete servicebindings -n proj ups-binding    successfully deletes the binding.

Comment 10 Zhang Cheng 2018-01-26 05:39:33 UTC
I'm changing status to ON_QA since downstream image is ready for test.

Comment 12 Zhang Cheng 2018-01-26 05:42:04 UTC
Remove "needinfo" label since have correct target release at present.

Comment 15 errata-xmlrpc 2018-12-13 19:26:48 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

Note You need to log in before you can comment on or make changes to this bug.