Commit Graph

4397 Commits

Author SHA1 Message Date
Vadim Zelenevsky cadfe9dca2 Fix maintence mode
Added MaintenceHook to app configuration
Refactored maintence service
Fixed sql queries
Fix maintence controller

Closes-Bug: #2058009
Signed-off-by: Vadim Zelenevsky <wortellen@gmail.com>
Change-Id: Ica41e8208b29aeba6e781801540843d46375c3d1
2024-04-08 07:24:41 +00:00
Zuul 9a011cb277 Merge "reno: Update master for unmaintained/victoria" 2024-04-08 06:59:33 +00:00
Zuul 288da4d5b0 Merge "reno: Update master for unmaintained/wallaby" 2024-04-08 06:54:13 +00:00
OpenStack Release Bot b18129bb18 reno: Update master for unmaintained/xena
Update the xena release notes configuration to build from
unmaintained/xena.

Change-Id: I38fc12b83cfafd56b2820265413535634a220b27
2024-03-26 17:54:20 +00:00
OpenStack Release Bot 5d09a6d4af reno: Update master for unmaintained/wallaby
Update the wallaby release notes configuration to build from
unmaintained/wallaby.

Change-Id: Ia5121151f341a3d1c99508aedabb148eb4de0a65
2024-03-26 17:52:54 +00:00
OpenStack Release Bot 0ff5fcf11e reno: Update master for unmaintained/victoria
Update the victoria release notes configuration to build from
unmaintained/victoria.

Change-Id: I009d7c8c6113d9f54e4536e3ac73d46ee2fb26fa
2024-03-26 17:51:24 +00:00
Zuul 4446f9ced8 Merge "Python 3.12: cast random delays as int" 2024-03-20 09:29:16 +00:00
Thomas Goirand 2b2c8759d4 Python 3.12: cast random delays as int
This patch fixes 128 unit test failures under Python 3.12 when
building the Debian package under Unstable. Without this patch,
I'm getting:

Traceback (most recent call last):
  File "/usr/lib/python3.12/threading.py", line 1073, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.12/threading.py", line 1010, in run
    self._target(*self._args, **self._kwargs)
  File "/<<PKGBUILDDIR>>/mistral/services/legacy_scheduler.py", line 152, in _loop
    random.Random().randint(0, self._random_delay * 1000) * 0.001
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/random.py", line 336, in randint
    return self.randrange(a, b+1)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/random.py", line 312, in randrange
    istop = _index(stop)
            ^^^^^^^^^^^^
TypeError: 'float' object cannot be interpreted as an integer

Change-Id: Ia85ea13923216d090ef1e4deee7840e70f9185b4
2024-03-19 09:04:43 +01:00
OpenStack Release Bot 726537a7f6 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: I38b1675d714597ef3f45e10ef8059f64647f954d
2024-03-18 08:48:17 +00:00
Zuul 14f40d9a51 Merge "Add back wsgi script generated by setuptools" 2024-03-15 09:07:50 +00:00
Zuul 6e190e65ea Merge "Context versioning feature" 2024-03-14 13:03:26 +00:00
Zuul 39cd97cc04 Merge "Bump hacking" 2024-03-14 12:27:39 +00:00
Oleg Ovcharuk f2cbe1c59d Context versioning feature
With complex parallel joins mistral had no mechanism to choose which
publish (left or right in terms of merge) should it use. It is a
common case when one branch updates existing value, but after merge
we see the old version.
This patch introduce context versioning feature, where every existing
key of mistral context has its version, and this version is used in
the context merge stage.

Change-Id: I604a9a8391150ac4801115b9892f781c33ecfdcb
Signed-off-by: Oleg Ovcharuk <vgvoleg@gmail.com>
2024-03-14 09:25:17 +00:00
Takashi Kajinami 56fe735bc8 Add back wsgi script generated by setuptools
This reverts the removal of wsgi script generated by setuptools.
Directly removing the script is backword-incompatible change for any
deployment tools. The approach is still being discussed in [1]. Until
we determine the consistent solution and appropriate transition plan,
let's at least keep the existing script.

[1] https://review.opendev.org/c/openstack/governance/+/902807

Change-Id: If7e13b39f348938232177c6e1eccf0056227f5b0
2024-03-08 15:09:51 +09:00
OpenStack Release Bot 4e1af08e50 reno: Update master for unmaintained/yoga
Update the yoga release notes configuration to build from
unmaintained/yoga.

Change-Id: I9f47188571fd3abb7fdcc2e734232c4c4fd724a6
2024-02-23 12:20:12 +00:00
Takashi Kajinami 44cd95684b Bump hacking
hacking 3.0.x is too old.

