227 Commits

Author SHA1 Message Date
Jenkins
dbf9bf0703 Merge "Support for both microversion headers" 2016-05-26 12:55:33 +00:00
Chris Dent
bd199e3f9b Support for both microversion headers
In this change the new OpenStack-API-Version headers is allowed,
but not required, for requesting a microversion.

Both headers are accepted in the request and both headers are sent in
the response (both the header and its value, and the addition to the Vary
header).

Many tests which explicitly use a microversion header have been
updated to use both. This change is not 100% as most of the tests
are testing the handling of the value of the header, not which
header is involved.

Partially-Implements: blueprint modern-microversions
Change-Id: I68da13b5ba0c2f3357523e765a5b9db81899daf1
2016-05-25 21:41:27 +00:00
Ken'ichi Ohmichi
120d77e076 Remove APIRouter of legacy v2 API code
This patch removes the APIRouter because there is not any code
which uses the APIRouter. In addition, this patch update the
corresponding reno for explaining actual way for api-paste.ini.

Partially implements blueprint remove-legacy-v2-api-code

Change-Id: I136eb6ce7478f9ff692ebcbe1b14aa76222826bf
2016-05-25 14:33:50 +09:00
Jenkins
14d6a424ff Merge "remove db2 support from tree" 2016-05-23 21:43:47 +00:00
Sean Dague
cdf74c57a6 remove db2 support from tree
This removes db2 support from tree completely. This is an oddball non
open database that made doing live data migrations difficult. It is
used by 0% of users in the OpenStack User Survey.

Supporting commercial software that doesn't have users at the cost of
delivering features and fixes to our community is the wrong
tradeoff. This corrects that.

It rewrites migrations, which we typically don't ever do, but it is
better if newton fresh environments fail early in db creation instead
of very deep in the data migration process.

Change-Id: Ifeb9929e4515e3483eb65d371126afd7672b92a4
2016-05-23 07:33:20 -04:00
Dan Smith
b8aac794d4 Add online migration to move keypairs from main to API database
This moves keypairs from the main database to the API database in
an online migration. Note that it refuses to run until all of the
instances have keypair information, so that we don't strand instances
that might need to lazy-load those things.

Related to blueprint cells-keypairs-api-db

Change-Id: I97b72ae3e7e8ea3d6b596870d8da3aaa689fd6b5
2016-05-19 11:59:14 -07:00
Jenkins
f7ba186571 Merge "Augment release note for import_object_ns removal" 2016-05-18 22:52:59 +00:00
Jenkins
704052a78f Merge "Remove deprecated option libvirt.remove_unused_kernels" 2016-05-18 22:27:40 +00:00
Jim Rollenhagen
ed308b99ca Augment release note for import_object_ns removal
Passing a compute_driver via nova.virt.foo worked in the past, and no
longer does after merging 8eb03de1eb83a6cd2d4d41804e1b8253f94e5400. Add
an upgrade note to make sure anyone using this doesn't get burned.

Change-Id: I89e6b669a5ba1232bde88821f40022314ba2541b
2016-05-18 12:09:26 -07:00
Jenkins
1fe2508682 Merge "deprecate "default_flavor" config option" 2016-05-17 16:43:12 +00:00
Jenkins
adad0a9a13 Merge "Remove deprecated "memcached_server" in Default section" 2016-05-17 10:19:51 +00:00
Jenkins
db02101528 Merge "deprecate "file transfer" feature for Glance images" 2016-05-17 10:16:20 +00:00
Matthew Booth
547dc45044 Remove deprecated option libvirt.remove_unused_kernels
This option was deprecated in Grizzly, and explicitly marked for
removal in 13.0.0. We have reached this version, and it complicates
the cleanup of writing to the image cache, so now is the time to
remove it.

Change-Id: Iadfe21c956880d9cbe5c16a1e277e1c5362a5755
2016-05-17 11:09:02 +01:00
Markus Zoeller
b7660e0d7b deprecate "default_flavor" config option
The ``default_flavor`` config option is now deprecated and may be
removed as early as the 15.0.0 release. It is an option which was only
relevant for the deprecated EC2 API and is not used in the Nova API.

Change-Id: I31683bd50745ae3c0e1573f43f9ee4165377b0dd
2016-05-13 09:15:57 +00:00
Hieu LE
505bc44615 Remove deprecated "memcached_server" in Default section
The 'memcached_server' option in DEFAULT section which was deprecated in
Mitaka has been completely removed in Newton. This has been replaced by
options from oslo cache section.

