112 Commits

Author SHA1 Message Date
Steven Dake
3f85ccce3a Copy ironic/common files to magnum/common for RPC server
These are straight copies of ironic/ironic/common files needed
for the RPC server.

Change-Id: If493eaee919e55b2e5f85f2411c0b0d813f21bde
2014-12-06 17:26:03 -07:00
Steven Dake
efaeeb0457 Remove common/rpc directory
Ironic uses common/rpc.py rather then a directory.  As a result of copying
this common code from ironic, need to remove the directory.

Change-Id: If818b318a75be783a29c8120f43ab43176aadcc9
2014-12-06 14:24:13 -07:00
Steven Dake
a957f3de24 Add dependencies from oslo-incubator for RPC services
These dependencies are required to create an RPC service.  They are direct
copies of oslo-incubator.git master using python ./update.py.

Change-Id: I09c67b1ddf2e74f32aad7482b69f563b4695696e
2014-12-06 14:24:11 -07:00
Steven Dake
ab5b4265e5 Update openstack.common from oslo-incubator
run update.py from oslo-icubator.git on the repository.

Change-Id: I5fb73100b8fd4365fada7b17d4f4780fc387a1ca
2014-12-06 13:15:00 -07:00
Jenkins
3a2f8033e1 Merge "Add bay uuid to pod model objects" 2014-12-05 17:30:51 +00:00
Pradeep Kilambi
c6ad7207e4 Add bay uuid to pod model objects
Change-Id: Idf88d6553bca5c0db0ceff65ea19813844ee01de
2014-12-05 12:23:34 -05:00
Jenkins
16680c873b Merge "Add stubs for the container actions" 2014-12-05 16:48:34 +00:00
Jenkins
561e1fbd30 Merge "removed unused file for root controller" 2014-12-05 16:46:56 +00:00
Jenkins
8283e695b8 Merge "Fix dockerfile comment containing unrecognized argument 'host'" 2014-12-05 12:48:16 +00:00
Jenkins
f13e66143a Merge "Workflow documentation is now in infra-manual" 2014-12-05 12:46:12 +00:00
Jeremy Stanley
de412ff839 Workflow documentation is now in infra-manual
Replace URLs for workflow documentation to appropriate parts of the
OpenStack Project Infrastructure Manual.

Change-Id: I02603e19e8349fff29bc2745e9e2095c2e3a5a16
2014-12-05 03:30:45 +00:00
Davanum Srinivas
b2c57bbd85 Add stubs for the container actions
Change-Id: I28f477f596a9a464b3ffbb33ef295b375fa3fd65
2014-12-04 21:55:52 -05:00
Davanum Srinivas
1d67184944 removed unused file for root controller
Change-Id: I7d238bb23597d42e9ec0648e56b3741ad9e2791b
2014-12-04 21:25:00 -05:00
Jenkins
129fb6e349 Merge "Fix REST API and test case for Containers" 2014-12-04 23:18:55 +00:00
Davanum Srinivas
c4f96afbcc Fix REST API and test case for Containers
Change-Id: I4506dc2e7810940ae2972c4307f1335217ca5f9d
2014-12-04 18:00:12 -05:00
Jenkins
b5390755b5 Merge "Remove crud in magnum/objects/sqlalchemy" 2014-12-04 22:30:56 +00:00
Pradeep Kilambi
8213e71cb1 Implement python interface to execute k8s CLI services
Implements interface to interact with kubectl commands for
services and pod operations.

Change-Id: I86bd0e5be93e258a14dc750cc6a4a3cb2fa4a448
Implements: blueprint magnum-backend-kubernetes-cli
2014-12-04 16:20:09 -05:00
Davanum Srinivas
2bfed4d60f Remove crud in magnum/objects/sqlalchemy
Now that we have the versioned objects. We don't need these
files.

