Commit Graph

47361 Commits

Author SHA1 Message Date
Tony Breeds 26144fec22 Retire Packaging Deb project repos
This commit is part of a series to retire the Packaging Deb
project. Step 2 is to remove all content from the project
repos, replacing it with a README notification where to find
ongoing work, and how to recover the repo if needed at some
future point (as in
https://docs.openstack.org/infra/manual/drivers.html#retiring-a-project).

Change-Id: I8d6903be44f4acb33aee0f875928b2bec5cc5caa
2017-09-12 15:45:20 -06:00
Jenkins 7234e6e474 Merge "[placement] Use wsgi_intercept in PlacementFixture" 2017-07-25 17:05:22 +00:00
Jenkins 3dd6526137 Merge "Make notification publisher_id consistent" 2017-07-25 15:48:46 +00:00
Jenkins bed59a47b7 Merge "Ironic: Support boot from Cinder volume" 2017-07-25 15:18:35 +00:00
Chris Dent fdf27abf7d [placement] Use wsgi_intercept in PlacementFixture
Using wsgi_intercept to run the placement API in the PlacementFixture,
instead of spawning an eventlet server. This should help with the weird
situation where sometimes requests that are supposed to go to compute or
placement go to the other.

Some combination of six or wsgi-intercept is not happy with the use of
socket_options in the keystoneauth1.session.TCPKeepAliveAdapter, so a
MonkeyPatch is used to skip over it and use the parent Adapter.

The change here continues to monkeypatch the report client so that we
don't have to monkey patch keystone's auth and endpoint handling. We
don't want that as it will also patch the nova side of things.

Change-Id: I03b3abea152d45575ac6dde22ccbe32b6acb4646
Related-Bug: #1705753
2017-07-25 14:02:49 +01:00
Jenkins 87a0143267 Merge "[placement] Flush RC_CACHE after each gabbit sequence" 2017-07-25 12:19:12 +00:00
Jenkins c45b88654a Merge "Remove check_detach" 2017-07-25 10:40:49 +00:00
Jenkins 62c4535a85 Merge "request_log addition for running under uwsgi" 2017-07-25 04:47:19 +00:00
Satoru Moriya 3e1a3c9f82 Ironic: Support boot from Cinder volume
This enables Ironic to boot bare metal machines from Cinder
volume. Ironic virt driver needs to pass the remote volume
connection information down to Ironic when spawning a new
bare metal instance requested to boot from a Cinder volume.

This implements get_volume_connector method for the Ironic
driver. It will get connector information from the Ironic service
and pass it to Cinder's initialize_connection method for attached
volumes. And then it puts the returned value into Ironic.

This patch changes the required Ironic API version to 1.32 for using
new API for volume resources.

Co-Authored-By: Satoru Moriya <satoru.moriya.br@hitachi.com>
Co-Authored-By: Hironori Shiina <shiina.hironori@jp.fujitsu.com>
Change-Id: I319779af265684715f0142577a217ab66632bf4f
Implements: blueprint ironic-boot-from-volume
2017-07-25 03:57:51 +00:00
Jenkins 19f78e2f5f Merge "Add online migration to move quotas to API database" 2017-07-25 02:07:57 +00:00
Jenkins 7bfe19338d Merge "Migrate Ironic Flavors" 2017-07-25 01:32:21 +00:00
Jenkins 9a496c3340 Merge "Allow wrapping of closures" 2017-07-25 01:04:36 +00:00
Chris Dent 997ba03094 [placement] Flush RC_CACHE after each gabbit sequence
Each gabbi yaml file is supposed to be an isolated sequence. The
fixtures were already making sure that the database was wiped, and the
traits sync was reset, but not making sure the _RC_CACHE used to cache
mappings between resource class strings and ids was flushed.

This change clears the _RC_CACHE in the APIFixture stop_fixture method.

For sake of information:
Before fixing the issue it was confirmed by running the two gabbi files
indicated in the bug report, in sequence, in a single process:

    .tox/functional/bin/python -m subunit.run discover \
        nova.tests.functional.api.openstack.placement \
        --load-list /tmp/runthese |subunit-trace

Where runthese contains (with fully qualified package name prefixes):

test_placement_api.allocation-bad-class_allocate_some_of_it_standard.test_request
test_placement_api.resource-class-in-use_delete_resource_class.test_request

Change-Id: Icb3beef7964887f29bf8cca95ac7dbae1511876d
Closes-Bug: #1706207
2017-07-25 01:59:52 +01:00
Jenkins 7726f82843 Merge "Add tags to instance.create Notification" 2017-07-25 00:55:44 +00:00
melanie witt b291061cb1 Add online migration to move quotas to API database
This moves quota limits and classes from the main database to the
API database in an online migration.

Part of blueprint cells-quota-api-db

Change-Id: I64b600b30f6e54db0ec9083c6c176e895c6d0cc2
2017-07-24 18:36:46 -04:00
Jenkins b25ca6b898 Merge "Update ironic feature matrix" 2017-07-24 22:25:45 +00:00
Jenkins ce21958680 Merge "doc: Populate the 'user' section" 2017-07-24 22:25:10 +00:00
Jenkins bd7b6a9c06 Merge "doc: Populate the 'reference' section" 2017-07-24 22:13:10 +00:00
Jenkins 2f110810be Merge "doc: Populate the 'contributor' section" 2017-07-24 22:12:41 +00:00
Jenkins 9a33b21140 Merge "doc: Populate the 'configuration' section" 2017-07-24 22:12:10 +00:00
EdLeafe 8e77c475e1 Migrate Ironic Flavors
This patch adds code to the Ironic driver in init_host that will update
the flavor.extra_specs for all of the instances on that host with the
custom resource class information for the Ironic node. If the node has
not been populated with its resource_class, nothing happens. If there is
a custom resource_class set for the node, the instance's flavor's
extra_specs is modified to include the normalized resource class name
with a count of 1.

Blueprint: custom-resource-classes-in-flavors

Change-Id: Ia6be88720cc45defda709ae2a47b11624c78e7dc
2017-07-24 15:06:36 -07:00
Kevin_Zheng f665565d69 Add tags to instance.create Notification
This patch added a new field 'tags' to InstanceCreatePayload.

Partial-implement: bp additional-notification-fields-for-searchlight
Partial-implement: blueprint support-tag-instance-when-boot

Change-Id: Iefaa9da4e136fd5e823bf7b11c8aa5b4cd6d7de8
2017-07-24 18:05:05 -04:00
Jenkins 616d78e3ea Merge "Make Quotas object favor the API database" 2017-07-24 21:31:40 +00:00
Jenkins fc613c244a Merge "Remove an unnecessary argument in _prep_resize" 2017-07-24 19:53:46 +00:00
Jenkins 3998d6114e Merge "placement: add retry tight loop claim_resources()" 2017-07-24 18:54:02 +00:00
Sean Dague aa45a6f3ab request_log addition for running under uwsgi
If someone chooses to run under uwsgi/apache instead of eventlet, the
basic logging of requests goes away (as that was an eventlet.wsgi
function). This is a critical piece of information for understanding
how services are working, and we need to retain it under uwsgi/apache.

This creates a new request_log middleware, inspired by the one in
placement, to provide that functionality. This includes all the same
information as before: http method, uri, status, content length, time
for the request. It also includes the microversion the request was
processed as, "-" if no microversion.

The middleware does not emit anything if it detects that it's running
under eventlet, to prevent duplicate log messages.

Release notes provided as this will be a manual transition for folks
as it's an api-paste.ini change.

Change-Id: I3a597b06d3501c765e2d7805c6c1375d6f4e40db
2017-07-24 14:23:38 -04:00
Jenkins 321f426c30 Merge "Dump versioned notifications when test_create_delete_server" 2017-07-24 15:46:30 +00:00
Jenkins 2d264aa147 Merge "Updated from global requirements" 2017-07-24 15:45:54 +00:00
Jenkins e388109c48 Merge "Update policy description for 'instance_actions'" 2017-07-24 15:34:08 +00:00
Takashi NATSUME 633a6c7a84 Remove an unnecessary argument in _prep_resize
'request_spec' is not used in '_prep_resize' method.
So remove it.

TrivialFix
Change-Id: I08377c00b6d2f92f99a9de935b6a62f1330bbc8b
2017-07-24 17:21:32 +09:00
OpenStack Proposal Bot 2e6c64fda0 Updated from global requirements
Change-Id: I6d428e105c681851010600d0f812c4a317c5c67b
2017-07-23 19:04:10 +00:00
Jenkins d2dbd4f547 Merge "[placement] cover deleting a custom resource class in use" 2017-07-23 18:30:31 +00:00
Jenkins a553373a14 Merge "Updated from global requirements" 2017-07-23 17:00:10 +00:00
Jenkins 716dabdb0e Merge "Deprecate useless quota_usage_refresh from nova-manage" 2017-07-23 16:52:16 +00:00
Jenkins 422f9b5646 Merge "Implement interface attach/detach in ironic virt driver" 2017-07-23 14:14:24 +00:00
OpenStack Proposal Bot 6628d77cb5 Updated from global requirements
Change-Id: Id58d0ab2058ea4df33e0818f8c44c764a95fcaaa
2017-07-23 13:48:00 +00:00
OpenStack Proposal Bot 06c7fc1c8b Updated from global requirements
Change-Id: I3ce445c2897b42f77034a9d776e152bc503dbdeb
2017-07-22 16:34:36 +00:00
Jay Pipes 6ab42b77d2 placement: add retry tight loop claim_resources()
Adds a recursive call to the scheduler report client's
claim_resources() method that retries in the event (and only in the
event) of a concurrent update detected. If this error is returned, a
retry of the exact same allocation request is safe and perfectly
reasonable to attempt in normal operation.

Change-Id: Ib1abbb2deb1c0fd0a133e13c3cd2a967e3b3dc58
blueprint: placement-allocation-requests
2017-07-22 14:31:07 +00:00
Matt Riedemann 246f032dc9 Dump versioned notifications when test_create_delete_server
When this test fails on a MismatchError we need to know
which notifications we have to figure out what's missing
in order to debug it.

Change-Id: I0ec92f853f5c76737b2888cd92cf9804ca83c495
Related-Bug: #1705818
2017-07-22 08:14:07 -04:00
Jenkins 33d25faa9c Merge "Remove 'reserved' count from used limits" 2017-07-22 02:03:46 +00:00
Jenkins 516d51e0d0 Merge "retry on authentication failure in api_client" 2017-07-22 01:16:54 +00:00
Jenkins 3a4252336f Merge "[placement] Add api-ref for traits" 2017-07-22 00:30:17 +00:00
Jenkins 284dd0b13d Merge "Removed unused 'wrap' property" 2017-07-21 23:23:35 +00:00
Jenkins 1169912fa0 Merge "placement: proper JOIN order for shared resources" 2017-07-21 23:22:22 +00:00
Jenkins 5d2297cd6e Merge "Remove the unittest for plugin framework" 2017-07-21 21:19:09 +00:00
Jenkins 9f80e23677 Merge "Use plain routes list for versions instead of stevedore" 2017-07-21 21:18:12 +00:00
Jenkins 8df1014a22 Merge "doc: Switch to openstackdocstheme" 2017-07-21 20:16:48 +00:00
Jenkins fe46cfa301 Merge "Change default policy to view quota details" 2017-07-21 20:02:20 +00:00
Chris Dent 068f85dc38 retry on authentication failure in api_client
Due to eventlet threading weirdness, it appears that sometimes a request
that is destined for the compute api fixture ends up on the placement
api fixture. The latter uses a no auth middleware that 401s when it does
not get a token.

The change retries the auth request a few times before failing.

If this has no effect, doing an eventlet.sleep() before the retry might
be something worth trying.

Change-Id: I9ca2022ca956be5ea67f4c40bed80115f2fae29d
Related-Bug: #1705753
2017-07-21 20:00:00 +00:00
Jenkins 840927c2b1 Merge "Updated from global requirements" 2017-07-21 18:44:54 +00:00