Change-Id: I0b23fd65a04de6a35e8ce9efd1110caad63ad562
2016-05-13 00:58:10 +00:00
Sahid Orentino Ferdjaoui
d52ceaf269 virt: reserved number of mempages on compute host
Users need to mark as reserved some amount of pages for third party
components.

The most common use case for using huge/large pages is NFV. In the
current state of that feature we can't guarantee the necessary amount
of pages to allow OVS-DPDK to run properly on the compute node, which
result in the instance failing to boot on a well selected
compute-node. OVS-DPDK needs 1 GB hugepages reserved. Since Nova does
not take into account that page reserved for OVS-DPDK it results in
the process not being able to acquire the necessary memory which
results in a failed boot.

This commit adds a new option 'reserved_huge_pages' which takes a list
of string format to select on which host NUMA nodes and from which
pagesize we want to reserve a certain amount of pages. It also updates
NUMAPageTopology to contain a reserved memory pages attribute, which
helps compute the available pages size on host for scheduling/claiming
resources.

Change-Id: Ie04d6362a4e99dcb2504698fc831a366ba746b44
Closes-Bug: #1543149
2016-05-12 06:32:00 -04:00
Markus Zoeller
9931ef9ca2 deprecate "file transfer" feature for Glance images
In August 2013 the blueprint "image-multiple-location" got merged
with commit 6f9ed56. This commit introduced another way of
downloading images from glance, despite the normal way via HTTP.

After discussing this in IRC, we believe that this feature was never
used in any production environment (it was designed for a Rackspace
use case which never made it to reality) and that the plugin mechanism
of image downloaders isn't the way to go, this change will deprecate
the feature.

Change-Id: I67e2cbf956286132da90ad6a4c6d5075d99177a9
2016-05-12 09:41:12 +00:00
Jenkins
9b88321428 Merge "Add manage command for cell0." 2016-05-11 21:22:10 +00:00
Jenkins
41a84b59da Merge "config: remove deprecated ironic.client_log_level" 2016-05-09 13:45:27 +00:00
Markus Zoeller
a924b1db46 config: remove deprecated ironic.client_log_level
The config option "client_log_level" of the "ironic" section was
deprecated with commit d6baa2ae4d7f18dc2e4845af25c21b95767f46ef since
the Kilo release and this change removes this option.

Closes-Bug: 1365230
Change-Id: I605d4ca5b3924ecf013cbf7e228e713b864d7aa4
2016-05-09 10:24:40 +00:00
He Jie Xu
5a64f57824 Remove the legacy v2 API entry from api-paste.ini
The api sample tests and functional tests already stopped to
run against with legacy v2 API. This patch removes the legacy
V2 API entry from api-paste.ini, it stops user from using
legacy V2 API. This patch also adds deprecated report in pipeline
factory method to notice the user update their api-paste.ini
after upgrade code.

Partially implements blueprint remove-legacy-v2-api-code

Change-Id: I1476b2e364032d7c98f71df0cd61f1d1c19e005d
2016-05-05 19:04:02 +08:00
Sean Dague
7d5fc48682 Deprecate Nova Network
This deprecates Nova Network as was decided in the Nova / Neutron
design summit session for the Newton summit.

Change-Id: I1304a605fc4b1a832036bd98b5bfd0d630d6fe56
2016-04-27 12:03:56 -05:00
Jenkins
3976fe2780 Merge "libvirt: add explicit check for min required QEMU version" 2016-04-26 22:06:58 +00:00
Jenkins
1d72246453 Merge "libvirt: increase min required libvirt to 1.2.1" 2016-04-26 21:57:02 +00:00
Daniel P. Berrange
07e4a90cfe libvirt: add explicit check for min required QEMU version
Previously Nova only checked the minimum required libvirt
version. It should also be checking for a minimum required
QEMU version.

This picks QEMU version 1.5.3, since that is the oldest
QEMU version that exists in the distros that include
the minimum libvirt version 1.2.1.

No decision is made about a "next" QEMU version at this
time.

Change-Id: Ie9413338a2422cc876f48c5c477eb3cd0ffb13ec
2016-04-26 17:29:25 +01:00
Daniel P. Berrange
6b2cad6e12 libvirt: increase min required libvirt to 1.2.1
As advertized during Mitaka, increase the min required
libvirt version to 1.2.1.

At this time there is no new "next" version planned.
The need to advertize a version increase for Ocata
will be decided later.

