summaryrefslogtreecommitdiffstats
path: root/roles/lib_openshift/library/oc_clusterrole.py
diff options
context:
space:
mode:
authorKenny Woodson <kwoodson@redhat.com>2017-04-21 09:15:31 -0400
committerGitHub <noreply@github.com>2017-04-21 09:15:31 -0400
commit662aac5d3a46f3eda1f8fc9c9c3196b16671ef18 (patch)
treef83768f80565b590c64abf55392ddc8c89875d5f /roles/lib_openshift/library/oc_clusterrole.py
parent4cbdc7333e55155e87c914f16555a0f0f412f528 (diff)
parent6473004b66fc3ae3b185e38b0d167307a6497d1a (diff)
downloadopenshift-662aac5d3a46f3eda1f8fc9c9c3196b16671ef18.tar.gz
openshift-662aac5d3a46f3eda1f8fc9c9c3196b16671ef18.tar.bz2
openshift-662aac5d3a46f3eda1f8fc9c9c3196b16671ef18.tar.xz
openshift-662aac5d3a46f3eda1f8fc9c9c3196b16671ef18.zip
Merge pull request #3904 from kwoodson/manageiq_idempotencey
[openshift_manageiq] Adding module calls instead of command for idempotency.
Diffstat (limited to 'roles/lib_openshift/library/oc_clusterrole.py')
-rw-r--r--roles/lib_openshift/library/oc_clusterrole.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/roles/lib_openshift/library/oc_clusterrole.py b/roles/lib_openshift/library/oc_clusterrole.py
index a34ce351e..e2cbcfb81 100644
--- a/roles/lib_openshift/library/oc_clusterrole.py
+++ b/roles/lib_openshift/library/oc_clusterrole.py
@@ -1531,10 +1531,10 @@ class Rule(object):
results = []
for rule in inc_rules:
- results.append(Rule(rule['apiGroups'],
- rule['attributeRestrictions'],
- rule['resources'],
- rule['verbs']))
+ results.append(Rule(rule.get('apiGroups', ['']),
+ rule.get('attributeRestrictions', None),
+ rule.get('resources', []),
+ rule.get('verbs', [])))
return results
@@ -1633,7 +1633,7 @@ class OCClusterRole(OpenShiftCLI):
@property
def clusterrole(self):
''' property for clusterrole'''
- if not self._clusterrole:
+ if self._clusterrole is None:
self.get()
return self._clusterrole
@@ -1669,6 +1669,7 @@ class OCClusterRole(OpenShiftCLI):
elif 'clusterrole "{}" not found'.format(self.name) in result['stderr']:
result['returncode'] = 0
+ self.clusterrole = None
return result
@@ -1738,6 +1739,9 @@ class OCClusterRole(OpenShiftCLI):
# Create it here
api_rval = oc_clusterrole.create()
+ if api_rval['returncode'] != 0:
+ return {'failed': True, 'msg': api_rval}
+
# return the created object
api_rval = oc_clusterrole.get()