python-watcher 13.0.0__py3-none-any.whl → 14.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. {python_watcher-13.0.0.dist-info → python_watcher-14.0.0.dist-info}/AUTHORS +10 -0
  2. {python_watcher-13.0.0.dist-info → python_watcher-14.0.0.dist-info}/METADATA +51 -51
  3. {python_watcher-13.0.0.dist-info → python_watcher-14.0.0.dist-info}/RECORD +116 -114
  4. {python_watcher-13.0.0.dist-info → python_watcher-14.0.0.dist-info}/WHEEL +1 -1
  5. {python_watcher-13.0.0.dist-info → python_watcher-14.0.0.dist-info}/entry_points.txt +0 -1
  6. python_watcher-14.0.0.dist-info/pbr.json +1 -0
  7. watcher/api/controllers/v1/action.py +5 -5
  8. watcher/api/controllers/v1/action_plan.py +4 -5
  9. watcher/api/controllers/v1/audit.py +12 -11
  10. watcher/api/controllers/v1/audit_template.py +5 -5
  11. watcher/api/controllers/v1/data_model.py +1 -0
  12. watcher/api/controllers/v1/goal.py +3 -2
  13. watcher/api/controllers/v1/scoring_engine.py +1 -0
  14. watcher/api/controllers/v1/service.py +2 -1
  15. watcher/api/controllers/v1/strategy.py +2 -1
  16. watcher/api/controllers/v1/types.py +1 -0
  17. watcher/api/controllers/v1/webhooks.py +1 -0
  18. watcher/api/hooks.py +1 -0
  19. watcher/api/middleware/auth_token.py +1 -0
  20. watcher/applier/actions/base.py +2 -1
  21. watcher/applier/workflow_engine/default.py +1 -0
  22. watcher/cmd/__init__.py +12 -10
  23. watcher/common/cinder_helper.py +2 -2
  24. watcher/common/clients.py +0 -25
  25. watcher/common/context.py +3 -0
  26. watcher/common/exception.py +4 -0
  27. watcher/common/keystone_helper.py +2 -2
  28. watcher/common/nova_helper.py +6 -11
  29. watcher/common/policy.py +0 -8
  30. watcher/common/scheduling.py +22 -7
  31. watcher/common/service.py +2 -1
  32. watcher/common/service_manager.py +14 -7
  33. watcher/conf/__init__.py +2 -2
  34. watcher/conf/applier.py +1 -1
  35. watcher/conf/prometheus_client.py +62 -0
  36. watcher/db/sqlalchemy/alembic/env.py +2 -2
  37. watcher/db/sqlalchemy/api.py +89 -106
  38. watcher/db/sqlalchemy/job_store.py +2 -6
  39. watcher/db/sqlalchemy/migration.py +3 -3
  40. watcher/db/sqlalchemy/models.py +0 -8
  41. watcher/decision_engine/audit/continuous.py +8 -7
  42. watcher/decision_engine/datasources/base.py +2 -2
  43. watcher/decision_engine/datasources/gnocchi.py +7 -7
  44. watcher/decision_engine/datasources/grafana.py +4 -3
  45. watcher/decision_engine/datasources/grafana_translator/influxdb.py +4 -4
  46. watcher/decision_engine/datasources/manager.py +22 -18
  47. watcher/decision_engine/datasources/monasca.py +3 -3
  48. watcher/decision_engine/datasources/prometheus.py +512 -0
  49. watcher/decision_engine/goal/efficacy/indicators.py +2 -1
  50. watcher/decision_engine/model/collector/base.py +5 -4
  51. watcher/decision_engine/model/collector/cinder.py +1 -0
  52. watcher/decision_engine/model/collector/ironic.py +1 -0
  53. watcher/decision_engine/model/collector/nova.py +3 -3
  54. watcher/decision_engine/model/element/base.py +1 -1
  55. watcher/decision_engine/model/model_root.py +1 -1
  56. watcher/decision_engine/model/notification/base.py +2 -1
  57. watcher/decision_engine/solution/base.py +2 -1
  58. watcher/decision_engine/strategy/selection/default.py +2 -2
  59. watcher/decision_engine/strategy/strategies/host_maintenance.py +1 -1
  60. watcher/decision_engine/strategy/strategies/noisy_neighbor.py +2 -2
  61. watcher/decision_engine/strategy/strategies/uniform_airflow.py +1 -1
  62. watcher/decision_engine/strategy/strategies/zone_migration.py +3 -3
  63. watcher/decision_engine/threading.py +2 -2
  64. watcher/eventlet.py +41 -0
  65. watcher/hacking/checks.py +5 -5
  66. watcher/objects/action_plan.py +6 -4
  67. watcher/tests/__init__.py +8 -1
  68. watcher/tests/api/test_hooks.py +0 -1
  69. watcher/tests/api/test_scheduling.py +4 -3
  70. watcher/tests/api/utils.py +3 -1
  71. watcher/tests/api/v1/test_actions.py +5 -4
  72. watcher/tests/api/v1/test_actions_plans.py +5 -4
  73. watcher/tests/api/v1/test_audit_templates.py +5 -4
  74. watcher/tests/api/v1/test_audits.py +9 -6
  75. watcher/tests/api/v1/test_data_model.py +1 -1
  76. watcher/tests/api/v1/test_strategies.py +1 -1
  77. watcher/tests/common/metal_helper/test_maas.py +1 -1
  78. watcher/tests/common/test_scheduling.py +68 -0
  79. watcher/tests/common/test_utils.py +52 -52
  80. watcher/tests/conf/test_list_opts.py +1 -1
  81. watcher/tests/db/base.py +13 -11
  82. watcher/tests/db/utils.py +1 -1
  83. watcher/tests/decision_engine/audit/test_audit_handlers.py +9 -8
  84. watcher/tests/decision_engine/datasources/test_manager.py +5 -5
  85. watcher/tests/decision_engine/datasources/test_prometheus_helper.py +643 -0
  86. watcher/tests/decision_engine/model/faker_cluster_and_metrics.py +2 -2
  87. watcher/tests/decision_engine/model/notification/test_cinder_notifications.py +2 -2
  88. watcher/tests/decision_engine/planner/test_weight_planner.py +3 -3
  89. watcher/tests/decision_engine/planner/test_workload_stabilization_planner.py +3 -3
  90. watcher/tests/decision_engine/strategy/strategies/test_base.py +4 -4
  91. watcher/tests/decision_engine/strategy/strategies/test_basic_consolidation.py +0 -4
  92. watcher/tests/decision_engine/strategy/strategies/test_noisy_neighbor.py +1 -5
  93. watcher/tests/decision_engine/strategy/strategies/test_outlet_temp_control.py +0 -4
  94. watcher/tests/decision_engine/strategy/strategies/test_uniform_airflow.py +0 -4
  95. watcher/tests/decision_engine/strategy/strategies/test_vm_workload_consolidation.py +0 -4
  96. watcher/tests/decision_engine/strategy/strategies/test_workload_balance.py +0 -4
  97. watcher/tests/decision_engine/strategy/strategies/test_workload_stabilization.py +0 -4
  98. watcher/tests/decision_engine/strategy/strategies/test_zone_migration.py +3 -3
  99. watcher/tests/decision_engine/test_sync.py +7 -7
  100. watcher/tests/notifications/test_service_notifications.py +2 -2
  101. watcher/tests/objects/test_action.py +8 -8
  102. watcher/tests/objects/test_action_description.py +7 -7
  103. watcher/tests/objects/test_action_plan.py +12 -12
  104. watcher/tests/objects/test_audit.py +14 -14
  105. watcher/tests/objects/test_audit_template.py +10 -10
  106. watcher/tests/objects/test_goal.py +7 -7
  107. watcher/tests/objects/test_objects.py +9 -10
  108. watcher/tests/objects/test_scoring_engine.py +7 -7
  109. watcher/tests/objects/test_service.py +7 -7
  110. python_watcher-13.0.0.dist-info/pbr.json +0 -1
  111. watcher/conf/ceilometer_client.py +0 -63
  112. watcher/decision_engine/datasources/ceilometer.py +0 -276
  113. watcher/tests/decision_engine/model/ceilometer_metrics.py +0 -319
  114. {python_watcher-13.0.0.data → python_watcher-14.0.0.data}/data/etc/apache2/watcher +0 -0
  115. {python_watcher-13.0.0.data → python_watcher-14.0.0.data}/data/etc/watcher/README-watcher.conf.txt +0 -0
  116. {python_watcher-13.0.0.data → python_watcher-14.0.0.data}/data/etc/watcher/oslo-config-generator/watcher.conf +0 -0
  117. {python_watcher-13.0.0.data → python_watcher-14.0.0.data}/data/etc/watcher/oslo-policy-generator/watcher-policy-generator.conf +0 -0
  118. {python_watcher-13.0.0.data → python_watcher-14.0.0.data}/scripts/watcher-api-wsgi +0 -0
  119. {python_watcher-13.0.0.dist-info → python_watcher-14.0.0.dist-info}/LICENSE +0 -0
  120. {python_watcher-13.0.0.dist-info → python_watcher-14.0.0.dist-info}/top_level.txt +0 -0