Change-Id: Ib73cfbd9fc01114ac513730d182ed127710a9e5d
2016-04-26 17:28:36 +01:00
Sean Dague
8eb03de1eb remove the use of import_object_ns
This function dates back to I5eee3389c7719d5f361532b0eddaa249233283a5
when it was introduced to make it easier to seamlessly load drivers
from out of tree. This no long is something we want to do. Also, the
way this works it means that it makes it really hard to debug when an
import of a driver fails (as it's masked out).

This is the only use of the function in all of OpenStack, it should
just go away as an anti-pattern.

Tests were updated to pass, and the compute_driver flag was removed
from tests that passed even when they now had completely bogus values.

Change-Id: I65a537292aa8eda9f3d89e408caa50c445f2050a
2016-04-22 13:44:39 -04:00
Sean Dague
5f996d4786 deprecate nova-all
This deprecates nova-all for the Newton release so we can remove it in
O.

Change-Id: Iae77e137cccbf3dbec7d19da60992368e9647b2a
2016-04-21 17:49:45 +00:00
Mark Doffman
17b57250c2 Add manage command for cell0.
Add a nova manage command to insert a cell mapping for cell0.

    nova-manage cell_v2 map_cell0

blueprint cells-cell0

Change-Id: Ia000e970d66d75374fd7e4e8b9137e0c10939c8e
2016-04-21 09:07:16 -04:00
Sahid Orentino Ferdjaoui
73d5d1f461 libvirt: deprecate use_usb_tablet in favor of pointer_model
A new global option to handle input devices has
been introduced. The specifc option use_usb_tablet in the
group libvirt has been depecreated for Newton and should be
removed for O*

Related-To: blueprint virt-configure-usb-tablet-from-image
Change-Id: I51186530a94d86c8ed14783c7d42d0a3bd601f59
2016-04-21 15:51:42 +10:00
Matt Riedemann
7e2f5c7d34 Remove deprecated ability to load scheduler_host_manager from path
The ability to load the scheduler_host_manager from a random
classpath was deprecated in Mitaka. This removes that ability
so that only the entrypoints in Nova's setup.cfg can be used
to load the scheduler host manager.

The scheduler_host_manager config option is updated to only
allow the choices that are currently in the setup.cfg.

And a release note is added for the upgrade impact of dropping
the deprecated classpath loading ability.

Change-Id: I886c74afac02d100d472b78522e8295748276e4d
Related-Bug: #1403020
2016-04-18 18:00:35 -04:00
Jenkins
2b36ad0f42 Merge "Remove nova-manage service subcommand" 2016-04-18 16:10:04 +00:00
Balazs Gibizer
de4043d454 Remove nova-manage service subcommand
The novaclient already has the following service commands:

service-disable   Disable the service.
service-enable    Enable the service.
service-list      Show a list of all running services.
host-describe     Describe a specific host

This covers what the serivce subcommand of nova-manage provides.
Therefore the service subcommand was deprecated in 13.0 and now
it is removed.

Implements: bp remove-service-management-from-nova-manage

Change-Id: If61875ec78e0e8cd78ea915d8da7362f502d4ca7
2016-04-07 10:46:08 +02:00
Jenkins
b69296eb74 Merge "Remove flavor seeding from the base migration" 2016-04-06 17:55:46 +00:00
Jenkins
9cd6cfc7c7 Merge "conf: Remove 'destroy_after_evacuate'" 2016-04-05 18:35:45 +00:00
Dan Smith
1a1a41bdbe Remove flavor seeding from the base migration
In a time long ago and a land far far away, someone thought it was a
good idea to populate the database with default flavors. That was
probably reasonable at the time, but it no longer makes sense and
in fact causes us some pain now.

This patch removes those default flavors from the database. That means
that new deploys will not have them, but doesn't actually rewrite
history in any way.

This will require changes to our docs, which largely assume the presence
of these default flavors from time zero.

DocImpact

Depends-On: Ic275887e97221d9ce5ce6f12cdcfb5ac94e300b0
Change-Id: I80b63ce1ebca01be61ac0f43d26a2992ecf16678
2016-04-05 08:01:33 -07:00
Jenkins
a1d0fc0ff5 Merge "Enhance value check for option notify_on_state_change" 2016-04-05 14:40:16 +00:00
Stephen Finucane
50b1f1fc26 conf: Remove 'destroy_after_evacuate'
This was deprecated in 'd9c696', and is no longer used anywhere in the
source. Remove it.

Change-Id: I0725880fa43ade68c6286d4ef1b45e7aa7553c0a
2016-04-05 12:26:26 +01:00
ChangBo Guo(gcb)
5f4dcdce16 Enhance value check for option notify_on_state_change
oslo.config provides parameter choices for class cfg.StrOpt to
make sure user's input must be in the choices. Option
notify_on_state_change only allow three values, so let's use
parameter choices.

UpgradeImpact: option notify_on_state_change allows three values:
'vm_state', 'vm_and_task_state', None, default value is None.

Change-Id: I94b2a8ab2584a4a31ef9644ad4f614a15636de8d
2016-04-04 18:52:10 +00:00
Dan Smith
17a8e8a68c Block flavor creation until main database is empty
This makes Flavor.create() fail until the main database has had all
of its flavors migrated. Since we want to avoid any overlap or clashes
in integer ids we need to enforce this. The flavor API was poorly
designed in that it exposes this internal id. Luckily, flavor creation
is infrequent and flavor migration is fast.

The flavors in our database are hard-coded in the first migration,
which means we have to basically do the migration during every
unit test in order to avoid having a legacy environment. Since that
leaves us with deleted flavors in the DB (which screws up the DB
archiving tests), this adds a hard_delete flag to the migration to
do an actual purge of those from our database. What a mess.

Related to blueprint flavor-cell-api

Depends-On: I8ab03af9d2f4974f26a7f8487ec978caea957e45
Change-Id: Iea063448f43da1043d16dd521d255dd29a0e1bc5
2016-04-01 11:16:01 -07:00
Jenkins
c368a3e802 Merge "The 'record' option of the WebSocketProxy should be string" 2016-04-01 15:33:42 +00:00
Jenkins
30f6295a64 Merge "remove the ability to disable v2.1" 2016-04-01 04:54:37 +00:00
Radoslav Gerganov
c5311439d6 The 'record' option of the WebSocketProxy should be string
If proxy service (VNC, spice, serial) is started with the 'record'
option, an exception is thrown. This is because WebSocketProxy
expects a file path for the record argument instead of boolean
value. This patch fixes this by changing 'record' to be string
option. An empty string means no recording.

Closes-Bug: #1559026

Change-Id: Id6cf7c65191bdaa579f7cdadea43230897436de6
2016-04-01 02:15:05 +00:00
Sean Dague
e65557c193 remove the ability to disable v2.1
The option to enable (and thus possibly disable) v2.1 was deprecated
in Mitaka. It should now be removed. v2.1 is a required part of the
API and it was default on.

Change-Id: Ia446040e3b4e87438712e7d8c1bafda0a6e53999
2016-03-31 19:50:43 +00:00
Sean Dague
b90f2bb4fc remove glance deprecated config
This removes the very old glance config options which were deprecated
in I9054bcfb7f5a4a31f0bbfd770c00c767f3d165ba in favor of
glance.api_servers config option. This is required to clear out any
default glance servers so that we could pull from the service catalog
as a default in the future.

Change-Id: Ie2d767c4422ef339d6dcb826f3c8ba3c7cf79f85
2016-03-31 15:35:37 +00:00
Stephen Finucane
235864008b config options: Remove 'wsgi_' prefix from opts
Now that the WSGI opts have been added to a group, there's no longer
any reason to keep the 'wsgi_' prefix for some of these opts around.
Remove it, ensuring the old names are stored as deprecated names.

Change-Id: If39bed3ed2335b6f96455870f1a47cb868d21f39
2016-03-25 13:19:19 +00:00
Jenkins
8fccb6425c Merge "config options: Move wsgi options into a group" 2016-03-25 12:07:15 +00:00
Sean Dague
b63177470f Clarify the `use_neutron` option upgrade notes.
Change-Id: Id86021c684c98a8cc7ff81655f64c857a5115420
2016-03-24 13:53:44 +00:00
Jenkins
2bda625935 Merge "network: make nova to handle port_security_enabled=False" 2016-04-15 15:58:44 +00:00
Sahid Orentino Ferdjaoui
ee7a019826 network: make nova to handle port_security_enabled=False
In somes cases we need to have network without any security rules
applied, unfortunatly nova does not provide way to remove l3
assignements and always at least expose the default security group.
This commit updates code to clear security groups applied to the
network when option port_security_enabled=False is activated on the
network.

Change-Id: I630008a9733624a9d9b59b7aa3b8b2a3f8985d61
Closes-Bug: #1460630
Related-Bug: #1175464
2016-04-14 11:42:39 -04:00