Commit Graph

2274 Commits

Author SHA1 Message Date
licanwei
91b58a6775 Move install doc to user guide
Change-Id: I7b4b4ddffbe66a00fdcec4d497c6efa2e9e7729e
2020-01-11 10:16:27 +08:00
Zuul
8835576374 Merge "Add audit type: event" 2020-01-10 03:30:03 +00:00
Zuul
3bc05eaa00 Merge "Add webhook api" 2020-01-10 03:30:02 +00:00
licanwei
693d214166 Update user guide doc
Change-Id: I881b429552e15f13ddcd0ccf1663fb0e2f4123aa
2020-01-09 19:09:15 +08:00
licanwei
775be27719 Add webhook api
Add a new webhook api and its microversion is 1.4

Partially Implements: blueprint event-driven-optimization-based

Change-Id: I50f7c824e52f3c5fc775d5064898ed422e375a99
2020-01-08 09:41:03 +08:00
zhufl
db709691be Fix duplicated words issue like "an active instance instance"
This is to fix the duplicated words issue like
"Pick up an active instance instance to migrate".

Change-Id: I74de4eb06aa1e462f0b499e3fd62a7cdc7570b31
2020-01-06 15:29:25 +08:00
licanwei
6a173a9161 Add audit type: event
This patchset added a new audit type: event,
and the handler to execute event audit.

Partially Implements: blueprint event-driven-optimization-based

Change-Id: I287471ee4d1dcc42af7a6bcc15f8509d4ce73072
2019-12-13 15:14:41 +08:00
Zuul
0c02b08a6a Merge "Add list datamodel microversion to api-ref" 2019-12-04 03:07:50 +00:00
Zuul
58eb481e19 Merge "Add a new microversion for data model API" 2019-12-03 04:09:55 +00:00
licanwei
002ea535ae Add list datamodel microversion to api-ref
Change-Id: I0703a935fa6d9d61f62374dbd7afb09b1dfffd5c
Related-Bug: #1854121
2019-12-03 11:03:16 +08:00
licanwei
6f43f2b003 Add a new microversion for data model API
microversion 1.3 for list data model API

Change-Id: Ibf8774a48c3d13ca9762bd5319f5e1ce2ed82b2f
Closes-Bug: #1854121
2019-12-02 14:37:11 +08:00
Dantali0n
ba43f766b8 Releasenote for decision engine threadpool
Add the releasenote for the general purpose decision engine threadpool.
Including config parameters and how contributors can find relevant
documentation.

Implements: blueprint general-purpose-decision-engine-threadpool

Change-Id: I3560069b4e34f13305950559a0f05f7921f7867e
2019-11-30 03:13:15 +00:00
Zuul
42fea1c568 Merge "Documentation on concurrency for contributors" 2019-11-30 02:59:19 +00:00
Zuul
b7baa88010 Merge "Use threadpool when building compute data model" 2019-11-30 02:23:51 +00:00
Zuul
65ec309050 Merge "General purpose threadpool for decision engine" 2019-11-30 02:22:13 +00:00
Zuul
f4fb4981f0 Merge "Migrate grenade jobs to py3" 2019-11-30 02:22:11 +00:00
Zuul
8ae9375e6b Merge "replace host_url with application_url" 2019-11-30 02:22:11 +00:00
Zuul
012c653432 Merge "Use enum class define microversions" 2019-11-30 02:22:09 +00:00
licanwei
a2f1089038 Use enum class define microversions
Related-Bug: #1854121
Change-Id: I53b51e149be7252093aefcf2878684f42a3209c7
2019-11-29 10:55:20 +08:00
Q.hongtao
5171d84b8d Start README.rst with a better title
Now that we are using gitea the contents of our README.rst are
more prominently displayed. Starting it with a "Team and repository
tags" title is a bit confusing. This change makes it start with the
name of the project instead.

Change-Id: Icfce3764aa9e1aabf5e78443cf7ce102de63a052
2019-11-28 09:56:55 +08:00
licanwei
4a269ba039 Change self.node to self.nodes in model_root
networkx removed G.node in version 2.4[1]
G.node was replaced by G.nodes since version 2.0[2],
and supports Python 2.7, 3.5, 3.6 and 3.7 from 2.2
so the lower constraint version is 2.2.
lib task_flow also invokes lib networkx,
task_flow version is also needed to be updated.
[1]: https://networkx.github.io/documentation/stable/release/release_2.4.html
[2]: https://networkx.github.io/documentation/stable/release/release_2.0.html
Change-Id: I268bcf57ec977bd8132a9f1573b28b681cb4ce1e
Closes-Bug: #1854132
2019-11-27 17:19:29 +08:00
Dantali0n
b5f8e9a910 Documentation on concurrency for contributors
Documentation with details on general concurrency as well as OpenStack
specific libraries.