@@ -17,6 +17,7 @@ Bruno Grazioli <bwg_bruno@hotmail.com>
17
17
  BubaVV <vmarkov@mirantis.com>
18
18
  Béla Vancsics <vancsics@inf.u-szeged.hu>
19
19
  Cao Xuan Hoang <hoangcx@vn.fujitsu.com>
20
+ Chandan Kumar (raukadah) <chkumar@redhat.com>
20
21
  ChangBo Guo(gcb) <eric.guo@easystack.cn>
21
22
  Chaozhe.Chen <chaozhe.chen@easystack.cn>
22
23
  Chris MacNaughton <chris.macnaughton@canonical.com>
@@ -28,6 +29,8 @@ Dao Cong Tien <tiendc@vn.fujitsu.com>
28
29
  Darren Shaw <ds354m@att.com>
29
30
  David TARDIVEL <David.TARDIVEL@b-com.com>
30
31
  Doug Hellmann <doug@doughellmann.com>
32
+ Douglas Viroel <dviroel@redhat.com>
33
+ Douglas Viroel <viroel@gmail.com>
31
34
  Drew Thorstensen <thorst@us.ibm.com>
32
35
  Edwin Zhai <edwin.zhai@intel.com>
33
36
  Egor Panfilov <erakli00@gmail.com>
