* Update mistral-lib from branch 'master'
to 1a002b875f9bfb608d8b3df3df05039b44871fde
- Merge "reno: Update master for unmaintained/victoria"
- reno: Update master for unmaintained/victoria
Update the victoria release notes configuration to build from
unmaintained/victoria.
Change-Id: I89634eecf93fbfe9ebcd0cf06235a27e1d3878dd
* Update mistral-lib from branch 'master'
to ab500b73afe270f9f625460d7db2e4cdd02002b3
- reno: Update master for unmaintained/wallaby
Update the wallaby release notes configuration to build from
unmaintained/wallaby.
Change-Id: I8f919410e677cd2ce53ca242bb9b7a5690340c89
* Update mistral-lib from branch 'master'
to b4c15e4e9e279514e5f2c7689c7a049f9ff35539
- Merge "Update python classifier in setup.cfg"
- Update python classifier in setup.cfg
As per the current release tested runtime, we test
python version from 3.8 to 3.11 so updating the
same in python classifier in setup.cfg
Change-Id: Ic44a4103ce1593ba2e318407dd107e32073e60b9
* Update mistral-lib from branch 'master'
to 737e09646f15f4290638c61506fa2fbefcd7571e
- Headers propagation from an execution request to actions/notifications
Currently Mistal doesn`t support distribution tracing, which means
that there`s no way to propagate traceId/spanId from an execution to
related actions/notifications.
It leads us to an issue, because according to distribution tracing
principles "traceId" should remain the same during the discovery
process, which includes Mistral worflow execution.
Proposed solution is to keep some headers from execution request
and propagate them later to actions/notifications.
Regexp can be stored as env variable to define headers which
will be propagated.
Implements blueprint add-headers-propagation
Change-Id: Id8cc900a7d94286e79f1ece4dc4177383263f55c
* Update mistral-lib from branch 'master'
to 5d7fd30ba3548ab60891a0dd7b58edf9e13edc9f
- New fields added to action execution context
* with_items_index describes the current index of action,
if there is no with-items tasks it should be 0.
* task_rerun_no describes the current rerun index,
if it is first run it should be 0.
* task_rerun_id specifies id task has within
each rerun. This id should be refreshed after each rerun.
All these fields will be helpful for writing custom actions
Change-Id: I2b76f5cedcac942e3b6a6e9488ae89024c4f1b34
Signed-off-by: Oleg Ovcharuk <vgvoleg@gmail.com>
* Update mistral-lib from branch 'master'
to cdb47f994ba48a49acc5f3a4b369d1a95191e1cc
- Merge "reno: Update master for unmaintained/yoga"
- reno: Update master for unmaintained/yoga
Update the yoga release notes configuration to build from
unmaintained/yoga.
Change-Id: Icc3eedde6185da5d51336a7aee60a46a557f17be
* Update mistral-lib from branch 'master'
to c6d35ba960d9e5a477c1b6912dd3a8dce52a3e0a
- Update master for stable/2024.1
Add file to the reno documentation build to show release notes for
stable/2024.1.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2024.1.
Sem-Ver: feature
Change-Id: I81e4c62b78668417960feab4d0d7596b0d2dafdc
* Update mistral-lib from branch 'master'
to d11fa81ec5511a2daad35085a7ddbaabed10184e
- Update master for stable/2023.1
Add file to the reno documentation build to show release notes for
stable/2023.1.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2023.1.
Sem-Ver: feature
Change-Id: Ic67f8cc66632f9186309006bddefe8434f6fe491
* Update mistral-lib from branch 'master'
to 4cafa4d4e08369d2877d9406f98d651241e85a51
- Update master for stable/2023.2
Add file to the reno documentation build to show release notes for
stable/2023.2.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2023.2.
Sem-Ver: feature
Change-Id: I8c796af0be2df1289535338270feacf4ca283a4b
* Update mistral-lib from branch 'master'
to 7bbfa4f945a68738dcdae26e5c4f2f4f4a657429
- Fix tox4 error
tox.ini started failing with tox4 which had some
incompatible changes. One of them is to allow
external command to run by adding them into allowlist_externals
and make passenv in new lines.
Fixing tox.ini for tox4 changes.
Change-Id: Id8d5c7bed75b6dc813203d2e814642855d645b6c
* Update mistral-lib from branch 'master'
to 5e509fdee618f0af71bc1a167d5b8cf7fee45c76
- Switch to 2023.1 Python3 unit tests and generic template name
This is an automatically generated patch to ensure unit testing
is in place for all the of the tested runtimes for antelope. Also,
updating the template name to generic one.
See also the PTI in governance [1].
[1]: https://governance.openstack.org/tc/reference/project-testing-interface.html
Change-Id: I0451ef945da71d72e36f783476207d042cc7359a
* Update mistral-lib from branch 'master'
to cb44375ff0abfa194d9588b0c348271bc63a7ace
- Update master for stable/zed
Add file to the reno documentation build to show release notes for
stable/zed.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/zed.
Sem-Ver: feature
Change-Id: Ia1f9cab531180d369af7a52cd439d1854f6c53f0
* Update mistral-lib from branch 'master'
to 18e4c693244254884178908d2126aa702496afa1
- Merge "remove unicode from code"
- remove unicode from code
remove unicode from code
Change-Id: I4a5ecfccac4047803b069034575bda8e3baae985
* Update mistral-lib from branch 'master'
to 7a2d1e9ebf99d53ab1de73ed3e9528ed50588272
- Changed minversion in tox to 3.18.0
The patch bumps min version of tox to 3.18.0 in order to
replace tox's whitelist_externals by allowlist_externals option:
https://github.com/tox-dev/tox/blob/master/docs/changelog.rst#v3180-2020-07-23
Change-Id: Ia2783052dbb9d82aa99ce18e6c60d2580b3ea7db
* Update mistral-lib from branch 'master'
to 38ffc838361f9299070c7bd222d15774aed41915
- Add Python3 zed unit tests
Unfortunately the auto generated patch to replace the unit test job
template was not merged timely, and the test runtime used is outdated.
This simulates the auto generated patch to use the correct test
runtime for the stable/zed release.
This also marks Python 3.9 as supported runtime, because it has been
part of the global tested runtime.
Change-Id: I42608e9c5227a9815ef8dff6f87fd03fe53deba0
* Update mistral-lib from branch 'master'
to 57f635cb292c7855cf335003f96458bb73f98580
- Update master for stable/yoga
Add file to the reno documentation build to show release notes for
stable/yoga.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/yoga.
Sem-Ver: feature
Change-Id: I15cd6ea3ca8e8d486b19a4d16c7f754a7a88a2b6
* Update mistral-lib from branch 'master'
to 44c33f2ccd8b059f68db59114c71ba95dfae574d
- [community goal] Update contributor documentation
This patch updates/adds the contributor documentation to follow
the guidelines of the Ussuri cycle community goal[1].
[1] https://governance.openstack.org/tc/goals/selected/ussuri/project-ptl-and-contrib-docs.html
Story: #2007236
Task: #38537
Change-Id: I4f0f5273a9461d443ac05e41337a6c86ce6250bd
* Update mistral-lib from branch 'master'
to 2068c9ca09eb6ef4792363c5665998c2057e32d4
- setup.cfg: Replace dashes with underscores
Setuptools v54.1.0 introduces a warning that the use of dash-separated
options in 'setup.cfg' will not be supported in a future version [1].
Get ahead of the issue by replacing the dashes with underscores. Without
this, we see 'UserWarning' messages like the following on new enough
versions of setuptools:
UserWarning: Usage of dash-separated 'description-file' will not be
supported in future versions. Please use the underscore name
'description_file' instead
[1] https://github.com/pypa/setuptools/commit/a2e9ae4cb
Change-Id: Icf89656e4c9eeb2fed19dba3b6be78b4716c4fe3
* Update mistral-lib from branch 'master'
to 83b2d7ec4eea8ca07d5c8209a311b9779c702201
- Dropping lower constraints testing
We facing errors related to the new pip resolver, this
topic was discussed on the ML and QA team proposed to
to test lower-constraints [1].
I propose to drop this test because the complexity and recurring pain needed
to maintain that now exceeds the benefits provided by this mechanismes.
[1] http://lists.openstack.org/pipermail/openstack-discuss/2020-December/019390.html
Change-Id: Iccaf7cfb8051ec1b01fde0786489855013297703
* Update mistral-lib from branch 'master'
to adb30bd63ef86bb00431ceccd8c9921c1ed5cec5
- Update master for stable/wallaby
Add file to the reno documentation build to show release notes for
stable/wallaby.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/wallaby.
Sem-Ver: feature
Change-Id: Iefd29ddbbdfddc94ac4412e691422d30a7c3a4e8
* Update mistral-lib from branch 'master'
- Add Python3 wallaby unit tests
This is an automatically generated patch to ensure unit testing
is in place for all the of the tested runtimes for wallaby.
See also the PTI in governance [1].
[1]: https://governance.openstack.org/tc/reference/project-testing-interface.html
Change-Id: Ib6598c988a9ed3a8a3fe66a422eb5e6645de6459
* Update mistral-lib from branch 'master'
- Update master for stable/victoria
Add file to the reno documentation build to show release notes for
stable/victoria.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/victoria.
Change-Id: I6c9797354d70bac6328cd728be2fd0f6896f3a9c
Sem-Ver: feature
* Update mistral-lib from branch 'master'
- Merge "Add more specific description to param_spec"
- Add more specific description to param_spec
Change-Id: I312f1f4b26de31b7a0b6040e371e2e02760728d9
* Update mistral-lib from branch 'master'
- Add main entities related to action providers
* This patch adds the base infrastructure for the new concept
that we call Action Providers. It will allow to refactor
Mistral in a way that all action management will be encapsulated
with action providers. For example, Mistral Engine needs to
schedule actions while processing a workflow. Now it has to
access DB itself to find an action definition (meta info about
what this action is, like python class, input params etc.),
then prepare input parameters, validate parameters and send a
message to an executor to run it. In many other places, Mistral
also directly access DB to fetch an action definition. It's
not flexible because we assume that definitions of Mistral
actions must always be stored in DB. The concept of an Action
Provider allows moving away from that limitation. A particular
implementation of the ActionProvider interface can store action
definitions in any suitable way, even fetching them using
various transport protocols like AMQP, HTTP, TCP, or anything
else. An action provider may also generate action definitions
dynamically, like creating wrappers around a set of operating
system commands. But for the rest of the system it won't matter
what happens inside action providers. All details will be
hidden behind a unified interface.
* Added ActionDescriptor interface and its convenience base
abstract implementation. ActionDescriptor is an entity
representing an action before it's instantiated. It carries
the most important meta information about an action like name,
description, input parameters etc. It is also responsible for
validating action input parameters and instantiating a real
action.
* Added PythonActionDescriptor which represents a regular action
written as a Python class.
* Added CompositeActionProvider that delegates calls find() and
find_all() to a collection of other action providers.
* Minor style changes.
Partially implements: bp/mistral-action-providers
Change-Id: Ic9108c9293731b3576081c75f2786e1156ba0ccd
* Update mistral-lib from branch 'master'
- Merge "drop mock from lower-constraints"
- drop mock from lower-constraints
The mock third party library was needed for mock support in py2
runtimes. Since we now only support py36 and later, we don't need it
in lower-constraints.
These changes will help us to drop `mock` from openstack/requirements
Change-Id: I7f0cc935291e5c0c4f905ad2aa0fb03e6192abb0
* Update mistral-lib from branch 'master'
- Remove misplaced constants describing worklow task types
* These constants have nothing to do with this project. They should
be in the 'mistral' repo.
* Minor style changes.
Change-Id: Ia3f50388638d68bbcc5e2e9e424ddb9dd65b26eb
* Update mistral-lib from branch 'master'
- Switch to newer openstackdocstheme and reno versions
Switch to openstackdocstheme 2.2.1 and reno 3.1.0 versions. Using
these versions will allow especially:
* Linking from HTML to PDF document
* Allow parallel building of documents
* Fix some rendering problems
Update Sphinx version as well.
Disable openstackdocs_auto_name to use 'project' variable as name.
Change pygments_style to 'native' since old theme version always used
'native' and the theme now respects the setting and using 'sphinx' can
lead to some strange rendering.
Remove docs requirements from lower-constraints, they are not needed
during install or test but only for docs building.
openstackdocstheme renames some variables, so follow the renames
before the next release removes them. A couple of variables are also
not needed anymore, remove them.
See also
http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014971.html
Change-Id: I8e00e8863e8c3d86bebeec87e80fc26ad1f66323
* Update mistral-lib from branch 'master'
- Fix hacking min version to 3.0.1
flake8 new release 3.8.0 added new checks and gate pep8
job start failing. hacking 3.0.1 fix the pinning of flake8 to
avoid bringing in a new version with new checks.
Though it is fixed in latest hacking but 2.0 and 3.0 has cap for
flake8 as <4.0.0 which mean flake8 new version 3.9.0 can also
break the pep8 job if new check are added.
To avoid similar gate break in future, we need to bump the hacking min
version.
- http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014828.html
Change-Id: Ief6bc5af5ee7f12053d15a8fb72c0f3e14b671e1
* Update mistral-lib from branch 'master'
- Bump default tox env from py37 to py38
Python 3.8 is now our highest level supported python runtime.
This updates the default tox target environments to swap out
py37 for py38 to make sure local development testing is
covering this version.
This does not impact zuul jobs in any way, nor prevent local
tests against py37. It just changes the default if none is
explicitly provided.
Change-Id: I2106373bc267a780eb600eead17dc12aaddf0dd1
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
* Update mistral-lib from branch 'master'
- Add py38 package metadata
Now that we are running the Victoria tests that include a
voting py38, we can now add the Python 3.8 metadata to the
package information to reflect that support.
Change-Id: I0c0205e7c1673352435aab4d15fe6afcbb80e043
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
* Update mistral-lib from branch 'master'
- Add Python3 victoria unit tests
This is an automatically generated patch to ensure unit testing
is in place for all the of the tested runtimes for victoria.
See also the PTI in governance [1].
[1]: https://governance.openstack.org/tc/reference/project-testing-interface.html
Change-Id: Ia8253f1d86c102c3f65ff346fb7aabdfdcf4f641
* Update mistral-lib from branch 'master'
- Update master for stable/ussuri
Add file to the reno documentation build to show release notes for
stable/ussuri.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/ussuri.
Change-Id: I238df0d6544ef14f683f943ea6eb5f6a0bcfb8e4
Sem-Ver: feature
* Update mistral-lib from branch 'master'
- Add a utility for JSON serialization
* This patch adds a utility that helps serialize data into a JSON
string that might contain some non-standard data types like
generators iterators and frozen dicts coming from YAQL. The
utility uses oslo.serialization project that already takes care
of iterators and any kinds of custom dicts. And in addition, it
handles generators (assuming a generator represents an iterable
similar to an iterator).
* Unit tests.
* Added YAQL into requirements and bumped the version of
oslo.serialization to make sure to have the "fallback" parameter
in "jsonutils.to_primitive"
Change-Id: I2fe891525bc86beb92aecf9ac2d8a490837c47d3
* Update mistral-lib from branch 'master'
- Support getting a file list from a module that isn't mistral
Change-Id: I3157f9de4f2905dbc4f77257abbbc9f65093a63b
* Update mistral-lib from branch 'master'
- Drop py2 support and add zuul jobs
Should be done with a major bump version e.g 2.0.0
Add docs and release zuul jobs
Change-Id: I2ff9881cf074b8d5bc052b1652dbc79b58ac586b
* Update mistral-lib from branch 'master'
- Move inspect utils to mistral-lib
Used also in mistral-extra so let move it to here
Change-Id: Ifa60374818ff3fe6da649d04c84c832b313e90d7
* Update mistral-lib from branch 'master'
- Merge "Ensure we mask sensitive data from Mistral Action logs"
- Ensure we mask sensitive data from Mistral Action logs
Mistral didn't make use of the oslo_utils "mask_password" methods,
leading in sensitive data leakage in its logs.
This patch corrects this security issue.
Note that it depends on oslo_utils patch adding new patterns, and
ensuring it's case-insensitive.
Change-Id: I544d3c172f2dea02c62c49c311c4b5954413ae15
Related-Bug: #1850843
Co-Authored-By: Dougal Matthews <dougal@redhat.com>
Signed-off-by: Cédric Jeanneret <cjeanner@redhat.com>
* Update mistral-lib from branch 'master'
- Merge "tox: Keeping going with docs"
- tox: Keeping going with docs
Sphinx 1.8 introduced [1] the '--keep-going' argument which, as its name
suggests, keeps the build running when it encounters non-fatal errors.
This is exceptionally useful in avoiding a continuous edit-build loop
when undertaking large doc reworks where multiple errors may be
introduced.
[1] https://github.com/sphinx-doc/sphinx/commit/e3483e9b045
Change-Id: I2f1d5655e661188d8809fb2522bd5a10b385e8d2
* Update mistral-lib from branch 'master'
- Update master for stable/train
Add file to the reno documentation build to show release notes for
stable/train.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/train.
Change-Id: Ib64a2d8a084e82d0f2e5b0193c0df36136d697da
Sem-Ver: feature