403 Commits

Author SHA1 Message Date
ZhongShengping
ba0502182e 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: If51f5d5eb710e06216f6d6981a70d70b6b5783cc
2018-12-05 09:44:35 +08:00
Matt Riedemann
25dadb94db Remove the CachingScheduler
The CachingScheduler has been deprecated since Pike [1].
It does not use the placement service and as more of nova
relies on placement for managing resource allocations,
maintaining compabitility for the CachingScheduler is
exorbitant.

The release note in this change goes into much more detail
about why the FilterScheduler + Placement should be a
sufficient replacement for the original justification
for the CachingScheduler along with details on how to migrate
from the CachingScheduler to the FilterScheduler.

Since the [scheduler]/driver configuration option does allow
loading out-of-tree drivers and the scheduler driver interface
does have the USES_ALLOCATION_CANDIDATES variable, it is
possible that there are drivers being used which are also not
using the placement service. The release note also explains this
but warns against it. However, as a result some existing
functional tests, which were using the CachingScheduler, are
updated to still test scheduling without allocations being
created in the placement service.

Over time we will likely remove the USES_ALLOCATION_CANDIDATES
variable in the scheduler driver interface along with the
compatibility code associated with it, but that is left for
a later change.

[1] Ia7ff98ff28b7265058845e46b277317a2bfc96d2

Change-Id: I1832da2190be5ef2b04953938860a56a43e8cddf
2018-10-18 17:55:36 -04:00
zhangyangyang
92a459331f Remove ChanceScheduler
ChanceScheduler is deprecated in Pike [1] and will be removed in a
subsequent release.

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

Change-Id: I44f9c1cabf9fc64b1a6903236bc88f5ed8619e9e
2018-08-20 15:56:13 +01:00
Matt Riedemann
0a461979df Implement granular policy rules for placement
This adds a granular policy checking framework for
placement based on nova.policy but with a lot of
the legacy cruft removed, like the is_admin and
context_is_admin rules.

A new PlacementPolicyFixture is added along with
a new configuration option, [placement]/policy_file,
which is needed because the default policy file
that gets used in config is from [oslo_policy]/policy_file
which is being used as the nova policy file. As
far as I can tell, oslo.policy doesn't allow for
multiple policy files with different names unless
I'm misunderstanding how the policy_dirs option works.

With these changes, we can have something like:

  /etc/nova/policy.json - for nova policy rules
  /etc/nova/placement-policy.yaml - for placement rules

The docs are also updated to include the placement
policy sample along with a tox builder for the sample.

This starts by adding granular rules for CRUD operations
on the /resource_providers and /resource_providers/{uuid}
routes which use the same descriptions from the placement
API reference. Subsequent patches will add new granular
rules for the other routes.

Part of blueprint granular-placement-policy

Change-Id: I17573f5210314341c332fdcb1ce462a989c21940
2018-05-17 11:12:16 -04:00
Matt Riedemann
4a55e260a4 Remove [scheduler]/host_manager config option
While this option itself was not technically deprecated,
the option only had two choices and the "ironic_host_manager"
choice has been deprecated since Queens:

  Iebc74a09990dcda8cf0ee2a41f9ae1058d2a182a

And was removed in Rocky:

  I695b250c82c8dcedcd8e2bee00c56bb2df19212c

Since the host_manager option only had one choice, which
is also the default, it's not really an option anymore and
we can simply remove it. Setting it will have no effect
so there should be no upgrade impact for its removal.

Change-Id: Ic61ae3a4f563aa54a3a2956667c702a81e610fc3
2018-05-03 09:39:26 -04:00
Matt Riedemann
a55608897e Remove IronicHostManager and baremetal scheduling options
The use_baremetal_filters and baremetal_enabled_filters were
deprecated in Pike: I843353427c90142a366ae9ca63ee4298b4f3ecd4

The IronicHostManager was deprecated in Queens:
Iebc74a09990dcda8cf0ee2a41f9ae1058d2a182a

