wokflow: add update_workflow proxy method
Change-Id: I939530af74174f6b0db706295a34612bb643ca38
This commit is contained in:
parent
b93ea39ea5
commit
c9c212c81a
@ -15,8 +15,8 @@ Workflow Operations
|
||||
|
||||
.. autoclass:: openstack.workflow.v2._proxy.Proxy
|
||||
:noindex:
|
||||
:members: create_workflow, delete_workflow, get_workflow,
|
||||
find_workflow, workflows
|
||||
:members: create_workflow, update_workflow, delete_workflow,
|
||||
get_workflow, find_workflow, workflows
|
||||
|
||||
Execution Operations
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -33,6 +33,7 @@ class TestWorkflow(base.TestCase):
|
||||
self.assertTrue(sot.allow_fetch)
|
||||
self.assertTrue(sot.allow_list)
|
||||
self.assertTrue(sot.allow_create)
|
||||
self.assertTrue(sot.allow_commit)
|
||||
self.assertTrue(sot.allow_delete)
|
||||
|
||||
def test_instantiate(self):
|
||||
|
@ -37,6 +37,9 @@ class TestWorkflowProxy(test_proxy_base.TestProxyBase):
|
||||
def test_workflow_create(self):
|
||||
self.verify_create(self.proxy.create_workflow, workflow.Workflow)
|
||||
|
||||
def test_workflow_update(self):
|
||||
self.verify_update(self.proxy.update_workflow, workflow.Workflow)
|
||||
|
||||
def test_execution_create(self):
|
||||
self.verify_create(self.proxy.create_execution, execution.Execution)
|
||||
|
||||
|
@ -34,6 +34,21 @@ class Proxy(proxy.Proxy):
|
||||
"""
|
||||
return self._create(_workflow.Workflow, **attrs)
|
||||
|
||||
def update_workflow(self, workflow, **attrs):
|
||||
"""Update workflow from attributes
|
||||
|
||||
:param workflow: The value can be either the name of a workflow or a
|
||||
:class:`~openstack.workflow.v2.workflow.Workflow`
|
||||
instance.
|
||||
:param dict attrs: Keyword arguments which will be used to update
|
||||
a :class:`~openstack.workflow.v2.workflow.Workflow`,
|
||||
comprised of the properties on the Workflow class.
|
||||
|
||||
:returns: The results of workflow update
|
||||
:rtype: :class:`~openstack.workflow.v2.workflow.Workflow`
|
||||
"""
|
||||
return self._update(_workflow.Workflow, workflow, **attrs)
|
||||
|
||||
def get_workflow(self, *attrs):
|
||||
"""Get a workflow
|
||||
|
||||
|
@ -20,6 +20,7 @@ class Workflow(resource.Resource):
|
||||
|
||||
# capabilities
|
||||
allow_create = True
|
||||
allow_commit = True
|
||||
allow_list = True
|
||||
allow_fetch = True
|
||||
allow_delete = True
|
||||
@ -47,7 +48,7 @@ class Workflow(resource.Resource):
|
||||
#: The time at which the workflow was created
|
||||
updated_at = resource.Body("updated_at")
|
||||
|
||||
def create(self, session, prepend_key=True, base_path=None):
|
||||
def _request_kwargs(self, prepend_key=True, base_path=None):
|
||||
request = self._prepare_request(
|
||||
requires_id=False, prepend_key=prepend_key, base_path=base_path
|
||||
)
|
||||
@ -61,9 +62,23 @@ class Workflow(resource.Resource):
|
||||
uri = request.url + scope
|
||||
|
||||
request.headers.update(headers)
|
||||
response = session.post(
|
||||
uri, json=None, headers=request.headers, **kwargs
|
||||
)
|
||||
return dict(url=uri, json=None, headers=request.headers, **kwargs)
|
||||
|
||||
def create(self, session, prepend_key=True, base_path=None):
|
||||
kwargs = self._request_kwargs(
|
||||
prepend_key=prepend_key, base_path=base_path
|
||||
)
|
||||
response = session.post(**kwargs)
|
||||
self._translate_response(response, has_body=False)
|
||||
return self
|
||||
|
||||
def update(self, session, prepend_key=True, base_path=None):
|
||||
kwargs = self._request_kwargs(
|
||||
prepend_key=prepend_key, base_path=base_path
|
||||
)
|
||||
response = session.put(**kwargs)
|
||||
self._translate_response(response, has_body=False)
|
||||
return self
|
||||
|
||||
def commit(self, *args, **kwargs):
|
||||
return self.update(*args, **kwargs)
|
||||
|
3
releasenotes/notes/update_workflow-ecdef6056ef2687b.yaml
Normal file
3
releasenotes/notes/update_workflow-ecdef6056ef2687b.yaml
Normal file
@ -0,0 +1,3 @@
|
||||
features:
|
||||
- |
|
||||
Added ``update_workflow`` to the workflow proxy.
|
Loading…
x
Reference in New Issue
Block a user