Describes how different libraries are effectively used across different
Watcher services. This includes describing how futurist is used in the
Decision Engine and how taskflow is used in the Applier.

Finally, this documentation describes how contributors can use the
new DecisionEngineThreadpool effectively and includes examples.

https://docs.openstack.org/futurist/latest/
https://docs.openstack.org/taskflow/latest/

Change-Id: Ic1cd1f3733a0e9a239c9b8d49951e1e4ece49f3a
Partially Implements: blueprint general-purpose-decision-engine-threadpool
2019-11-27 08:48:16 +01:00
licanwei
0032ed9237 replace host_url with application_url
for url http://localhost/infra-optim
pecan.request.host_url is http://localhost
and pecan.request.application_url is http://localhost/infra-optim
we should use application_url to make href in links.

Change-Id: I5d7746b3da196ea2e072fbdf1adb1523ba2bffaf
Closes-Bug: #1854119
2019-11-27 14:47:19 +08:00
Zuul
89055577e6 Merge "[ussuri][goal] Drop python 2.7 support and testing" 2019-11-22 07:12:55 +00:00
Zuul
cc0c2d227e Merge "Refactoring the codes about getting used and free resources" 2019-11-20 03:18:38 +00:00
Ghanshyam Mann
ab9a68c784 Migrate grenade jobs to py3
As part of community goal of dropping py27 support[1], we are
moving the devstack to py3 by default[2]. That will make grenade job
to perform upgrade from py2 to py3 which will not work (we have seen
the failure in neutron-grenade job).

To avoid existing grenade py2 job break, this commit moves grenade
jobs to py3 which is what we planned as part dropping the py2 support.

[1] https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html
[2] https://review.opendev.org/#/c/649097/12
    http://lists.openstack.org/pipermail/openstack-discuss/2019-November/010938.html

Depends-On: https://review.opendev.org/#/c/649097/

Change-Id: I36229a3fc0bbcd994907154b638d24737959e6e3
2019-11-19 23:38:04 +00:00
Ghanshyam Mann
17f5a65a62 [ussuri][goal] Drop python 2.7 support and testing
OpenStack is dropping the py2.7 support in ussuri cycle.

Watcher is ready with python 3 and ok to drop the
python 2.7 support.

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

Depends-On: https://review.opendev.org/#/c/693631/

Change-Id: I603c6d2c22779e8ef2e70eb6369fc521a77c9c3a
2019-11-16 14:55:01 +00:00
licanwei
689ae25ef5 Refactoring the codes about getting used and free resources
We have provided functions to get used and free resources in
class ModelRoot. So strategies can invoke the functions to
get used and free resources.

Change-Id: I3c74d56539ac6c6eb16b0d254a76260bc791567c
2019-11-12 16:22:09 +08:00
Zuul
b3a3c686bf Merge "tox: Keeping going with docs" 2019-11-12 03:25:16 +00:00
Dantali0n
c644e23ca0 Use threadpool when building compute data model
Use the general purpose threadpool when building the nova compute
data model. Additionally, adds thorough explanation about theory of
operation.

Updates related test cases to better ensure the correct operation
of add_physical_layer.

Partially Implements: blueprint general-purpose-decision-engine-threadpool

Change-Id: I53ed32a4b2a089b05d1ffede629c9f4c5cb720c8
2019-11-01 13:44:15 +01:00
Dantali0n
2b6ee38327 General purpose threadpool for decision engine
Implements the singleton general purpose threadpool for the decision
engine and associated tests.

A threadpool is a collection of one or more threads typically called
'workers' to which tasks can be submitted. These submitted tasks will
be scheduled by the threadpool and subsequently executed. How many
tasks will be executed concurrently is managed by the underlying
threadpool and its configuration. In Python the submission of tasks
to a threadpool returns an object called a 'future'. Futures provide
a method to interface with the task being executed that allows to
retrieve information about its state. Such as if it currently is being
executed, if it is waiting on a condition and if it has completed
succesfully. Finally, futures allow to retrieve what has been returned
by the submitted task.

In the case of most OpenStack projects instead of interfacing with native
Python concurrency the futurist library is used. This library provides
very similar interfaces to native concurrency with some extras such as
the wait_for_any method.

For more information about futurist or Python concurrency the following
references can be consulted:
https://docs.python.org/3/library/concurrent.futures.html
https://docs.openstack.org/futurist/latest/reference/index.html#executors

Partially Implements: blueprint general-purpose-decision-engine-threadpool