Note that the NUMATopologyFilter should be OK in a mixed
VM/BM deployment because ironic compute nodes will not
report 'numa_topology' so those "hosts" will be filtered
out from requests for a specific NUMA topology or CPU
policy.

This change drops the deprecated baremetal scheduling options
and since the IronicHostManager is really only useful when
using those scheduling options, it is also removed.

Baremetal scheduling is now required to go through resource
classes.

Change-Id: I695b250c82c8dcedcd8e2bee00c56bb2df19212c
2018-05-02 11:35:18 -04:00
Stephen Finucane
c21ab6b134 Follow the new PTI for document build
The Project Testing Interface [1] asks that we list requirements in
'doc/requirements.txt' and build docs by calling 'sphinx-build' directly
instead of via the 'build_sphinx' setuptool/distutils wrapper. Start
doing this.

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

Change-Id: If9342c8ea757b1735f2488db751008984fb33baf
2018-03-16 14:39:36 +00:00
Zuul
975fdcfc3b Merge "setup.cfg: Explicitly set [build_sphinx] builder" 2018-03-12 22:59:03 +00:00
Stephen Finucane
936404b90a setup.cfg: Explicitly set [build_sphinx] builder
An recent change in pbr changed the default behavior of pbr's variants
of the 'sphinx_build' setuptools plugin [1]. Previously, pbr defaulted
to building both HTML and man page output, but it now builds only the
former. nova happens to be one of the rare projects that _does_ care
about man pages so mitigate the impact of this change by explicitly
setting the 'builder' configuration option to build HTML and man page
output.

While we're at it, the 'build_apiguide' section is removed as this
doesn't actually do anything and is a remnant of a broken cookiecutter
file [2].

[1] https://review.openstack.org/#/c/456157/
[2] https://review.openstack.org/#/c/448164/

Change-Id: I79efedd44b11c9832ae8cb36e54c2567f85fcf50
2017-12-27 13:53:10 +00:00
Matt Riedemann
c99fc64271 Deprecate the IronicHostManager
The use_baremetal_filters and baremetal_enabled_filters options
along with the ExactRamFilter, ExactCoreFilter and ExactDiskFilter
filters were all deprecated in Pike:

  I843353427c90142a366ae9ca63ee4298b4f3ecd4

The IronicHostManager is configurable and relies on those options,
so if those options are deprecated then the IronicHostManager should
also be deprecated.

The sticky part with this is going to be filters that don't work with
ironic nodes today, like the NUMATopologyFilter, so a note is left
in the use_baremetal_filters option code to remind us that we can't
likely remove any of this until all filters work with ironic nodes.

Change-Id: Iebc74a09990dcda8cf0ee2a41f9ae1058d2a182a
2017-11-28 15:23:48 -05:00
Stephen Finucane
494fe90cf4 trivial: Rename 'policy_check' -> 'policy'
The executable is 'nova-policy' - not 'nova-policy-check'.

Change-Id: I3e875a3284935cbb9607f01c7139982da0e11945
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2017-10-25 17:56:40 +01:00
Michael Still
3f7995f586 Move the idmapshift binary into privsep.
I can't see any evidence that anyone else uses our nova-idmapshift
binary, and it adds a lot of complexity (flags we never call for
example). Move the code we do actually use into the privsep
directory and simplify our calls to it. Remove the extra binary
from our install and documentation.

Change-Id: Ibce28d20d166da154833376cf51f1877b829925e
blueprint: hurrah-for-privsep
2017-10-24 18:50:23 +11:00
Jesse Pretorius
10c4bf888f Add default configuration files to data_files
In order to make it simpler to use the default
configuration files when deploying services
from source, the files are added to pbr's
data_files section so that the files are
included in the built wheels and therefore
deployed with the code. Packaging and deployment
tools can then more easily use the default files
if they wish to.

This pattern is already established with similar
files for neutron and the glance metadefs as has
been mentioned in the related bug report.

