Commit Graph

70 Commits

Author SHA1 Message Date
Ghanshyam Mann ee5b351742 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: I303912894d12be87355f83a1a53be071db94cf84
2024-01-11 16:18:53 -08:00
Takashi Kajinami e2b2008ed9 Remove translation sections from setup.cfg
These translation sections are not needed anymore, Babel can generate
translation files without them.

Change-Id: Ib60671941371aa22fbdeeb9d42fc619f60aa15e5
2023-12-19 22:45:57 +09:00
Hervé Beraud f611370555 Drop python3.6/3.7 support in testing runtime
In Zed cycle testing runtime, we are targetting to drop the
python 3.6/3.7 support, project started adding python 3.8 as minimum,

example nova:
- 56b5aed08c/setup.cfg (L13)

Change-Id: Id23d3845db716d26175d71280dbedf93736d19de
2022-05-05 16:06:49 +02:00
dengzhaosen 76182ec7e7 Update python testing classifier
Yoga testing runtime[1] has been updated to add py39
testing as voting. Unit tests update are handled by the
job template change in openstack-zuul-job

- https://review.opendev.org/c/openstack/openstack-zuul-jobs/+/820286

this commit updates the classifier in setup.cfg file.

[1] https://governance.openstack.org/tc/reference/runtimes/yoga.html

Change-Id: I26743858a0ca7a6e46bda821c8f29b6dff34ea15
2021-12-21 16:53:31 +08:00
yangyawei daca25497c 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: I6e015bf3955e3ff7aa21bc86d3f6f69e0017ca29
2021-05-13 20:29:03 +08:00
Ghanshyam Mann a21c96ec0e [goal] Migrate testing to ubuntu focal
As per victoria cycle testing runtime and community goal[1]
we need to migrate upstream CI/CD to Ubuntu Focal(20.04).

Fixing:
- bug#1886298
Bump the lower constraints for required deps which added python3.8 support
in their later version.

Story: #2007865
Task: #40207

Closes-Bug: #1886298

[1] https://governance.openstack.org/tc/goals/selected/victoria/migrate-ci-cd-jobs-to-ubuntu-focal.h>

Change-Id: Id6b499239fa8b6480c5f67d460215ab458677c6d
2020-09-10 00:46:55 +00:00
Sean McGinnis 243c6a7eda
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: Ibe733cb482501544644133fed494f672ef566b7a
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
2020-04-24 08:23:12 -05:00
Hervé Beraud fed48aea44 Remove the deprecated blocking executor
The blocking executor has been deprecated in Pike and marked for removal
in Rocky, but some user like Mistral asked us to wait before. We decided
to remove this executor for Train or next cycle, now we are in the
Ussuri and after some researchs on usage I think we can go ahead.

This patch drop the deprecation warnings, related unit tests and
set the server with the threading executor is the default executor.

Change-Id: If07bab61ee2b148658b88be98b12f8539f274efe
Closes-Bug: #1715141
2020-02-18 15:49:27 +01:00
Hervé Beraud 32a1b6e948 [ussuri][goal] Drop python 2.7 support and testing
OpenStack is dropping the py2.7 support in Ussuri cycle.

Complete discussion & schedule can be found in
-
http://lists.openstack.org/pipermail/openstack-discuss/2019-October/010142.html
- https://etherpad.openstack.org/p/drop-python2-support

Ussuri Communtiy-wide goal:
https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html

Change-Id: I15cc79159b603e232e442e202c78d6c56dc73252
2020-02-03 18:35:08 +01:00
Corey Bryant 1c31abc7bc Add Python 3 Train unit tests
This is a mechanically generated patch to ensure unit testing is in place
for all of the Tested Runtimes for Train.

See the Train python3-updates goal document for details:
https://governance.openstack.org/tc/goals/train/python3-updates.html

Change-Id: I699a3ee210c4b45018566b520eaf641e0e582362
Story: #2005924
Task: #34234
2019-07-05 14:47:53 -04:00
Ghanshyam Mann 0d4f1d64b6 Dropping the py35 testing
All the integration testing has been moved to
Bionic now[1] and py3.5 is not tested runtime for
Train or stable/stein[2].

As per below ML thread, we are good to drop the py35
testing now:
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/005097.html