@@ -50,6 +53,7 @@ James E. Blair <jeblair@redhat.com>
50
53
  James Page <james.page@canonical.com>
51
54
  Jean-Emile DARTOIS <jean-emile.dartois@b-com.com>
52
55
  Jeremy Liu <liujiong@gohighsec.com>
56
+ Jiri Podivin <jpodivin@redhat.com>
53
57
  Joe Cropper <jwcroppe@us.ibm.com>
54
58
  Ken'ichi Ohmichi <ken-oomichi@wx.jp.nec.com>
55
59
  Kevin_Zheng <zhengzhenyu@huawei.com>
@@ -63,6 +67,7 @@ Luigi Toscano <ltoscano@redhat.com>
63
67
  Luong Anh Tuan <tuanla@vn.fujitsu.com>
64
68
  M V P Nitesh <m.nitesh@nectechnologies.in>
65
69
  Margarita Shakhova <mbshakhova.sbt@sberbank.ru>
70
+ Martin Kopec <mkopec@redhat.com>
66
71
  Matt Riedemann <mriedem.os@gmail.com>
67
72
  Michael Gugino <michael.gugino@walmart.com>
68
73
  Michelle Mandel <mmandel@us.ibm.com>
@@ -79,9 +84,11 @@ Prashanth Hari <prashanth.hari@walmart.com>
79
84
  Prudhvi Rao Shedimbi <prudhvi.rao.shedimbi@intel.com>
80
85
  Q.hongtao <qihongtao@inspur.com>
81
86
  Ralf Rantzau <rrantzau@cisco.com>
87
+ Ronelle Landy <rlandy@redhat.com>
82
88
  Sampath Priyankara <sam47priya@gmail.com>
83
89
  Santhosh Fernandes <santhosh.fernandes@gmail.com>
84
90
  Sean McGinnis <sean.mcginnis@gmail.com>
91
+ Sean Mooney <work@seanmooney.info>
85
92
  ShangXiao <shangxiaobj@inspur.com>
86
93
  Steve Kowalik <steven@wedontsleep.org>
87
94
  Steve Wilkerson <sw5822@att.com>
@@ -90,10 +97,12 @@ Susanne Balle <sleipnir012@gmail.com>
90
97
  Swapnil Kulkarni (coolsvap) <me@coolsvap.net>
91
98
  Takashi Kajinami <kajinamit@oss.nttdata.com>
92
99
  Takashi Kajinami <tkajinam@redhat.com>
100
+ Takashi Natsume <takanattie@gmail.com>
93
101
  Tatiana Kholkina <holkina@selectel.ru>