Change-Id: I66e6525338e06f289a20ff2cdc2d108ffd6d30b2
Closes-Bug: #1718356
2017-09-22 11:36:56 +00:00
He Jie Xu
d8928e4a7c Using plain routes for the microversions test
Few microversions unittest still depend on the stevedore to load few
fake controller. This patch uses the plain routes to instead of stevedore.

For the unittest can injects routes which are used for test, the `custom_routes`
parameter is added to the APIRouterV21.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I1a7c653ab21be41b1a41f748a35ec9a57dd8b15d
2017-07-23 22:43:53 +08:00
He Jie Xu
c11e9c4848 Remove the unittest for plugin framework
The extension/plugin mechanism is removed from the Nova API. This
patch removed related unittest.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I1c5a1dccb08bd0b869cb206b247d6cb744e76163
2017-07-21 17:39:46 +08:00
He Jie Xu
80f0428033 Use plain routes list for versions instead of stevedore
This patch adds versions related routes by a plain list,
instead of using stevedore.

After all the Nova API endpoints moves to the plain routes list,
the usage of stevedore for API loading will be removed from Nova

To support the redirection from '' to '/', this patch also
enables to put a target patch instead of a dict with supported
methods in the ROUTE_LIST.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: Iba340c5dd66cf9d006e2e8d3d0674b2140915014
2017-07-21 17:39:46 +08:00
Jenkins
e62d931025 Merge "Use plain routes list for extension_info instead of stevedore" 2017-07-21 06:35:48 +00:00
Jenkins
c55c5196d5 Merge "Use plain routes list for os-snapshots instead of stevedore" 2017-07-21 06:20:27 +00:00
Jenkins
3093c8b9e0 Merge "Update URL home-page in documents according to document migration" 2017-07-19 17:31:51 +00:00
Jenkins
2e4417d57c Merge "Use plain routes list for os-baremetal-nodes endpoint instead of stevedore" 2017-07-19 11:45:07 +00:00
Luong Anh Tuan
1b385d9eda Update URL home-page in documents according to document migration
Change-Id: I48c04fdd693cfbe1c279fd26a181d65d84494aa2
2017-07-19 08:47:27 +00:00
Jenkins
52a7492bc0 Merge "Use plain routes list for os-security-group-default-rules instead of stevedore" 2017-07-19 08:45:26 +00:00
Jenkins
7ae3753874 Merge "Use plain routes list for os-security-group-rules instead of stevedore" 2017-07-19 06:01:56 +00:00
He Jie Xu
8acc357168 Use plain routes list for extension_info instead of stevedore
This patch adds extension_info related routes by a plain list,
instead of using stevedore.

After all the Nova API endpoints moves to the plain routes list,
the usage of stevedore for API loading will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I07c5e0dc34042d4f3cea8b1b933b11a624ec9512
2017-07-18 22:57:00 +08:00
He Jie Xu
2b912ccbf1 Use plain routes list for os-snapshots instead of stevedore
This patch adds os-snapshots related routes by a plain list,
instead of using stevedore.

After all the Nova API endpoints moves to the plain routes list,
the usage of stevedore for API loading will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: If2f073066fc4df533138409eec6c8ac0dd44d00a
2017-07-18 22:46:59 +08:00
Jenkins
f5a07291ed Merge "Use plain routes list for image-metadata instead of stevedore" 2017-07-18 09:34:29 +00:00
Jenkins
84fc76e9f3 Merge "Use plain routes list for images instead of stevedore" 2017-07-18 09:23:43 +00:00
Jenkins
247f9b8120 Merge "Use plain routes list for os-networks instead of stevedore" 2017-07-18 03:27:22 +00:00
Jenkins
4bd9028aaa Merge "Use plain routes list for os-cells endpoint instead of stevedore" 2017-07-14 03:00:45 +00:00
ghanshyam
24fadbec46 Use plain routes list for os-baremetal-nodes endpoint instead of stevedore
This patch adds os-baremetal-nodes related routes
by a plain list, instead of using stevedore. After all the Nova
API endpoints moves to the plain routes list, the usage of stevedore
for API loading will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I2df8f897cf2d53d01e5e9156efbcddd7aa988473
2017-07-12 20:58:55 +08:00
He Jie Xu
7f484134fb Use plain routes list for os-security-group-default-rules instead of stevedore
This patch adds os-security-group-default-rules related routes by a plain list,
instead of using stevedore.

