Migrate the legacy job to start using our bindep role from zuul-jobs.
This will allow openstack-infra to delete
slave_scripts/install-distro-packages.sh in the future.
Change-Id: I3ac3e49b1c6308398c0e7b38f9a6e7329d049f2f
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
The commands need to be run as root.
Also adds a test job for the docker image build so that zuul will run
the experimental job to test before merging.
Change-Id: I1d1cb6979865d7ef22587315544f39646bc9d49d
Closes-Bug: #1765421
* Evaluation of the final workflow context was an extremely
memory expensive operation in case if we had a lot of task
executions (which are last in their branches) to process
and their inbound context were big (at least a few MB each).
Mistral had to fetch the entire collection of completed
tasks in order to do all required processing.
This patch addresses this problem by using a batch query
approach in conjunction with python generators that allow
GC to destroy bathes of task executions that have already
been processed.
According to the tests (based on test_big_on_closures in
test_direct_workflow.py module) memory footprint is reduced
by 3 times (from 1.5 GB to 0.5 GB when the number of tasks is
500 and each inbound context has 40000 entries) whereas the
total test run time increased only by ~1%.
Change-Id: I1f016a9c0d3add35e2c5059a29a2eca00e45af42
Create a tox environment for running the unit tests against the lower
bounds of the dependencies.
Create a lower-constraints.txt to be used to enforce the lower bounds
in those tests.
Add openstack-tox-lower-constraints job to the zuul configuration.
Update the lower-bounds for a few dependencies to make the tests pass,
including eventlet and greenlet.
Remove the duplicate dependency on pecan.
See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html
for more details.
Change-Id: I74c7cae0ceccd5aff77d5955c69ca842c598d633
Depends-On: https://review.openstack.org/555034
Depends-On: https://review.openstack.org/555402
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
* Previously we stored the data structure describing the current
task execution (id and name) in the inbound task execution context
directly so that it'd be saved to DB. This was needed to evaluate
YAQL/Jinja function task() without parameters properly. However,
it's not needed, we can just build a context view on the fly
just before evaluating an expression.
Change-Id: If523039446ab3e2ccc9542617de2a170168f6e20
Closes-Bug: #1764704
It should be "%s," not just "%,". The error observed was something
like...
ValueError: unsupported format character ',' (0x2c) at index 91
Closes-Bug: #1764696
Change-Id: I601c8640cec857746c2c17f94116da890f4d65e0
* Fixed the implementation of data_flow.evaluate_task_outbound_context
method so that it doesn't use copy.deepcopy() because it may be
very expensive (both CPU and RAM) on big dictionaries.
Change-Id: I6cc77c6ded1e8f00ff164156be9312e1ccb86efb
Change MySQL DB default driver to PyMySQL in
config guide to align with Dockerfile.
And some grammar fixes.
Change-Id: Id4379c7c86e2f8b50341dcbd72f34af834f99261
Closes-Bug: 1762720
Fix `columns` parameter in call to `model_query` when
sqlalchemy.api._get_collection called with insecure to
true, and specific fields defined.
Change-Id: Ib46173d42d794775cfa302856cf9703ce8549389
Closes-Bug: #1763068
Projects should not need to list setuptools as a dependency,
especially when they don't import it directly. The only use here seems
to be in setup.py, and setuptools must already be installed before
that is run anyway since setuptools is what runs it.
Change-Id: I573c3a5981e9f207811f5438c89e94d3c75e13f8
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
We will manage the eventlet version using constraints now. See the
thread starting at
http://lists.openstack.org/pipermail/openstack-dev/2018-April/129096.html
for more details.
This change also removes the redundant entry for eventlet from
test-requirements.txt.
Change-Id: I810741a01614609f86cb792629a253d128029c80
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
Sometimes when mistral requests are failing with "401 Unauthorized"
against keycloak, the reason are not mentioned in the logs.
In case keycloack return 401 it must provide the www-Authenticate
response header with the reason:
https://www.w3.org/Protocols/HTTP/1.0/spec.html#WWW-Authenticate
This code take care of it by adding the WWW-Authenticate value to
mistral api-log.
Change-Id: I7ae221aaeb2233184bd4818490e72ff662dca5cb
Closes-Bug: #1737500
When python-mistralclient filters it passes a dictionary not just the
string. This clears the dictionary and fix the search parameters into
lists for multiple tags to be searched if separeted by commas
like:
openstack workflow list --filter tags=tripleo-common-managed,foo
Change-Id: Ie082901fd7eb8b61a6306da1275a79aeb6c4a6de
Closes-Bug: #1716648
Running the unit tests with lower-constraints.txt fail if the option
is not set explicitly.
Change-Id: Id559b33d1e4ae34eab897e2b4bc14b1b2938d0da
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
Fix bug where setting a dict to state_info did not convert to
JSON format properly.
Change-Id: Ib78d65483dd628e03de2484d3176ab7f275bc9d6
Closes-bug: #1662350
This patch updates cut_list() to ensure that it does not return
more than the number of characters specified in the limit
parameter.
Change-Id: I9dbd061a5ba1976aae9d1acf1e501a3c98782972
Closes-Bug: 1761246
The 'join' example for using a number did not have a proper workflow.
It looks like it was copied from the 'all' example and not completely
changed. Also, disambiguate the wording of the description for that
example. It used the word 'once' in a place where it looked as though
it meant 'one time' instead of 'as soon as'.
Change-Id: I9b89768c0f0b7d325db08ea9345965a9263a64c8
Closes-Bug: #1761827