[1] http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004647.html
[2]
https://governance.openstack.org/tc/reference/runtimes/stein.html
https://governance.openstack.org/tc/reference/runtimes/train.html

Change-Id: I1874f96f78cb403e6f3a56a49cb83df40d531f8d
2019-04-15 01:14:11 +00:00
Zuul 13fa4f5ab1 Merge "Switch driver to confluent-kafka client library" 2018-12-07 19:59:50 +00:00
ZhongShengping c047f431ea Update mailinglist from dev to discuss
openstack-dev was decomissioned this night in https://review.openstack.org/621258
Update openstack-dev to openstack-discuss

Change-Id: I7d889d3f9a6c95e707ed57dbf5a9cffb1d41ddf5
2018-12-05 09:39:30 +08:00
Andy Smith 5a842ae155 Switch driver to confluent-kafka client library
This patch switches the kafka python client from kafka-python to
confluent-kafka due to documented threading issues with the
kafka-python consumer and the recommendation to use multiplrocessing.
The confluent-kafka client leverages the high performance librdkafka
C client and is safe for multiple thread use.

This patch:
* switches to confluent-kafka library
* revises consumer and producer message operations
* utilizes event.tpool method for confluent-kafka blocking calls
* updates unit tests
* adds kafka specific timeouts for functional tests
* adds release note

Depends-On: Ice374dca539b8ed1b1965b75379bad5140121483
Change-Id: Idfb9fe3700d882c8285c6dc56b0620951178eba2
2018-12-04 11:25:07 -05:00
Hervé Beraud e9ed47f416 always build universal wheels
All of our projects are pure python, so we can build universal wheels by default.

Change-Id: I3369303d278af6154cdcf06b727e8ff941dc410a
2018-10-04 19:56:43 +02:00
Andy Smith f2fd8d4375 Remove the deprecated ZeroMQ driver
Users of the oslo.messaging RPC communications service must use
the rabbit ("rabbit://...") or AMQP 1.0 ("amqp://...") drivers.

Change-Id: If3474142f1fe99d41d7b4466061ed0e23ca38549
Closes-Bug: 1789259
2018-08-28 16:00:50 -04:00
Kenneth Giusti 1231c4cbf2 Move requirements for the optional drivers (amqp1, kafka)
Move the requirements for the optional drivers to
test-requirements.txt and setup.cfg.  The default rabbitmq driver's
dependencies should be the only hard requirements for the base
package.

Leaving ZeroMQ deps unchanged for now as it will be removed in Stein

Change-Id: I19dd699ccf87e43202ccefb99258fbaa9ea17b7e
2018-04-16 10:38:07 -04:00
Kenneth Giusti 222a939361 Remove the deprecated Pika driver
It is recommended that all users of the Pika driver transition to
using the Rabbit driver instead.  Typically this is done by changing
the prefix of the transport_url configuration option from "pika://..."
to "rabbit://...".  There are no changes required to the RabbitMQ
server configuration.

Change-Id: I52ea5ccb7e7c247abd95e2d8d50dac4c4ad11246
Closes-Bug: #1744741
2018-03-21 10:58:23 -04:00
Sean McGinnis 1cbe9361cb Follow the new PTI for document build
For compliance with the Project Testing Interface as described in:

https://governance.openstack.org/tc/reference/project-testing-interface.html

For more detials information, please refer to:

http://lists.openstack.org/pipermail/openstack-dev/2017-December/125710.html

Change-Id: I39b9806013a0912b27c0523dfc2b713b3105bdf1
2018-01-08 12:11:54 -06:00
ChangBo Guo(gcb) 60f9989920 Update URLs in documents according to document migration
Change-Id: I139d4d38e49590d50e51495b6e3b84836975c6ed
2017-07-12 22:54:02 +08:00
Jeremy Stanley 1a036f5b55 Build universal wheels
The trove metadata for this package claims to support both Python
2.x and Py3K; build universal wheels so Python 3.x interpreters can
consume them too.

Change-Id: I0b88fcaa2ea36e1d7478d76b86c6c1f1e68c8616
2017-06-07 14:44:06 +00:00
Stephen Finucane 1251c0fef1 Use Sphinx 1.5 warning-is-error
With pbr 2.0 and Sphinx 1.5, the setting for treat sphinx warnings as
errors is setting warning-is-error in build_sphinx section. Migrate
the setting from the old warnerrors one.