Change-Id: I94bd9a17290967f011762f2b9c787ee7c46ff930
2019-11-01 11:33:59 +01:00
jacky06
7d2191d4e6 tox: Keeping going with docs
Sphinx 1.8 introduced [1] the '--keep-going' argument which, as its name
suggests, keeps the build running when it encounters non-fatal errors.
This is exceptionally useful in avoiding a continuous edit-build loop
when undertaking large doc reworks where multiple errors may be
introduced.

[1] https://github.com/sphinx-doc/sphinx/commit/e3483e9b045

Change-Id: If2bbfd8ae6d1fc75cbc494578310c1dc03c367e6
2019-10-24 00:45:42 +00:00
sunjia
a7b24ac6a5 Switch to Ussuri jobs
Change-Id: I681f324c243860255a9ede0794e7d96026bca5a3
2019-10-22 13:39:11 +08:00
Zuul
ff5bc51052 Merge "Don't throw exception when missing metrics" 2019-10-17 12:59:18 +00:00
licanwei
f685bf62ab Don't throw exception when missing metrics
When querying data from datasource, it's possible to miss some data.
In this case if we throw an exception, Audit will failed because of
the exception. We should remove the exception and give the decision
to the strategy.

Change-Id: I1b0e6b78b3bba4df9ba16e093b3910aab1de922e
Closes-Bug: #1847434
2019-10-16 21:01:39 -07:00
Zuul
066f9e02e2 Merge "Remove print()" 2019-10-14 07:43:25 +00:00
licanwei
aa36e6a881 Remove print()
Change-Id: Ida31237b77e98c803cb1ccb3bd5b190289434207
2019-10-11 14:59:14 +08:00
OpenStack Release Bot
e835efaa3f Update master for stable/train
Add file to the reno documentation build to show release notes for
stable/train.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/train.

Change-Id: I0d5ae49a33583514925ad966de067afaa8881ff3
Sem-Ver: feature
2019-09-25 08:46:33 +00:00
Zuul
d13adb4e3c Merge "Fix damodel list return None error When has a compute node" 3.0.0.0rc1 2019-09-23 08:46:56 +00:00
Zuul
d11f43638c Merge "Fix misspelling" 2019-09-23 06:52:51 +00:00
chenke
2b63a35e86 Fix damodel list return None error When has a compute node
Reason:
When there is a compute node but no virtual machine,
the command 'watcher datamodel list' should display
the information of the compute node instead of return None.

Change-Id: Id5ff7f08ac8a9883af9f0313785b756d813ed5a2
Closes-Bug: #1844948
2019-09-23 14:04:16 +08:00
licanwei
4869449211 Fix misspelling
Depends-on: Ifa21645e19b8311de35cb9b0b8f39371b8713a2f
Depends-on:Ic2ae4cb758eba32f1b1529a24d12a57ca93a2a82
Change-Id: Ia1ea9814b8293e2bed989d700c7a813a97052f04
2019-09-23 04:29:47 +00:00
licanwei
42c1babfa4 skip deleted instance when creating datamodel
Change-Id: Ic2ae4cb758eba32f1b1529a24d12a57ca93a2a82
Closes-Bug: #1844949
2019-09-22 21:26:31 -07:00
licanwei
519ca2c9fb Fix unit test failed
ironic removed 'os_endpoint_type' and instead with 'interface'

Change-Id: Ifa21645e19b8311de35cb9b0b8f39371b8713a2f
2019-09-21 14:39:45 +08:00
Zuul
cca74f4698 Merge "Watcher planner slector releasenote" 2019-09-19 02:25:23 +00:00
Zuul
511a24e011 Merge "Set strategy planner" 2019-09-19 02:25:22 +00:00
Zuul
594a0d9b01 Merge "Get planner from solution" 2019-09-19 02:21:23 +00:00
licanwei
a88e076646 Watcher planner slector releasenote
Change-Id: I632a59d9e3cb6f5d0dad8987b1b01934d9ce0b42
Implements: bp watcher-planner-selector
2019-09-18 01:59:01 -07:00
licanwei
0559cd7a04 Set strategy planner
The default planner can not create actions with right order,
The node_resouce_consolidation strategy needs to use its
own planner.
Partially Implements: blueprint node-resource-consolidation
Depends-on: I586e67f782e2965234826634ba3ff51681af4df8
Change-Id: I05b02905a3335a73b6926966de6331c632842293
2019-09-17 19:42:32 -07:00
licanwei
0c191a2da9 Get planner from solution
support Strategy select different planner
Implements: bp watcher-planner-selector

Change-Id: I586e67f782e2965234826634ba3ff51681af4df8
2019-09-17 19:36:07 -07:00