94
102
  Taylor Peoples <tpeoples@us.ibm.com>
95
103
  Thierry Carrez <thierry@openstack.org>
96
104
  Tin Lam <tl3438@att.com>
105
+ Tobias Urdin <tobias.urdin@binero.com>
97
106
  Tobias Urdin <tobias.urdin@binero.se>
98
107
  Tomasz Kaczynski <tomasz.kaczynski@intel.com>
99
108
  Tomasz Trębski <tomasz.trebski@ts.fujitsu.com>
@@ -151,6 +160,7 @@ lingyongxu <lyxu@fiberhome.com>
151
160
  liushuobj <liushuobj@inspur.com>
152
161
  liyanhang <liyh@gohighsec.com>
153
162
  lvxianguo <lvxianguo@inspur.com>
163
+ m <mandreou@redhat.com>
154
164
  maaoyu <maaoyu@inspur.com>
155
165
  melissaml <ma.lei@99cloud.net>
156
166
  mergalievibragim <mer_eng@mail.ru>
@@ -1,12 +1,10 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: python-watcher
3
- Version: 13.0.0
3
+ Version: 14.0.0
4
4
  Summary: OpenStack Watcher provides a flexible and scalable resource optimization service for multi-tenant OpenStack-based clouds.
5
5
  Home-page: https://docs.openstack.org/watcher/latest/
6
6
  Author: OpenStack
7
7
  Author-email: openstack-discuss@lists.openstack.org
8
- License: UNKNOWN
9
- Platform: UNKNOWN
10
8
  Classifier: Environment :: OpenStack
11
9
  Classifier: Intended Audience :: Information Technology
12
10
  Classifier: Intended Audience :: System Administrators
@@ -16,55 +14,59 @@ Classifier: Programming Language :: Python
16
14
  Classifier: Programming Language :: Python :: Implementation :: CPython
17
15
  Classifier: Programming Language :: Python :: 3 :: Only
18
16
  Classifier: Programming Language :: Python :: 3
19
- Classifier: Programming Language :: Python :: 3.8
20
17
  Classifier: Programming Language :: Python :: 3.9
21
18
  Classifier: Programming Language :: Python :: 3.10
22
19
  Classifier: Programming Language :: Python :: 3.11
