Commit Graph

43 Commits

Author SHA1 Message Date
Vishvananda Ishaya e6073532e5 Separate metadata api into its own service
part 1 of blueprint separate-nova-metadata

 * adds api/metadata/ and moves code from ec2
 * moves metadata into separate binary
 * changes metadata forward to use metadata host and port
 * moves the metadata accept rule to the metadata api
 * adds nova-api-* to setup.py

Change-Id: I7f5d8e6cafc55b5c383cd88991f29c6059fb8d82
2011-11-15 13:27:58 -08:00
Ahmad Hassan 68111826af Capture exceptions happening in API layer
Added the faulwrapper around EC2 api so that it captures any unseen
exceptions and return a graceful error back. Also changed the openstack
exception message. The actual exception message will be printed in the
logs and would not return back the user.
Removed openstack wsgi dependency from
EC2 fault wrapper. Added unit tests for
EC2 fault wrapper
Fixes bug 869132.

Change-Id: I03d18f321f141ae96f1add99ea0b70e736253c89
2011-11-10 17:30:31 +00:00
Kevin L. Mitchell 9a15c0d070 Add XML templates.
Creates the concept of an XML template, which is a description of
how to serialize an object into XML.  XML templates are split into
master and slave templates, and slave templates can be attached to
master templates to augment the serialization.  The expected use
case is with extensions, allowing extensions to not only add data
to the object, but to also ensure that the new data gets
serialized into the output XML representation.

Also includes lazy serialization, for use by extensions.

Change-Id: Ifd8493be04c73bbb2a850080b687c5e799c48239
2011-10-17 14:19:25 -05:00
Brian Waldon edf3e39cd3 Remove OSAPI v1.0
Change-Id: I92302c9c2b8f98d140c4844d4522adbcb45c8dd7
2011-10-17 13:48:22 -04:00
Johannes Erdfelt 6e5f2d88e6 Add support for header version parameter to specify API version.
bug 844905

The 1.1 API specifies that the API version can be determined by URL path
(eg /v1.1/tenant/servers/detail), Content-Type header
(eg application/json;version=1.1) or Accept header
(eg application/json;q=0.8;version=1.1, application/xml;q=0.2;version=1.1).