Also remove the note about pip's behavior which was already fixed in
recent versions.

Change-Id: I65d350943649c3346ed5741631c01724ddd256ef
2024-02-19 02:23:53 +09:00
Zuul 08b5a9b7c6 Merge "remove reference to old unittest2" 2024-01-24 00:13:43 +00:00
Takashi Kajinami 0b7c4cd0f6 Move zake to test requirements
The zake library is not actually used by service logic, but it's only
used in testing.

Change-Id: I318a98f4f3034238de808508c000169519c6fa5c
2024-01-22 10:05:16 +09:00
Alexandre Detiste c7f415c974 remove reference to old unittest2
Change-Id: I33dbd537b351b4c93b6fa2442a7a21f898f362cc
2024-01-18 21:39:12 +01:00
Tony Breeds b68c105696 Revert "bump eventlet to latest version that support python 3.12"
This reverts commit e062860442.

Reason for revert: This is too aggressive and needs wider community consultation.  The constraints change is being reverted.

Please revert ASAP.

Change-Id: I162f4a6ac10145a1f7a11e64d69f5f7fb3a111b1
2024-01-17 23:53:17 +00:00
Hervé Beraud e062860442
bump eventlet to latest version that support python 3.12
Change-Id: Ie5bed1492de2200d7df35e0ae320a081d897cdae
2024-01-17 16:04:18 +01:00
Ghanshyam Mann fd7ea49fe8 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: I1af648ca92c9becb64e8408558a0c3222905f318
2024-01-03 23:58:03 -08:00
Zuul 494d210f58 Merge "Deprecate unused [coordination] heartbeat_interval" 2023-12-19 17:58:29 +00:00
Arnaud Morin 814b7dd4e0 Amend doc to help running tempest mistral tests
As a contributor, when we want to manually run devstack mistral
tempest tests, I was struggling remember how to do it.

Signed-off-by: Arnaud Morin <arnaud.morin@ovhcloud.com>
Change-Id: Ie0791dabf26e5864ec7de1f04331bdef0008a8cc
2023-12-14 08:36:42 +00:00
Zuul 973e6ac996 Merge "Add optional healthcheck middleware" 2023-12-14 00:35:55 +00:00
Zuul 6a417dce53 Merge "Add checksum field to wf definition" 2023-12-13 23:31:55 +00:00
Zuul e38cfcbbdf Merge "Partial Workflow Failure Handling" 2023-12-13 23:23:35 +00:00
Zuul cfbea4f743 Merge "Avoid RuntimeError caused by iteration over sys.modules" 2023-12-13 22:58:48 +00:00
Takashi Kajinami f34e250fb5 Deprecate unused [coordination] heartbeat_interval
This option has never been used by actual logic. This deprecates
the ineffective option so that we can remove it in a future release.

Change-Id: I350e45fc9aef28db8790614ade7a5ad3071e574b
2023-12-13 22:47:37 +00:00
Vadim Zelenevsky 7cc007415b Partial Workflow Failure Handling
This feature introduces an enhanced error-handling
mechanism for workflows, allowing them to gracefully
handle issues within individual tasks without
causing a complete workflow failure. Previously,
when using subworkflow and passing an incomplete set
of parameters, the entire workflow would terminate.
With this feature, the workflow continues execution,
isolating errors at the task level. Consequently,
partial issues in one task no longer impact other
branches of workflow execution.

Implements blueprint partial-workflow-failure-handling

Change-Id: Id6a910c85c1d6953408682a2a724c4826333422f
2023-11-29 07:55:38 +00:00
Vadim Zelenevskii ac8b2d0488 Add checksum field to wf definition
We have no way to determine whether the workflow definition has
changed or not.
This complicates the work with Mistral for external services.
A 'checksum' field has been added to workflow_definitions_v2
to solve this issue.

Implements: blueprint mistral-add-checksum-field-to-wf-definition

Change-Id: I99d095c6c74c62f134aedfa3a63308a0712db38d
2023-11-29 07:55:28 +00:00
Arnaud M 5be3de2fd4 Revert "Temporarily disable failing jobs"
This reverts commit 06f9808da3.

Change-Id: Ia97057be1d15913958f151b2007a2720ba78fc5f
Signed-off-by: Arnaud M <arnaud.morin@gmail.com>
2023-11-28 10:19:43 +03:00
Takashi Kajinami 6410ca6518 Avoid RuntimeError caused by iteration over sys.modules
As is described in the doc[1], we should not iterate over sys.modules
directly because sys.modules can be changed during iterations.

[1] https://docs.python.org/3/library/sys.html#sys.modules