After all the Nova API endpoints moves to the plain routes list,
the usage of stevedore for API loading will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike
Change-Id: Ifd7c8fc508c0afdb3ce14a4514862805a1569a8b
2017-07-12 20:58:40 +08:00
He Jie Xu
c4a95099ab Use plain routes list for os-security-group-rules instead of stevedore
This patch adds os-security-group-rules related routes by a plain list,
instead of using stevedore.

After all the Nova API endpoints moves to the plain routes list,
the usage of stevedore for API loading will be removed from Nova.

The API sample tests are missed for os-security-group-rules API,
this patch adds them to ensure the route working correctly.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I2d3ac79fdb0314014f4b8b69a9c5f27a922d9046
2017-07-12 20:58:26 +08:00
He Jie Xu
25e9b0129a Use plain routes list for image-metadata instead of stevedore
This patch adds image-metadata related routes by a plain list,
instead of using stevedore.

After all the Nova API endpoints moves to the plain routes list,
the usage of stevedore for API loading will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I466d2e1693f56ee32fa32fd74789f88c1d0a1f7c
2017-07-12 20:57:46 +08:00
He Jie Xu
d0093c5cc3 Use plain routes list for images instead of stevedore
This patch adds images related routes by a plain list,
instead of using stevedore.

After all the Nova API endpoints moves to the plain routes list,
the usage of stevedore for API loading will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I884dbfef8032a34d155a7022037f5690d86ef532
2017-07-12 20:57:33 +08:00
ghanshyam
53393ca27e Use plain routes list for os-networks instead of stevedore
This patch adds os-networks related routes by a plain list,
instead of using stevedore.

After all the Nova API endpoints moves to the plain routes list,
the usage of stevedore for API loading will be removed from
Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I49a424979394d0de7d8eae564468e29ee94b8bfa
2017-07-12 17:36:35 +08:00
Takashi NATSUME
ed66612268 Fix a missing classifier
Add Python 3 in classifier.

TrivialFix
Change-Id: Iaaee1776bbbb1f9dfa5d9ad3a238d0e1422394a0
2017-07-10 14:02:39 +00:00
jichenjc
408fcfd604 Use plain routes list for os-cells endpoint instead of stevedore
This patch adds os-cells related routes by a plain list,
instead of using stevedore.

After all the Nova API endpoints moves to the plain routes list,
the usage of stevedore for API loading will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: Iec6e720b4e225251ce06ddfecb316569f9260913
2017-07-04 00:07:40 +00:00
iswarya_vakati
3c868cefb4 Add python 3.5 in classifier
Now we can support py35 in classifier.

Change-Id: I56ecc2b9d82779de0c96e46bad73beb13603edf0
2017-06-27 16:36:24 +05:30
Stephen Finucane
7c73d39df6 Use plain routes list for os-remote-consoles instead of stevedore
This patch adds os-remote-consoles related routes by a plain list,
instead of using stevedore.

After all the Nova API endpoints moves to the plain routes list,
the usage of stevedore for API loading will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: Id192220445e296656eedb79e39042cd00bbe65a7
2017-06-19 16:49:34 +01:00
Stephen Finucane
e2020996ae Remove multiple create from stevedore
The stevedore will be removed from the nova API code. And the extension info
API already is implemented by a hard-code list. So this multiple create extension
entry is useless anymore.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I57caf68d62393b32f800300d4504dd726c3a37c4
2017-06-19 16:49:34 +01:00
ghanshyam
e32ce7cf94 Use plain routes list for os-tenant-networks instead of stevedore
This patch adds os-tenant-networks related routes by a plain list,
instead of using stevedore.

