Commit Graph

89 Commits

Author SHA1 Message Date
Takashi Kajinami ac181cec92 Bump hacking
hacking 3.0.x is too old.

Also, fixtures appears in both requirements and test-requirements.
Because this library is only used in oslo_service.fixtures for testing,
we can remove it from runtime requirements.

Change-Id: Iaf57598a73af62e07e890245dc51c9af6a807bd7
2024-01-27 18:49:56 +09:00
Ghanshyam Mann a15c31f297 [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: I8bcf63c3a86670fb322c5258c6b669fa49169f79
2020-08-04 01:24:08 +00:00
Hervé Beraud 7ec1873171 Raise minimum version of eventlet to 0.25.2
Change-Id: I90853e3cd779ed970a382fd2cb75e565651cadec
2020-06-15 17:54:38 +02:00
Hervé Beraud d08727effa Drop six usages
Support of python 2.7 was dropped during the Ussuri cycle so we can now
drop six usages too.

Change-Id: I56a9c0641fd9bce613943ff938d33178d263eedf
2020-05-26 15:20:01 +02:00
Daniel Bengtsson 19517d0bd6 Update eventlet.
Update eventlet to align with others OpenStack projects.

Change-Id: Idb9b8ca280e5fcb90ab9fe29478dda72bf4a82e0
2020-03-09 16:12:12 +01:00
Hervé Beraud 65e2aa81b8 [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: I3ea32bcc39d887d296d70b080a90c536debd91b3
2020-02-03 18:35:41 +01:00
Michael Johnson ca6f839fc4 Update oslo.service to require yappi 1.0 or newer
The versions of yappi less than 1.0 have a bug[1] that causes it
to fail to install[2].
This patch makes sure oslo.service uses version 1.0 of yappi that
contains the fix.

[1] https://github.com/sumerc/yappi/commit/ \
    778829f6f77928e4292e6a7dd4dfecf501f9a362
[2] http://logs.openstack.org/29/637929/2/check/octavia-v2-dsvm-scenario \
    4113e77/controller/logs/dib-build/amphora-x64-haproxy.qcow2_log.txt.gz \
    #_2019-02-19_17_23_37_112

Change-Id: I6b72272dcc524ebab30324446fdeaeb742eddc81
2019-02-21 11:23:12 -08:00
Zuul 471bfe7708 Merge "Bump oslo.utils lower constraint to 3.40.2" 2019-02-19 19:21:07 +00:00
Zuul fdcfd0fcff Merge "Profile Oslo Service processes" 2019-02-11 21:31:19 +00:00
Ben Nemec b6fba59f94 Bump oslo.utils lower constraint to 3.40.2
Prior versions of oslo.utils have known issues with the EventletEvent
class that we use, so we should avoid them.

Change-Id: Id46634bbbd69caa5294c07d2c0da70856c8cba5b
Related-Bug: 1812922
Related-Bug: 1805706
2019-01-23 15:52:31 +00:00
venkata anil a04daefbb1 Profile Oslo Service processes
This patch enables profiling (capturing function call trace like
cProfile [1]) worker processes on the fly while service is running.
User requests the oslo service process to start profiling by writing
"prof()" command to backdoor socket, once the service (like
neutron-server) finishes expected processing (example finishing API
call), user again writes "prof()" command with file name as argument
to dump the function calltrace stats. Stats file (in pstat format
with user provided filename by adding .prof) will be generated in
temp directory.

For example, to profile neutron server process,
1) echo "prof()" | nc localhost 8002
2) Issue neutron command (or run rally scenarios tests)
   neutron net-create n1
   neutron port-create --name p1 n1
   neutron port-delete p1
   neutron net-delete n1
3) echo "prof('neutron')" | nc localhost 8002
where 8002 is the port which we set like below in neutron.conf
backdoor_port=8002

We can later print the stats from the trace file like below
stats = pstats.Stats('/tmp/neutron.prof')
stats.print_stats()
The trace file will look like in (for above neutron API calls) [2].

We use Yappi with context set to greenlet [3] to profile greenlets.
We can't use GreenletProfiler [4], which does the same [5]
1) as it is no more maintained
2) Also compiling yappi source inside GreenletProfiler is failing for
   python3.

[1] https://docs.python.org/2/library/profile.html
[2] https://gist.github.com/venkataanil/64d5e672bf0206dc151e73fc1058a983
[3] https://bitbucket.org/sumerc/yappi/pull-requests/3
[4] https://pypi.org/project/GreenletProfiler/
[5] https://emptysqua.re/blog/greenletprofiler/

