diff options
Diffstat (limited to 'roles/lib_openshift/library')
| -rw-r--r-- | roles/lib_openshift/library/oc_obj.py | 10 | 
1 files changed, 8 insertions, 2 deletions
diff --git a/roles/lib_openshift/library/oc_obj.py b/roles/lib_openshift/library/oc_obj.py index 215723cc8..5b1039385 100644 --- a/roles/lib_openshift/library/oc_obj.py +++ b/roles/lib_openshift/library/oc_obj.py @@ -1473,7 +1473,12 @@ class OCObject(OpenShiftCLI):      def delete(self):          '''delete the object''' -        return self._delete(self.kind, name=self.name, selector=self.selector) +        results = self._delete(self.kind, name=self.name, selector=self.selector) +        if (results['returncode'] != 0 and 'stderr' in results and +                '\"{}\" not found'.format(self.name) in results['stderr']): +            results['returncode'] = 0 + +        return results      def create(self, files=None, content=None):          ''' @@ -1557,7 +1562,8 @@ class OCObject(OpenShiftCLI):          if state == 'absent':              # verify its not in our results              if (params['name'] is not None or params['selector'] is not None) and \ -               (len(api_rval['results']) == 0 or len(api_rval['results'][0].get('items', [])) == 0): +               (len(api_rval['results']) == 0 or \ +               ('items' in api_rval['results'][0] and len(api_rval['results'][0]['items']) == 0)):                  return {'changed': False, 'state': state}              if check_mode:  | 