23
- Requires-Python: >=3.8
24
- Requires-Dist: PasteDeploy (>=1.5.2)
25
- Requires-Dist: PrettyTable (>=0.7.2)
26
- Requires-Dist: SQLAlchemy (>=1.2.5)
27
- Requires-Dist: WSME (>=0.9.2)
28
- Requires-Dist: WebOb (>=1.8.5)
29
- Requires-Dist: apscheduler (>=3.5.1)
30
- Requires-Dist: croniter (>=0.3.20)
31
- Requires-Dist: futurist (>=1.8.0)
32
- Requires-Dist: gnocchiclient (>=7.0.1)
33
- Requires-Dist: jsonpatch (>=1.21)
34
- Requires-Dist: jsonschema (>=3.2.0)
35
- Requires-Dist: keystoneauth1 (>=3.4.0)
36
- Requires-Dist: keystonemiddleware (>=4.21.0)
37
- Requires-Dist: lxml (>=4.5.1)
38
- Requires-Dist: microversion-parse (>=0.2.1)
39
- Requires-Dist: networkx (>=2.4)
40
- Requires-Dist: os-resource-classes (>=0.4.0)
41
- Requires-Dist: oslo.cache (>=1.29.0)
42
- Requires-Dist: oslo.concurrency (>=3.26.0)
43
- Requires-Dist: oslo.config (>=6.8.0)
44
- Requires-Dist: oslo.context (>=2.21.0)
45
- Requires-Dist: oslo.db (>=4.44.0)
46
- Requires-Dist: oslo.i18n (>=3.20.0)
47
- Requires-Dist: oslo.log (>=3.37.0)
48
- Requires-Dist: oslo.messaging (>=14.1.0)
49
- Requires-Dist: oslo.policy (>=3.6.0)
50
- Requires-Dist: oslo.reports (>=1.27.0)
51
- Requires-Dist: oslo.serialization (>=2.25.0)
52
- Requires-Dist: oslo.service (>=1.30.0)
53
- Requires-Dist: oslo.upgradecheck (>=1.3.0)
54
- Requires-Dist: oslo.utils (>=3.36.0)
55
- Requires-Dist: oslo.versionedobjects (>=1.32.0)
56
- Requires-Dist: pbr (>=3.1.1)
57
- Requires-Dist: pecan (>=1.3.2)
58
- Requires-Dist: python-cinderclient (>=3.5.0)
59
- Requires-Dist: python-glanceclient (>=2.9.1)
60
- Requires-Dist: python-ironicclient (>=2.5.0)
61
- Requires-Dist: python-keystoneclient (>=3.15.0)
62
- Requires-Dist: python-monascaclient (>=1.12.0)
63
- Requires-Dist: python-neutronclient (>=6.7.0)
64
- Requires-Dist: python-novaclient (>=14.1.0)
65
- Requires-Dist: python-openstackclient (>=3.14.0)
66
- Requires-Dist: stevedore (>=1.28.0)
67
- Requires-Dist: taskflow (>=3.8.0)
20
+ Classifier: Programming Language :: Python :: 3.12
21
+ Requires-Python: >=3.9
22
+ License-File: LICENSE
23
+ License-File: AUTHORS
24
+ Requires-Dist: apscheduler >=3.5.1
25
+ Requires-Dist: eventlet >=0.27.0
26
+ Requires-Dist: jsonpatch >=1.21
27
+ Requires-Dist: keystoneauth1 >=3.4.0
28
+ Requires-Dist: jsonschema >=3.2.0
29
+ Requires-Dist: keystonemiddleware >=4.21.0
30
+ Requires-Dist: lxml >=4.5.1
31
+ Requires-Dist: croniter >=0.3.20
32
+ Requires-Dist: os-resource-classes >=0.4.0
33
+ Requires-Dist: oslo.concurrency >=3.26.0
34
+ Requires-Dist: oslo.cache >=1.29.0
35
+ Requires-Dist: oslo.config >=6.8.0
36
+ Requires-Dist: oslo.context >=2.21.0
37
+ Requires-Dist: oslo.db >=4.44.0
38
+ Requires-Dist: oslo.i18n >=3.20.0
39
+ Requires-Dist: oslo.log >=3.37.0
40
+ Requires-Dist: oslo.messaging >=14.1.0
41
+ Requires-Dist: oslo.policy >=4.5.0
42
+ Requires-Dist: oslo.reports >=1.27.0
43
+ Requires-Dist: oslo.serialization >=2.25.0
44
+ Requires-Dist: oslo.service >=1.30.0
45
+ Requires-Dist: oslo.upgradecheck >=1.3.0
46
+ Requires-Dist: oslo.utils >=7.0.0
47
+ Requires-Dist: oslo.versionedobjects >=1.32.0
48
+ Requires-Dist: PasteDeploy >=1.5.2
49
+ Requires-Dist: pbr >=3.1.1
50
+ Requires-Dist: pecan >=1.3.2
51
+ Requires-Dist: PrettyTable >=0.7.2
52
+ Requires-Dist: gnocchiclient >=7.0.1
53
+ Requires-Dist: python-cinderclient >=3.5.0
54
+ Requires-Dist: python-glanceclient >=2.9.1
55
+ Requires-Dist: python-keystoneclient >=3.15.0
56
+ Requires-Dist: python-monascaclient >=1.12.0
57
+ Requires-Dist: python-neutronclient >=6.7.0
58
+ Requires-Dist: python-novaclient >=14.1.0
59
+ Requires-Dist: python-observabilityclient >=0.3.0
60
+ Requires-Dist: python-openstackclient >=3.14.0
61
+ Requires-Dist: python-ironicclient >=2.5.0
62
+ Requires-Dist: SQLAlchemy >=1.2.5
63
+ Requires-Dist: stevedore >=1.28.0
64
+ Requires-Dist: taskflow >=3.8.0
65
+ Requires-Dist: WebOb >=1.8.5
66
+ Requires-Dist: WSME >=0.9.2
67
+ Requires-Dist: networkx >=2.4
68
+ Requires-Dist: microversion-parse >=0.2.1
69
+ Requires-Dist: futurist >=1.8.0
68
70
 
69
71
  =======
70
72
  Watcher
@@ -96,5 +98,3 @@ migration, increased energy efficiency and more!
96
98
  * Release notes: https://docs.openstack.org/releasenotes/watcher/
97
99
  * Design specifications: https://specs.openstack.org/openstack/watcher-specs/
98
100
 
99
-
100
-