After all the Nova API endpoints moves to the plain routes list,
the usage of stevedore for API loading will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I54c03a5ec3311677fc095425b71c2b590ff5c987
2017-06-19 16:44:19 +01:00
jichenjc
facfe2ac42 Use plain routes list for os-cloudpipe endpoint instead of stevedore
This patch adds os-cloudpipe related routes by a plain list,
instead of using stevedore.

After all the Nova API endpoints moves to the plain routes list,
the usage of stevedore for API loading will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: Id02d878867dec642fab72981cd0b492c62c846fb
2017-06-19 16:44:19 +01:00
jichenjc
ceed63ff7d Use plain routes list for os-quota-classes endpoint instead of stevedore
This patch adds os-quota-classes related routes by a plain list, instead
of using stevedore. After all the Nova API endpoints moves to the plain
routes list, the usage of stevedore for API loading will be removed from
Nova.

Because of os-server-group-quotas is never loaded, we can safely removed
the logic check for server-group data and possibily return it though a
microversion update if needed.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I34c776bedc0bc5fc0ef4d29dd3b8f84e914d83e2
2017-06-19 16:38:03 +01:00
Kevin_Zheng
b15041e81c Use plain routes list for os-server-groups endpoint instead of stevedore
This patch adds os-server-groups related routes by a plain list,
instead of using stevedore. After all the Nova API endpoints moves to the
plain routes list, the usage of stevedore for API loading will be removed
from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I2df31cc04fbd2d54103a412f461cfd665209dfa7
2017-06-13 14:04:07 +00:00
Kevin_Zheng
7626b8c6aa Use plain routes list for user_data instead of stevedore
This patch adds user_data related routes by a plain list, instead
of using stevedore. After all the Nova API endpoints moves to the
plain routes list, the usage of stevedore for API loading
will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: Ie0f806b1231da7676b1929de1eaece7435afe58a
2017-06-13 14:04:00 +00:00
Kevin_Zheng
9b98781015 Use plain routes list for block_device_mapping instead of stevedore
This patch adds block_device_mapping related routes by a plain list, instead
of using stevedore. After all the Nova API endpoints moves to the
plain routes list, the usage of stevedore for API loading
will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I3d1774943708db3c285ca6597898393349970c7b
2017-06-12 15:48:56 +01:00
Kevin_Zheng
9452aafd08 Use plain routes list for os-consoles, os-console-auth-tokens endpoint instead of stevedore
This patch adds os-consoles and os-console-auth-tokens related routes by
a plain list, instead of using stevedore. After all the Nova API
endpoints moves to the plain routes list, the usage of stevedore for API
loading will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I0e7433e6b470fc535b5954de7dcdcf66ac5ac41d
2017-06-12 15:48:19 +01:00
jichenjc
95add6a97b Use plain routes list for os-services endpoint instead of stevedore
This patch adds os-services related routes by a plain list, instead of
using stevedore. After all the Nova API endpoints moves to the plain
routes list, the usage of stevedore for API loading will be removed from
Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: Ib145494b9fc3c660176098e4168cf72db507f34d
2017-06-07 14:25:58 +08:00
Stephen Finucane
50e825c861 use plain routes list for os-virtual-interfaces
This patch adds os-virtual-interfaces related routes by a plain list,
instead of using stevedore. After all the Nova API endpoints moves to
the plain routes list, the usage of stevedore for API loading will be
removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I47ccef43e41da0a85bff3da71655c33b6fea4fe4
2017-06-07 14:25:58 +08:00
jichenjc
f4e3a8c4f9 use plain routes list for hypervisor endpoint instead of stevedore
This patch adds hypervisors related routes by a plain list,
instead of using stevedore. After all the Nova API endpoints moves
to the plain routes list, the usage of stevedore for API loading
will be removed from Nova.

Partial-implement-blueprint api-no-more-extensions-pike

Change-Id: I1095e91b5ef84995b32b38445b0876b132b9627a
2017-06-07 14:25:58 +08:00