Depends-On: Ibea0cdb732923f1b53d5cb6aeeb4041fb5973494
Change-Id: Id2418093494f1e233a653f6c73bd6894e4a40184
2019-01-16 07:38:13 -05:00
Ben Nemec 4c0d4490e8 Use eventletutils Event class
Instead of having a copy-pasted version in this project, let's just
use the original directly. It is added to the public API of
oslo.utils in the dependency.

Depends-On: https://review.openstack.org/614806
Change-Id: If0dfac2505d097c117ef94c99399b1614f1e1f8f
2019-01-10 22:06:11 +00:00
Zane Bitter fef1c1543b Deprecate the ThreadGroup.cancel() API
This API is awkward, inefficient, incoherent, and unintuitive. The bug
fix for which it was originally added was abandoned in favour of a
different approach, so it was never used. It appears that no consumers
are currently calling it. It would be best if none started.

Add a deprecation warning to discourage its use and allow us to remove
it altogether at some point in the future.

Change-Id: I9559c7051024019fac957385faced645920b815c
2018-12-20 11:11:23 +13:00
Eric Fried b85d9353fb Fixture to mock loopingcall wait()
Consumers of loopingcall may wish to exercise their code in test cases
without incurring actual wall clock sleep time in their test runs.
Heretofore, this required digging into the internals of the loopingcall
module and mocking something private (or something hidden by something
private).

This patch exposes a public oslo_service.fixture.SleepFixture for this
purpose. It can be maintained opaquely as internals change without
affecting its consumers.

See [1] for (one example of) the motivation behind this change.

[1] https://review.openstack.org/#/c/615724/

Change-Id: I0089c7778957456db66599abffaaad3a5332243c
2018-11-07 09:34:51 -06:00
Eric Fried 643578c899 Limit monotonic to py2
A recent requirements change [1] restricted monotonic to <py3.3, meaning
that any subsequent change triggering the requirements-check job will
fail until that's synced. Do that.

In order to make this sane, we need to be sure we're only using
monotonic if it's available. In oslo_service.__init__.py, we're using
the actual library if eventlet is. In periodic_task.py we're using the
actual library if the monotonic() method isn't available in the time
module.

[1] Ib8c1bf08f5fa7463911602b0df19315907c81e04

Change-Id: I3b24a089b780aac2746f48f7d5b538546ccce982
2018-11-07 09:22:24 -06:00
Ben Nemec 55e0fd8f71 Remove eventlet cap
This is preventing any testing of projects with the new eventlet
because it causes a requirements conflict.  We need to first remove
the cap in oslo.service in order to move forward with this process.