Change-Id: I01220cf1eebc0f759d66563ec67ef2f697c6d310
2011-10-04 14:44:34 +00:00
Vishvananda Ishaya 43604520de remove keystone 2011-09-20 15:17:03 -07:00
Dan Prince 1ba752768a Update paste config so that EC2 admin API defaults to noauth. 2011-08-23 22:43:10 -04:00
Vishvananda Ishaya c3ed01d7d5 change NoAuth to actually use a tenant and user 2011-08-22 14:24:59 -07:00
Vishvananda Ishaya 41819d8d04 fix integration tests 2011-08-17 20:22:30 -07:00
Vishvananda Ishaya 90650e5bec make admin context the default, clean up pipelib 2011-08-17 19:31:01 -07:00
Vishvananda Ishaya 93207c19c7 removed admincontext middleware 2011-08-12 11:29:25 -07:00
Vishvananda Ishaya 9ce9ef1166 add keystone middlewares for ec2 api 2011-08-11 21:03:37 -07:00
Soren Hansen 669c0214ec Move api-paste.ini into a nova/ subdir of etc/ 2011-04-05 14:54:11 +02:00
Brian Waldon 0236c12d37 merging trunk and resolving conflicts 2011-03-25 09:11:13 -04:00
Dan Prince e5069f27cd Reconcile tests with latest trunk merges. 2011-03-24 13:56:25 -04:00
Dan Prince 672fed6371 Merge w/ trunk. 2011-03-24 12:24:40 -04:00
Brian Waldon e16555e69c merging trunk r864 2011-03-24 11:48:29 -04:00
Brian Waldon ea44238e8a merging trunk r843 2011-03-22 10:29:24 -04:00
Brian Waldon 59cb754cc3 merging trunk 2011-03-21 15:23:11 -04:00
Dan Prince 9538957691 Merge w/ trunk. 2011-03-21 13:46:08 -04:00
Brian Lamar b238bfeece Re-implementation (or just implementation in many cases) of Limits in the OpenStack API. Limits is now available through /limits and the concept of a limit has been extended to include arbitrary regex / http verb combinations along with correct XML/JSON serialization. Tests included. 2011-03-18 17:16:14 +00:00
Brian Waldon 35bd58bd9d moving Versions app out of __init__.py into its own module; adding openstack versions tests; adding links to version entities 2011-03-17 15:43:56 -04:00
Naveed Massjouni 11698a131f Added mechanism for versioned controllers for openstack api versions 1.0/1.1.
Create servers in the 1.1 api now supports imageRef/flavorRef instead of
imageId/flavorId.
2011-03-17 03:21:09 -04:00
Brian Lamar 4b49df7e72 Major cosmetic changes to limits, but little-to-no functional changes. MUCH better testability now, no more relying on system time to tick by for limit testing. 2011-03-15 16:49:19 -04:00
Brian Waldon cc25d27775 modifying paste config to support v1.1; adding v1.1 entry in versions resource ( GET /) 2011-03-15 15:56:54 -04:00
Dan Prince 229c5bc332 Implement action extensions. 2011-03-14 16:58:03 -04:00
Kevin L. Mitchell f72366f007 Create --paste_config flag defaulting to api-paste.ini and mv etc/nova-api.conf to match 2011-03-07 19:33:24 +00:00
Thierry Carrez debfca9456 Switch to API_listen and API_listen_port, drop wsgi.paste_config_to_flags 2011-02-18 16:02:55 +01:00
Todd Willey a112d11cc2 Use ttx's patch to be explict about paths, as urlmap doesn't work as I expected. 2011-01-20 16:07:27 -05:00
Todd Willey f58b4f74e3 Merge trunk + wsgirouter 2011-01-12 17:47:43 -05:00
Todd Willey 038c9c7663 Merge trunk and handle flagfiles with kid-gloves in nova-api. Rename some flags for clarity. 2011-01-12 17:35:09 -05:00
Todd Willey 773b7f8477 Merge version matching url change from wsgirouter branch. 2011-01-12 14:37:29 -05:00
Todd Willey 6ebf9bb2db Fix url matching for years 2010-forward. 2011-01-12 14:36:36 -05:00
Todd Willey 2c7dfbfd53 Update config for launching logger with cleaner factory. 2011-01-12 14:33:40 -05:00
Todd Willey 88641cd978 Update paste config for ec2 request logging. 2011-01-12 14:30:12 -05:00
Todd Willey 4e034f3d69 Remove module-level factory methods in favor of having a factory class-method
on wsgi components themselves.  Local options from config are passed to the
__init__ method of the component as kwargs.
2011-01-06 13:57:48 -05:00
Todd Willey bccec6c8ba Fix openstack api tests and add a FaultWrapper to turn exceptions to faults. 2011-01-06 02:08:01 -05:00
Todd Willey 2491c2484f Make paste the default api pattern.
* get rid of the --use_lockout flag since it will be specified in paste config
  (Example line is commented out in etc/nova-api.conf, factory is in place)
* remove old nova-api binary and promote nova-api-paste
* change how we store ec2 parameters to bin the the ApiRequest
* get rid of Router, since paste.urlmap is equally effective
  (Requestify now gets passed the name of the controller requests are to.)
2011-01-04 18:16:16 -05:00
Todd Willey f55dbc2f59 Rework how routing is done in ec2 endpoint. 2011-01-04 18:01:29 -05:00
Todd Willey aa73649911 remove cloudpipe from paste config 2010-12-30 01:25:29 -05:00
Todd Willey ca5c95726b Merge trunk. 2010-12-27 19:10:26 -05:00
Todd Willey 8c8b289f26 Remove ec2 config chain and move openstack versions to top-level application. 2010-12-21 02:21:01 -05:00
Todd Willey c364724a0d Use paste.deploy for running the api server. 2010-12-21 01:41:28 -05:00