Change-Id: Ib6ab36f93b408fdae59c1c08146f2ca069ed4f96
2023-11-28 01:12:35 +00:00
Arnaud M ecdeadeb7a Change the wsgi path for devstack
Since pip 23.1, the wsgi_script from PBR are not installed anymore
(see [1])

So, instead, rely on the wsgi.py app which is directly bundled in
mistral source code.

[1] https://discuss.python.org/t/adding-support-for-wsgi-scripts-entrypoint/30905/11

Change-Id: Ideed8421427e865f8010b7bfca58c3f010ac6bd6
Signed-off-by: Arnaud M <arnaud.morin@gmail.com>
2023-11-14 20:51:51 +01:00
Arnaud Morin e343ccb078 Add api_version for etcd3 coordination URL
Since upgrade of etcd3 (see [1]), the v3aplha endpoint has been
deprecated but tooz commit (see [2]) is not yet released.
Until then, we should force the api_version=v3 to make sure the
coordination between engine is working correctly.

Closes-Bug: #2040048

Signed-off-by: Arnaud Morin <arnaud.morin@ovhcloud.com>
Change-Id: Ieade7a30a192910fc3870b173017efd481f0b18f
2023-11-14 20:51:51 +01:00
Arnaud M ae0289e029 Temporarily disable failing jobs and fix bookworm bindep
Until we fix the mistral-devstack jobs that rely on wsgi, temporarily
disable the failing jobs.

Also, debian prefers Mariadb instead of mysql.
Replace mysql-server with mariadb-server.

Change-Id: I872f73578eb7622cd3d18db29544b5420f55121d
Signed-off-by: Arnaud Morin <arnaud.morin@gmail.com>
2023-11-14 20:50:56 +01:00
OpenStack Release Bot 722b4af6b8 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: Ia97fdc514caa84716f7893ab2416a2f656c1e65c
2023-09-15 13:54:34 +00:00
Zuul 7baff017d0 Merge "Fix test not waiting for action to be created" 2023-07-05 15:39:49 +00:00
Oleg Ovcharuk 5cb9cb74e5 Fix test not waiting for action to be created
Change-Id: I415bb3fbefa91da0e7aaca9fe5d3714989ffda69
Signed-off-by: Oleg Ovcharuk <vgvoleg@gmail.com>
2023-06-28 02:50:10 +03:00
Zuul bbe6b2ff66 Merge "Fix join task not refreshing inbound context" 2023-06-25 20:59:41 +00:00
Vasudeo Nimbekar 51574ef6ef Added maintenance mode
Change-Id: Ie42fcfa96044da1793f1afbff5fb2ae5534d5c2e
2023-05-31 17:31:42 +05:30
Oleg Ovcharuk 6d3018ea01 Fix join task not refreshing inbound context
In error cases join task could lose context of some branches

Change-Id: I58a94c4ebc5d860473c9b48df326f6ea29cba9fa
Closes-Bug: #2020370
Signed-off-by: Oleg Ovcharuk <vgvoleg@gmail.com>
2023-05-24 18:16:59 +03:00
Zuul d6b7f7305d Merge "Starting tasks via RPC" 2023-05-17 09:20:40 +00:00
Zuul 431ece5581 Merge "Info endpoint" 2023-05-17 09:05:03 +00:00
Zuul 114ef3ffb2 Merge "Update master for stable/2023.1" 2023-04-25 20:08:46 +00:00
Takashi Kajinami 1f9f1f3ffb [coordination] backend_url should be secret
The backend_url option can sometimes contain secrets.

For example when redis coordination backend is used and authentication
is enabled in redis, the plain redis password is put as an URL element.

[coordination]
backend_url=redis://:password@127.0.0.1:6379

Change-Id: Ie073d9ac8fd8580f7442370291814d99aad92066
2023-03-20 18:39:45 +09:00
OpenStack Release Bot 0e05d585a0 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: I5525a7f7858696927b9466589fd66d47f418a5b7
2023-03-06 09:21:46 +00:00
Vasudeo Nimbekar 9f52e2b6f3 Starting tasks via RPC
After this patch mistral will run tasks using RPC which will distribute tasks amongst available engine threads. this will enhance performance in case of executing huge executions containing multiple tasks.

Implements: blueprint distribute-mistral-operations

Change-Id: I0b7202589eee68ba5560bf2aa60fbbd6118f3719
2023-02-16 13:19:42 +05:30
Zuul 4289317a91 Merge "Task skipping feature" 2023-02-14 13:22:17 +00:00
Zuul 5e581ee040 Merge "Adding root_execution_id parameter to mistral loggers" 2023-02-14 10:44:01 +00:00