The history document is removed because some of the commit messages used
in ChangeLog were being identified as invalid markup and there doesn't
appear to be anyway to edit there retroactively nor disable warnings on
a specific file.

Change-Id: I79e7ac56d5af1151865686761f3d40a11efbf472
2017-03-16 15:22:18 +00:00
Eric Brown ed2c1e3767 Remove references to Python 3.4
Now that there exists only a gate job for Python 3.5 and not 3.4,
we should remove those references to the 3.4 that is untested.

Change-Id: I2a00ead626d9eced96487ee82b5d7857126d8355
2017-01-13 18:13:32 +00:00
Hu Yupeng 4ba1b594d5 Fix typos in addressing.py and setup.cfg
TrivialFix

Change-Id: I403ede0d11357c76da2432fd14a6b843969c1c17
2016-10-17 15:56:06 +08:00
Gevorg Davoian cb3af2167f [zmq] Maintain several redis hosts
This patch makes it possible to maintain several redis hosts at
once in order to increase driver's reliability and fault tolerance.

Change-Id: Id6f63a4bb67a39340a74d16144c79028c7af245d
2016-10-10 15:13:15 +03:00
avnish 4e38293972 modify the home-page info with the developer documentation
Change-Id: I9b049fe3e0dc68302d0f50cf9c4098a2cfccdac6
2016-09-20 16:31:07 +05:30
Oleksii Zamiatin f61f0c1c1b [zmq] Redis unavailability is not critical
Each time driver couldn't update from Redis
warning message is being logged and work continues
with cached targets state and on existing connections.

Change-Id: I459532f1f60fab1d4c9926e02cdc3c3c6a162047
Closes-Bug: #1610958
2016-08-16 11:29:59 +03:00
Julien Danjou ff9b4bb938 notify: add a CLI tool to manually send notifications
Change-Id: I01ebd8402e322c5c27dc2fc4c61fb5beb2dddae8
2016-07-13 17:30:56 +02:00
ChangBo Guo(gcb) 8e778658e5 Add Python 3.5 classifier and venv
Now that there is a passing gate job, we can claim support for
Python 3.5 in the classifier. This patch also adds the convenience
py35 venv.

Change-Id: I8871f4e17ab806c00661d0c960a216d0a3fc5449
2016-07-12 16:35:36 +08:00
Kenneth Giusti e72a8d5bc4 Reorganize the AMQP 1.0 driver source files
This patch simply moves the existing AMQP 1.0 driver files into a
directory layout that is consistent with the other drivers.  The
driver unit tests are also moved to the proper test directory. There
are no changes in driver functionality or API.

Change-Id: I83a5d5433be8c3b317597100af69192ec5be81f1
Closes-Bug: #1579823
2016-05-13 14:04:37 -04:00
Dmitriy Ukhlov 63de855fef Implements configurable connection factory
new - create new connection each times
single - use single connection for whole transport
read_write - use two connections for whole transport
                    (one for listening and one for sending)

Change-Id: I464c83beb498453b6df2237e7b8022d47ca3fa14
2016-05-12 11:51:26 +03:00
Ronald Bradford 0a7d7f86e2 Remove Beta development status from classifiers
Remove the Beta trove classifier to be in line with other Oslo
projects. While there is a Production/Stable status none of the other
Oslo projects use it.

https://pypi.python.org/pypi?%3Aaction=list_classifiers

Change-Id: I3689c6faf60be49ce2bf19f45e977dd64798954b
2016-05-02 13:43:49 -04:00
Oleksii Zamiatin cc1cb30321 [zmq] Reduce number of connections
In this change 'use_router_proxy' option was added
to switch between direct connections and proxy.

Proxy was reimplemented and splitted onto two
types of proxies:

    * PUBLISHER proxy for fanout pattern
    * ROUTER proxy for direct messaging

Each type of proxy is configured over command line
argument --type.

Deployment guide was updated accordingly to the change.