Change-Id: I9f410bb7fcac5a048d1b5331e1f41d332245b3fb
2014-12-04 14:59:45 -05:00
Davanum Srinivas
7cb8e559a3 Get the Pod REST API and tests working
Change-Id: Ib765d1c3ed8a6c06136233abd393fb1efae71e41
2014-12-04 11:46:55 -05:00
Davanum Srinivas
dbb697208e Add missing exceptions in code borrowed from Ironic
Change-Id: I35ab778c4c9a0843ef94c4dd294043f033940715
2014-12-04 08:51:21 -05:00
Davanum Srinivas
3db1457eeb Get HTTP Patch test working with Bay REST API
Change-Id: I2401bd32e06e77f5f605b9ed5c3bcdb341a5c3f0
2014-12-04 08:04:36 -05:00
Davanum Srinivas
219b27fc63 Look for tests only under magnum/tests directory
Change-Id: Ie6f44ac36120635461997e6f074638a73fac978d
2014-12-04 00:16:09 +00:00
Steven Dake
694ee32774 Remove cruft in api tree
A bunch of cruft has formed in the api tree.  We don't need these things
with versioned objects so best to remove  them.

Change-Id: I508258a4d6eb252fc18754808e3beb2409e3173e
2014-12-03 17:22:09 -05:00
Steven Dake
cbcb4a61c3 Use versioned objects for Container objects
Use the versioned infrastructure for Container objects

Change-Id: I84df8f91bd022e4c69a2a65bc68c33ad63205e9e
2014-12-03 17:21:48 -05:00
Steven Dake
d03574a0c2 Use versioned objects for bays
This creates and deletes bay objects in the database.

This new model is great because we can do things like:

https://github.com/openstack/nova/blob/master/nova/cmd/compute.py#L67

And completely override the database with an RPC mechanism instead.
This way objects are created in the ReST endpoint but stored in the
database via the backend and conductor.

I was attempting to write this code, but found it is already on its
way to being merged into oslo-incubator here:

https://review.openstack.org/#/c/127532/

Change-Id: Iff995d28a78f41874cc6ad62baf7420960a530da
2014-12-03 17:21:17 -05:00
Steven Dake
3b5d9b1f40 Add object.service
Object.service is used for reading/writing the sql database.  They
are remoteable, so they can be called over RPC.

Change-Id: Ief4decc4aa2b4410df333a2aae4bf88709b28684
2014-12-02 20:36:21 -05:00
Steven Dake
8d4ed82a2c Add object.pod
Add the pod object for use with versioned objects

Change-Id: I2f0f50af512a94a47868ec6ce7a829b45b236952
2014-12-02 20:36:08 -05:00
Steven Dake
03c5dfefa2 Add an object.container
Add a container object for communicating data between the ReST API
and the database API

Change-Id: I0d0a00ca3bde07343a63adca6556bd142dfaa5d2
2014-12-02 20:35:44 -05:00
Steven Dake
c95136fe6a Modify the object registry to support ver objects
Versioned objects are a nice way to pass objects around via RPC
which is necessary in our decided architecture.  Trying to implement
this again is pointless, as this code will soon enter oslo incubation
and likely become standard across projects.

Change-Id: Ic8b43606a5e37f1fe7e83b47225a2a50773468c9
2014-12-02 16:25:51 -07:00
Steven Dake
07359cbf55 Remove unnecessary model init call
there is no need to model.init with versioned objects.

Change-Id: I7c13ab7c34f1dcfd351fbd29be032477aff6e13a
2014-12-02 15:04:34 -07:00
Steven Dake
6df4c09281 Set max limit as required by versioned objects
max_limit is an api option which must be set for use by versioned
objects.

Change-Id: I242a811b1fae299d09f22377101a140575923e63
2014-12-02 15:04:34 -07:00
Steven Dake
b3dc3a0e21 Add objects/utils.py copied from Ironic
This is a straight copy of utils.py from Ironic to support versioned
objects.

Change-Id: I9cb9b491373fa46630fc06428b06a515cda037d8
2014-12-02 15:04:34 -07:00
Steven Dake
bb2546f0eb Copy Ironic's database model codebase
The Ironic codebase is pretty simple for database access.  This work
leads into the introduction of versioned object technology from nova
and ironic that will be entering oslo:

