* https://review.openstack.org/524869 moves the intree mistral
tempest plugin to a new home openstack/mistral-tempest-plugin
let's use it.
* It also removed intree mistral tempest plugin as well as fix the
jobs to use the same.
Change-Id: I28ba8408452637aa093b343441f3715dc4754a3f
This disables test_run_ssh_proxied_action. Currently it causes the tests to
fail frequently which makes them less useful and blocks patches incorrectly.
Related-Bug: #1736685
Change-Id: I9bd4cb8f828eca3e3227d8e52ef916191a36b45f
The current version calls the Mistral API, this seems to be unstable.
Using another std action is enough to validate that this works
correctly.
Related-Bug: #1736685
Change-Id: I2ea70b228f3240ed89c3a3d4bd991459a6736f8c
This disables test_create_action_execution_sync.
Doing so allows us to mvoe towards a voting tempest job. We need to come
back and fix or replace this test later.
Related-Bug: #1736685
Change-Id: Icfa134d391476cad6ef925c84e93754d8a625ef2
This disables test_multi_vim_support_target_headers_and_service_catalog.
Doing so allows us to mvoe towards a voting tempest job. We need to come
back and fix or replace this test later.
Related-Bug: #1736685
Change-Id: Ie6a9e67837fb8c6386f915209ecf11974ab052c6
With this filter, it will be possible to find all the workflow
executions started by a root execution.
Implements: blueprint mistral-root-execution-id
Change-Id: Ie18493c8f59f5d77107f0adf5db491b0db05cee2
The Mistral Tempest tests have a hard-coded dependency on Mistral being present
when Tempest tests are executed.
When trying to sparse-checkout the mistral_tempest_tests folder to run
the Mistral tests as a Tempest plugin; it fails due to Mistral not
being installed as some utilities and resources which are written in
the Mistral Tempest tests are being hard referenced from Mistral
being installed in the same environment.
This patch decouples the Mistral Tempest Tests so that they can be executed in
a stand-alone mode along with the necessary resources that are required to
execute the Tempest tests.
Change-Id: Ifd6a3a65a14c4ad4736dccc3e72cd564b6f53a0a
Closes-Bug: #1714732
Google sometimes returns 302 json, causing the test to fail.
This commit switches to httpbin.
New url used in test:
https://httpbin.org/encoding/utf8
Change-Id: I095f468310c58cede509f520feb005901a48c0c6
Allow adding many workflows with the same name.
The way this works is by adding the new workflows under another
namespace.
Notice that:
1. Namespaces are not part of the mistral DSL.
2. When executing a workflow, the namespace passes down to the
subworkflow.
3. When searching for the sub-workflow definition -
If no workflow was found in the given namespace, than the defualt
namespace will be used.
4. The default namespace is an empty string.
5. The namespace property or the workflow execution will be under
params
Partially-Implements: blueprint create-and-run-workflows-within-a-namespace
Change-Id: Id248ec5906a0899d188675d002b45f6249d36d90
Tempest has made 'related_bug' decorator as stable interface.
This commit move the usage accordingly.
Change-Id: I20497d48a46195644a114dd9f6b86aca59303097
Function 'tempest.test.attr()' has moved to 'tempest.lib.decorators
.attr()' in Pike and will be removed in a future version.
This patch replaces the 'tempest.test.attr()' with the 'tempest.lib
.decorators.attr().'
Change-Id: Iba7361382ff3b3d2b055a0507af9a8a88cd4a4ce
This patch removes the redundant setUp() methods in order to
keep the code clean, In the subclass, setUp() methods has no
benefit from that, the one in superclass could satisfy that
Change-Id: I0114e4dcfe99b1c151ce84cace0fecb7952e3ef8
In tempest, alias 'admin_manager' has been moved to 'os_admin'
in version Pike, and it will be removed in version Queens [1].
[1] https://review.openstack.org/#/c/467852/
Change-Id: I9c8890b3e39648fdce01c8f3be9fdc51927dc37a
Since assertEmpty() function has already been implemented,
let's use this function instead of generic assertEqual() function.
This change makes the code and the error messages to be more readable.
Therefore it improves maintainability a little bit.
Change-Id: I953aea98b2aad21552bafcb673d7872334cc99a5
The failure:
http://logs.openstack.org/45/454945/1/check/gate-mistral-devstack-dsvm-ubuntu-xenial-nv/e9daa6e/console.html#_2017-04-08_11_50_48_519100
When populate workflow actions in database, no actual authentication is
made, as a result, for Keystone client, the 'service_catalog' property
value is None. After the patch[1], the 'service_catalog' related
actions won't be inserted into the database and can not be used in
workflow definition.
This change removes 'service_catalog' related actions from the mapping
file and modify the keystone action test case accordingly.
Change-Id: I469d38cad165b57690c43db485f86e898f08de06
We already supported role based api access control, this series patches
will implement resource access control for mistral, so that
administrator could define the rules of resource accessibility, e.g.
admin user could get/delete/update the workflows of other tenants
according to the policy.
Delete executions by admin already supported after following patch
merged: https://review.openstack.org/#/c/451160/
This patch adds some tests.
Partially implements: blueprint mistral-rbac
Change-Id: I918708d5bf76abdf2c2c08bb147fa50bd715f526
1.As mentioned in [1], we should avoid using six.iteritems to achieve
iterators. We can use dict.items instead, as it will return iterators
in PY3 as well. And dict.items/keys will more readable.
2.In py2, the performance about list should be negligible, see the
link [2].
[1] https://wiki.openstack.org/wiki/Python3
[2] http://lists.openstack.org/pipermail/openstack-dev/2015-June/066391.html
Change-Id: I79c7bd34c37ef5bd9e789ccdb24e04bc547e5027
Sometimes action result is present not in "utf-8", it cases
to "UnicodeDecodeError: 'utf8' codec can't decode byte" so
need to pass proper encoding format in serialiser and deserialiser
if it is different from default, but it should be resolved in
general as a fix for another bug (#1676411).
As a hotfix for linked bug, encoding was changed in the
run Http action method directly.
Also default encoding value in the FakeHTTPResponse was changed
from 'utf8' to 'utf-8' like in official python request lib docs.
Change-Id: I0ab9ec84c0973f362b57ab82248f27768a984678
Closes-Bug: #1667415
The following style checks are added:
* do not use dict.iteritems
* do not use dict.iterkeys
* do not use dict.itervalues
Partial_implements: blueprint mistral-hacking
Change-Id: I25d846c80652d7746c3b958239797ce524ec235f
The idempotent_id decorator allows for tracking of tests even
after they have been renamed [1]. This patch adds idempotent_id
decorator to api related testcases for mistral_tempest_tests.
[1] https://github.com/openstack/tempest/blob/master/
HACKING.rst#test-identification-with-idempotent-id
Change-Id: I70f5ec2e18fd0845b7189b26cb40b9b260126146
Partial-Implements: blueprint add-idempotentid
The idempotent_id decorator allows for tracking of tests even
after they have been renamed [1]. This patch adds idempotent_id
decorator to scenario related testcases for mistral_tempest_tests.
[1] https://github.com/openstack/tempest/blob/master/
HACKING.rst#test-identification-with-idempotent-id
Change-Id: I955cd8b063b5a5d7d94cbd769b93521e35c9649b
Partial-Implements: blueprint add-idempotentid
The ActionTestsV2.test_get_list_actions_greater_than_filter test will
fail if the system running the tests has a TZ that is behind UTC. By
using utcnow(), it will compare the times correctly.
Change-Id: I0bf6cadac9c3f01681e603b9c77c55ba87029dbd
Modify some codes in order to make them meet
the Python3 common pattern.
In this patch,I replace filter(lambda obj: test(obj),data)
with[obj for obj in data if test(obj)]
Change-Id: I68e76f91dc31aa0e00124c1eb76a0a1f0178cc44
We already supported role based api access control, this series patches
will implement resource access control for mistral, so that
administrator could define the rules of resource accessibility, e.g.
admin user could get/delete/update the workflows of other tenants
according to the policy.
TODO:
- Implement update workflow by admin
- Implement delete workflow by admin
- Implement for other resources(workfbook/execution/task/action, etc.)
Partially implements: blueprint mistral-rbac
Change-Id: I8b00e8a260a74457ad037ee7322a7cba9ae34fab
1.As mentioned in [1], we should avoid using
six.iteritems to achieve iterators. We can
use dict.items instead, as it will return
iterators in PY3 as well. And dict.items/keys
will more readable. 2.In py2, the performance
about list should be negligible, see the link [2].
[1] https://wiki.openstack.org/wiki/Python3
[2] http://lists.openstack.org/pipermail/openstack-dev/2015-June/066391.html
Change-Id: Iff88f55dc51981ce502d7d3e67c467242980f20c
As of now, UUID is being generated using either uuid.uuid4()
or uuidutils.generate_uuid(). In order to maintain consistency,
we propose to use uuidutils.generate_uuid() from oslo_utils.
Change-Id: I620cb1f396ce011b9846ff2dad2c9811bc5d0652
Closes-Bug: #1082248
In order for a user to know if the task execution is
of type workflow execution or action execution,
the type should be returned in the API
Partially implements: blueprint mistral-task-subexecutions-endpoint
Change-Id: I9ff474797df0f9cbbddfeda3292d582dfeb2b702
Service available group already exists.Therefore we don't need to
register this group here again.
Change-Id: I570cb7c1d2e13318a102b9f01a85fd24ffb89f9a
Closes-Bug: #1621036