Change-Id: If36e9c26e2a8ebe622cfa7e9f2a07b1a69aabe34
Closes-Bug: #1555007
2016-03-31 15:40:36 +03:00
Davanum Srinivas 5e0bda3a46 Claim python3 compatability for Newton onwards
The following oslo.messaging changes make sure python3 works:
Id630cb32dc5fe29774ae9e0d2766535906f605bf
I5cd7475618f7a7532db770c2c5c61576a657fbb4
I1f8bb964aef23867a651e192dc355635e36f78a1

This one adds a functional test for py34:
Ibc695762fb12b60a8094be187001dd2bd42f402e

Which is enabled in the gate:
Ifdbd4ab1eae6c5e5364a99906995dff3bb1ff4f0

The following re-enables voting for py34 unit tests:
Ibbcd20d297fdf90ce846f0162329b9410cd6f482

With all the above, we are ready to claim python3 support

Change-Id: Ie89f96cee0eadcad5f84dd0423645b894eec9116
2016-03-24 10:22:59 +00:00
dukhlov 1482687ff7 Move server's logic from executors
Now we have situation when openstack projects like Mistral needs
extra oslo.messaging functionality.

 But it is too complicated now to to implement something new and
 integrate it with current code because there is a little bit mess.
 1) Executor should be responsible for how to run jobs
      (but now also has code with server logic)
 2) Dispatcher should be responsible for routing message to the
     target endpoint for processing (but it also has serialisation, sending replies,
     executing some executor's callbacks etc)
 3) Server should do all server specific logic, we need to have different
      implementation of servers for RPC and notification, not different implementations
      of dispatchers

 This patch fixes 1-st point

Change-Id: Ib6408f408889bb7b7056722be636a5547b1a780d
2016-02-23 15:00:58 +00:00
Victor Stinner d260744773 Remove aioeventlet executor
I wrote the aioeventlet executor as a first step to replace eventlet
with trollius in OpenStack. Sadly, the project of replacing eventlet
with something else (trollius, threads or whatever) looks to be stuck
because of various reasons. See the spec:

    "Replace eventlet + monkey-patching with ??"
    https://review.openstack.org/#/c/164035/

Recently, I deprecated the trollius project in favor of asyncio:

    http://trollius.readthedocs.org/deprecated.html

Since I abandonned my project to replace eventlet with trollius, I
now propose to remove the unused aioeventlet executor from Oslo
Messaging to simplify the code and remove unused dependencies
(especially trollius).

Since the aioeventlet executor is not used by any application, it's
safe to remove it. Removing the executor removes trollius and
aioeventlet dependencies.

... The executor may come back "later" when the first OpenStack
service will start to drop Python 2 support.

For more information on asyncio in OpenStack, see:
http://aioeventlet.readthedocs.org/openstack.html

Note: the executor was added by the change
I7a78ed998719a703077232726f66d882463b1297.

Change-Id: I10d8d7d4134b32e4fc0badfa15e9ffb005910139
2016-02-17 11:27:15 +01:00
Andreas Jaeger e32560e9eb Update translation setup
Follow new infra setup for translations, see spec
http://specs.openstack.org/openstack-infra/infra-specs/specs/translation_setup.html
for full details.

This basically renames
oslo.messaging/locale/oslo.messaging.pot to
oslo_messaging/locale/oslo_messaging.pot. For this we need to update
setup.cfg.

Update also domain name in i18n.py.

Change-Id: Idf5300224f572d29953261ac998e7bf32a12822d
2016-01-29 10:39:35 +00:00
Davanum Srinivas cc0f8cc8a9 Merge remote-tracking branch 'origin/master' into merge-branch
Change-Id: Ice6dcc3867dff6b7fea5647a3b79d1c765bf9d73
2015-12-14 16:21:42 +02:00
Dmitriy Ukhlov bee303cf6f Adds comment for pika_pooler.py
Also this patch:
1) fixed import's order
2) removes PikaDriverCompatibleWithOldRabbit
     (tests, show that after retry implementation all works fine)
Change-Id: Ib34f6db569cadb5c27d8865f13ba32ef9a6c73e9
2015-12-09 19:32:22 +02:00
Komei Shimamura 67c63031f5 Add a driver for Apache Kafka
Adding a driver for Apache Kafka connection, supporting
notification via Kafka. This driver is experimental
until having functional and integration tests