https://review.openstack.org/#/c/127532/

This will drastically speed up the process of implementing moving the
RPC objects across the network.

Change-Id: I38aa451b658b66f5b6f10ced03ea2e0355af4ecd
2014-12-02 15:04:31 -07:00
Steven Dake
b7d081cbc6 Add some common code copied from Ironic
To support versioned objects, some common code from Ironic is necessary
to get to a working environment.  These are straight copies with things
renamed.

Change-Id: I14afd02f5791c74a2d5daf55681ae7047083037a
2014-12-02 14:15:51 -07:00
Steven Dake
e68f763b95 Add versioned object dependency modules
These modules don't actually do anything at this point in the patch
stream.  These are straight copies from Ironic with things renamed.
They become later dependencies for existing modules.

Change-Id: I355312e48d38e84e3ec1e3a906ae5155dbce4359
2014-12-02 02:25:40 -07:00
Steven Dake
1080e98cb9 Add versionutils from oslo-incubator
versionutils is necessary to implement versioned objects copied
from Nova/Ironic.

Change-Id: I81a228a186ce583e9cd2cf8cd98bcb6167a6a5f0
2014-12-02 01:28:43 -07:00
Motohiro OTSUKA
25b9991226 Add sqlalchemy subclass for Bay
Implements: blueprint db-object-definitions

Change-Id: I0af2a64faa80217e8d72395a81be33f7f4fa9f44
2014-12-02 11:16:25 +09:00
Davanum Srinivas
aba1d2bf99 Switch to keystonemiddleware
Change-Id: I92a6b8f79a503896e34f1915b6fb32916b642e6f
2014-12-01 12:14:51 -05:00
Pierre Padrixe
61de9551bd Fix dockerfile comment containing unrecognized argument 'host'
Change-Id: If2781a3234284965ed7f99d7a464f3df03f2cceb
2014-12-01 15:41:29 +01:00
Jenkins
65a2af30db Merge "Update README for magnum" 2014-12-01 13:27:30 +00:00
Jenkins
b57e8cec40 Merge "Split up Base and Query class" 2014-12-01 13:26:35 +00:00
Jenkins
093a7b9932 Merge "Add sqlalchemy subclass for Container" 2014-12-01 13:25:51 +00:00
Jenkins
95db02ec32 Merge "Add base files for sqlalchemy implementation" 2014-12-01 13:25:08 +00:00
Motohiro OTSUKA
b0991e9d8c Split up Base and Query class
Base and Query class are duplicated in API controllers.
This fixes it.

Change-Id: Iccc9445747d00310d42ff904b572f7891cf8167f
2014-12-01 18:48:40 +09:00
Motohiro OTSUKA
ed4e5a7024 Add sqlalchemy subclass for Container
Change-Id: Ic15bbd8e72661412c359ed055f013774e2d16493
Implements: blueprint db-object-definitions
2014-12-01 17:21:26 +09:00
Jay Lau
a69c1dea1f Update README for magnum
1) The "Run" section is not accurate for "magnum-backend"
2) Adjust the font for "select a subcommand"

Change-Id: I4023880a925744415d90d00c42db813284c0bbc3
2014-12-01 00:40:48 -05:00
Motohiro OTSUKA
e8f4831406 Add base files for sqlalchemy implementation
These code is imported from Solum.

Implements: blueprint db-object-definitions
Change-Id: Idc5458bd6b758f3d4a62bf5f059ce4dd444a825a
2014-12-01 11:23:58 +09:00
Jenkins
625931328e Merge "Replaces Solum with Magnum" 2014-12-01 02:18:47 +00:00
Jenkins
5ab29b0557 Merge "Fix arguments to bay_create in AMQP" 2014-12-01 01:29:12 +00:00
Motohiro OTSUKA
6ea19d6be5 Replaces Solum with Magnum
Change-Id: I0a8dc73afe614e1ca9953abe6b0fb181d06eaabe
2014-12-01 10:26:12 +09:00