The oslo_utils.fnmatch module was added to solve an issue in py2.7 but
it is no longer required because py2.7 is no longer supported.
The module was deprecated since oslo.utils 4.9.1[1] and the stdlib's
fnmatch module should be used instead.
[1] 4c893c92f551c9dd2a7cfbe7ae8171ad8139df0b
Change-Id: Ieeb0b127b25d8e95905ca4d81a636f2c2da5f05c
Remove six.moves Replace the following items with Python 3 style code.
- six.moves.urllib
- six.moves.queue
- six.moves.range
- six.moves.http_client
Subsequent patches will replace other six usages.
Change-Id: I80c713546fcc97391c64e95ef708830632e1ef32
With python 3.x, classes can use the metaclass= logic
to not require usage of the six library.
Subsequent patches will replace other six usages.
Change-Id: Iefdc99c338c7aaea18d535426c4676dbedb44f32
This way we can test the service api later on gate
In order to use etcd in gate few changes were made:
* All identifiers must be byte type (group type, member id)
* Tooz has a built-in mechanizm for heartbeat no need to implement it
* Need to use eventlet monkey patch since etcd client uses blocking
methods
* Services name must be identical to LAUNCH_OPTIONS used in cli
* Gate coordination url should be define with a schema of etcd+http
which is the etcd gateway and works better then just etcd
Change-Id: I772651e33eada4a5c2149bfa867095c277eddeed
A previous patch allows to make multiple event_engines to listen
to a single queue, but the RPC calls on CRUD are still synchronous
This patch modifies the calls and broadcasts them on all the event
engines allow them to modify each independent listeners.
Closes-Bug: #1715848
Change-Id: Ia37831a03993f5a1bf980d62344d25377062788d
See Ida361a53ffdb5426a39d276d567391d25261fb7f for a similar fix.
Closes-Bug: #1772897
Depends-On: Ifac7617decc2990ff87b76d39bf0f72a61ff2b99
Change-Id: I06304e83e3bc2fd53110daf5c829824d3614b02e
* Delete trust only after the last execution of
cron-trigger or event-trigger is completed.
Otherwise during workflow execution we get
an error "Unauthorized error: No such trust <id>"
Closes-Bug: #1708139
Change-Id: I42849d4f7c517f8a27e0d26c9cf0d98f9c7fb94a
* Allowed creating via API
* Added the corresponding processing
in the event engine
* Corresponding test
Closes-Bug: #1704111
Change-Id: I73a1d10fe684f1ec962e42e9700064d06cb0bcbe
* Added get event triggers for all projects
and the corresponding rule in policy.json
* Fixed corresponding policy rule names for
event triggers API
Change-Id: I74e65a1cee8d074cfd637e460465922b610237c5
The rpc_backend with kombu and oslo are being used by the executor
and event engine as well. This patch move the rpc_backend up one
level so it's not engine specific. Also Event engine has its own module
and the EventEngine class is defined in the engine module. This patch
moves the EventEngine to it's own base file in the event_engine module.
Implements: blueprint mistral-actions-run-by-engine
Change-Id: Ie814a26e05f5ca6bfba10f20a7d5921836aa7602
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
* Fixed the bug #1622534
* Introduced MistralService class extending oslo.service.Service
that all Mistral components running standalone should extend
* Refactored engine, executor and event engine with MistralService
* Moved most of the startup logic from launch.cmd to individual
corresponding components
* Cluster membership is now under control of MistralService
* Fixed test_join.test_full_join_with_conditions() which previously
had a bug and we were just 'lucky' that it passed due to a
different work of scheduler
* Fixed a number of test cases
* Other minor changes
TODO:
* We now use many launchers (from oslo.service) to launch
services whereas we could use just one which is recommended by
oslo. However, we can't do that because of the api service
that uses many workers. We'll need to look at how to refactor it
moving forward.
* Write tests for MistralService and its derrived classes
* Address a number of TODO comments.
Closes-Bug: 1622534
Change-Id: I34ba6a8b8caf8bea17109e0f259085b373eb6d45