Change-Id: I7a5d8e3259b21d5e29ed3b795d04952e1d13ad08
Implements: blueprint adding-kafka-support
2015-12-01 14:20:33 +00:00
Flavio Percoco 925eb734a9 Remove qpidd's driver from the tree
Back in liberty we marked this driver as deprecated. This patch removes
it from the tree. The patch also removes tests, options and other
references in the documentation. Note that one script is being kept
because it's required by the amqp driver.

Depends-On: If4b1773334e424d1f4a4e112bd1f10aca62682a9
Change-Id: I4a9cba314c4a2f24307504fa7b5427424268b114
2015-11-20 18:43:28 +00:00
Dmitriy Ukhlov ad2f475955 Implements rabbit-pika driver
In this patch new driver implementation added and registered
in setup.cfg, integrated ith tox functional tests.

Implements: bp rabbit-pika

Depends-On: I7bda78820e657b1e97bf888d4065a917eb317cfb
Change-Id: I40842a03ce73d171644c362e3abfca2990aca58a
2015-10-20 15:04:36 +03:00
Jenkins 3a5db723aa Merge "Non-blocking outgoing queue was implemented" 2015-09-30 16:11:29 +00:00
Oleksii Zamiatin 3067dbd198 Non-blocking outgoing queue was implemented
The main issue with eventlet.green.zmq is that libzmq as a C-library
is completely monkey-patch unfriendly. So any blocking call inside
the native library makes calling process stuck. We can't avoid this
actually in an absolutely normal situation when a client appears
earlier than listener we have all client process get stuck until listener
raised. If the listener for example is also blocked awaiting for some
other service to appear we have a chain of locks which may occasionally
result in a dead-lock. The other situation with Notifier is quite similar.

For that reason zmq-broker was restored, but now it serves as an outgoing
queue on a client side. Servers remained the same dynamically port-binded.
Now all clients can still use green-zmq, but presence of the broker-queue
on a host guarantees that green threads will never blocked in a client
because all messages will wait their listeners inside the broker queue.
The broker process's modules are not monkey-patched, they make use of native
threading and native zmq.

Possibility to run without broker also remains. The option zmq_use_broker
introduced for that reason.

Closes-Bug: #1497315

Change-Id: I786b100fd6ee1cf4b99139db0ca044d358d36345
2015-09-28 14:14:53 +03:00
Jenkins 8b52367c53 Merge "Fix the home-page value with Oslo wikipage" 2015-09-25 22:59:29 +00:00
Davanum Srinivas 1893c495f6 Allow custom notification drivers
Our class hierarchy hides classes and modules that so its hard
for folks to write a custom Notification driver. We should
make these public and document them

Closes-Bug: #1426046
Change-Id: Ifb96c2ae9868426cac2700bf4917c27c02c90b15
2015-09-25 10:07:05 -04:00
venkatamahesh 0a4c321ee0 Fix the home-page value with Oslo wikipage
Change-Id: I4b72377329e055096d8636f4734c9272ca8ec3a8
2015-09-25 14:44:50 +05:30
Davanum Srinivas 97892e656a Merge remote-tracking branch 'origin/feature/zmq' into merge-branch
Change-Id: If189d03131efc02045955508cef06fdd2ed590ee
2015-09-15 11:07:44 -04:00
Doug Hellmann c90525bfea Remove oslo namespace package
Blueprint remove-namespace-packages

Cherry-picked from: 03265410e0

Change-Id: Ibaba19ef10b4902c4f4f9fbdf7078e66b75f2035
2015-07-29 11:17:57 +03:00
Doug Hellmann 03265410e0 Remove oslo namespace package
Blueprint remove-namespace-packages

Depends-on: I2eeef93ee2e61a721c69f62add819f93f62f077d
for openstack/ceilometer
Depends-on: I26390dd908769be5f1a5b70be22d3b98e3a45563
for openstack/ceilometermiddleware
Depends-on: Ifa8baab33cdb3e606cf175a8c29c3a4ef6c44480
for openstack/glance
Depends-on: I029c3260051aa48cfaae428c096c1ac7b43b2bd2
for openstack/ceilometermiddleware

Change-Id: I8c5595bbafa82db33f62fa47d214f5cb756a2639
2015-07-16 17:47:16 +00:00