When creating a cluster, validate node processes as early as we can.
(The config-recommending step may have some impact on validity, so we
must leave that as the first call.)
Note that there has been a desire mentioned to move the node process
validation to occur during cluster template creation. Unfortunately the
amount of refactoring needed makes the task too daunting to be
completed now.
Change-Id: Ib5c91e062b32a83268d178417cbc5120d4c57934
Partially-Implements: bp portable-node-group-and-cluster-templates
This change adds function to REST api to enable user to export node
group template to JSON, so that it can be later imported on another
deployment.
Change-Id: I7a2ef7e5cff70e6034c1222252fbf7c5c35a7e1c
seriailized plugins are needed only when list
of plugins is requested by API. otherwise
we should return usual plugin objects
Change-Id: Iadcebf358d41ec9acf00750967f5ec9e83e95543
bp: plugin-management-api
This patch overwrites migration from novaclient.images to
glanceclient.v2.images. Glanceclient uses Warlock library
and we want to be independent of this library because its 1.3.0
release had broken all our CI.
The idea is we speak to glanceclient which returns image dict,
then we transform this dict by adding our sahara related key-values.
Change-Id: I07e9875622ace6b0aa3cd098d36b2eeed59c6d54
co-authored-by: Vitaly Gridnev <vgridnev@mirantis.com>
things implemented in this change:
* api for updating labels
* exposing labels data
* unit tests
coming soon:
* validations based on labels
Change-Id: If854e812492cef1b1d32ae01f74e6b32cf456ee3
bp: plugin-management-api
The novaclient.v2.images module is deprecated and will be removed
after Nova 15.0.0 is released so we need to migrate to glanceclient.
note: glanceclient doesn't have any Image class. It have image json
schema and use it to generate warlock models when creates image
object.
closes-bug: 1573595
Depends-on: I2e13867bed72fd2ae6749491dd5b032c2c08f9f6
Change-Id: Ie0f04c15e6e49e8e7c77f7b7d870a368cdd5c7c7
to avoid code duplication between api v1 and v2 it's
better to replace serialization of plugin to separate
method of PluginManager.
related bp: plugin-management-api
Change-Id: I4ccdd6fb0e321ce7c43032331c419aea22f80f19
This change renames the service api modules to be organized under the
sahara.service.api package. A v2 package has been added which holds the
equivalent v10 and v11 functions. To make the api version setup
transparent to the caller, the global OPS variable has been refactored
into the base sahara.service.api package.
Changes
* create sahara/service/api package
* rename sahara/service/api.py to sahara/service/api/v10.py
* rename sahara/service/edp/api.py to sahara/service/api/v11.py
* correct occurances of old imports in code and tests
* rename sahara/tests/unit/service/test_api.py to
sahara/tests/unit/service/api/test_v10.py
* add initial v2 equivalents for current api services
* move global OPS object into the sahara.service.api package
* add documentation for the api service layer
Partial-Implements: bp v2-api-experimental-impl
Depends-On: I16918a30a862b42edd7a982caf555be618199ac3
Change-Id: Iefbedbc76ac620ff012bcaf536c17637b6252a15