Change-Id: I1cbd25041981b68a3b2573162cba2f5ea4cb6f85
2018-04-10 15:02:52 +00:00
OpenStack Proposal Bot 2596936104 Updated from global requirements
Change-Id: I3962dd63145ec72b60bc5c9ebfa955afaf441d9e
2018-01-16 12:47:45 +00:00
OpenStack Proposal Bot 3172cb2daf Updated from global requirements
Change-Id: I5cb91020bda1629d3ae5a7988939051b2eddb663
2018-01-16 04:27:56 +00:00
OpenStack Proposal Bot 97044dc5ae Updated from global requirements
Change-Id: Ia65ffce74299095b6403fe3c2ce92c03a57f9212
2017-12-19 01:39:38 +00:00
OpenStack Proposal Bot a4e23ba226 Updated from global requirements
Change-Id: I6395464c34c72376cb6f39b38a79c7f788d27ad9
2017-11-29 09:15:54 +00:00
OpenStack Proposal Bot e3ae10406e Updated from global requirements
Change-Id: Ifc1601a1884c8174828478a5d87a858a526624b8
2017-11-16 11:22:02 +00:00
OpenStack Proposal Bot 2ddce58e40 Updated from global requirements
Change-Id: I2187bf736df18e2f3d3d7740949d01235bffe6da
2017-11-12 21:14:32 +00:00
OpenStack Proposal Bot 1a973c42cf Updated from global requirements
Change-Id: I8026d48914d6d0cb339aa69e8910d999b604c611
2017-09-16 23:22:18 +00:00
OpenStack Proposal Bot 15ebd3725f Updated from global requirements
Change-Id: I7e9f71db1e4bc6cc000ceba5b56ffed5684578ed
2017-09-11 21:47:26 +00:00
OpenStack Proposal Bot 33c3f65ad1 Updated from global requirements
Change-Id: I749cbad1f88a271093ef95f52bf9fe929aad4b6c
2017-08-24 05:58:50 +00:00
OpenStack Proposal Bot c692329035 Updated from global requirements
Change-Id: I21a40f8fdb689a0b9ebe93ccc97aa6c20d974ee4
2017-06-15 16:33:15 +00:00
OpenStack Proposal Bot e353820df2 Updated from global requirements
Change-Id: I044f65adf5873deed593441e584dfa358d01a10a
2017-06-10 13:35:43 +00:00
OpenStack Proposal Bot 64173f9362 Updated from global requirements
Change-Id: If9a390eec35d2e557013b7985de5bfd8b0c94df6
2017-06-02 02:35:21 +00:00
OpenStack Proposal Bot d8fde3225e Updated from global requirements
Change-Id: I566a0a486a820ce8bf1352a9469a766d1e7e2422
2017-05-23 11:58:17 +00:00
OpenStack Proposal Bot ec2820e0c6 Updated from global requirements
Change-Id: I02ffc1d5974d1c5303e155768c7158dfc8e66926
2017-05-20 04:43:25 +00:00
OpenStack Proposal Bot 3be392497a Updated from global requirements
Change-Id: Ic82e1f871905cc3efa4c4cbe47f1582ecf197325
2017-04-01 15:31:57 +00:00
OpenStack Proposal Bot 055119f71f Updated from global requirements
Change-Id: I946fa4d67447d2f1bac19a1989915f95977e5f2a
2017-03-28 21:36:33 +00:00
OpenStack Proposal Bot dd941b0e1c Updated from global requirements
Change-Id: I054d3aa7060947cfc094c703af139b48f996dbb3
2017-03-13 19:40:20 +00:00
OpenStack Proposal Bot d7437925bc Updated from global requirements
Change-Id: I0f0dcaf53fea457bb631afe6f3ff531b5da5fb27
2017-03-01 04:14:56 +00:00
OpenStack Proposal Bot 09d051b9f9 Updated from global requirements
Change-Id: I87c9088a3552d1ef52a64b799e6cadd0d5712326
2016-11-06 02:06:03 +00:00
OpenStack Proposal Bot 6f08d3a2c9 Updated from global requirements
Change-Id: I18ebd25c7b13199f7018789683702518e75c16e7
2016-10-27 12:21:29 +00:00
OpenStack Proposal Bot 91fb906fe5 Updated from global requirements
Change-Id: I2884af124b190861bbb0de6a157074f53eaf5f64
2016-10-12 22:53:01 +00:00
OpenStack Proposal Bot ae4f6fa387 Updated from global requirements
Change-Id: I2f05ade06099d73611bca7443cd52368fc550466
2016-09-21 06:47:52 +00:00
OpenStack Proposal Bot bde278f0b1 Updated from global requirements
Change-Id: I6c8a8cf4140574d53eefbae6e9338eee18ed95c1
2016-08-04 02:40:56 +00:00
OpenStack Proposal Bot 0c3a29d139 Updated from global requirements
Change-Id: I23d935752613451fb3fb4716fa153c0bddf3ea23
2016-07-29 02:34:05 +00:00
OpenStack Proposal Bot 3f39b9bd6c Updated from global requirements
Change-Id: I487c94ab3adb90b72913863ca2701dc87e1af32f
2016-07-09 19:26:06 +00:00
OpenStack Proposal Bot 642127317b Updated from global requirements
Change-Id: I1697e8532610b73c0b900a105a683fccd3f77faf
2016-07-09 03:16:25 +00:00
OpenStack Proposal Bot 84b53e6bcf Updated from global requirements
Change-Id: I752fdfdbefb94498e36092de80003dfc13e28912
2016-06-30 18:48:38 +00:00
OpenStack Proposal Bot 241e19661b Updated from global requirements
Change-Id: Ia82b3b9aebb94f62ba4c8afc1a8801114db8ffdc
2016-06-03 18:18:14 +00:00
OpenStack Proposal Bot d8f46bc74b Updated from global requirements
Change-Id: Ib42132654f642021252e59e10188c01711e364b9
2016-06-01 13:53:27 +00:00
OpenStack Proposal Bot 9143d0cb14 Updated from global requirements
Change-Id: Ia220f15c252b10c549045cb114257cf46b8d5e41
2016-05-31 03:05:32 +00:00
OpenStack Proposal Bot 2e106c6fc1 Updated from global requirements
Change-Id: Ie3c9809458923c7968cf5096d4c55267a42886dc
2016-05-19 18:47:20 +00:00
Joshua Harlow c8499ee28a Remove direct dependency on babel
The dependency on oslo.i18n already forces this requirement.

Change-Id: Ib4386bcb61c95d3a9db96ae08a1d9ecfccd344e8
2016-04-18 13:31:27 -07:00
OpenStack Proposal Bot aa969d3197 Updated from global requirements
Change-Id: Iddcfa71f8ade7c40f08527691c12afbfa93add5d
2016-04-13 12:47:42 +00:00
OpenStack Proposal Bot a0e4a068a5 Updated from global requirements
Change-Id: Ic412fead6397670ac7e1f94352038f380d0b3c3d
2016-04-08 11:47:50 +00:00