X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FN2VC.git;a=blobdiff_plain;f=modules%2Flibjuju%2Fjuju%2Fclient%2F_client3.py;fp=modules%2Flibjuju%2Fjuju%2Fclient%2F_client3.py;h=0000000000000000000000000000000000000000;hp=67840dbbcade38315a0110aeb01b8fd60dce5e86;hb=9d18c22a0dc9e295adda50601fc5e2f45d2c9b8a;hpb=19c5cfca317615597be6bf1051e9d2fa903adb97 diff --git a/modules/libjuju/juju/client/_client3.py b/modules/libjuju/juju/client/_client3.py deleted file mode 100644 index 67840db..0000000 --- a/modules/libjuju/juju/client/_client3.py +++ /dev/null @@ -1,6749 +0,0 @@ -# DO NOT CHANGE THIS FILE! This file is auto-generated by facade.py. -# Changes will be overwritten/lost when the file is regenerated. - -from juju.client._definitions import * -from juju.client.facade import ReturnMapping, Type - - -class ActionFacade(Type): - name = 'Action' - version = 3 - schema = {'definitions': {'Action': {'additionalProperties': False, - 'properties': {'name': {'type': 'string'}, - 'parameters': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'receiver': {'type': 'string'}, - 'tag': {'type': 'string'}}, - 'required': ['tag', 'receiver', 'name'], - 'type': 'object'}, - 'ActionResult': {'additionalProperties': False, - 'properties': {'action': {'$ref': '#/definitions/Action'}, - 'completed': {'format': 'date-time', - 'type': 'string'}, - 'enqueued': {'format': 'date-time', - 'type': 'string'}, - 'error': {'$ref': '#/definitions/Error'}, - 'message': {'type': 'string'}, - 'output': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'started': {'format': 'date-time', - 'type': 'string'}, - 'status': {'type': 'string'}}, - 'type': 'object'}, - 'ActionResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ActionResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'ActionSpec': {'additionalProperties': False, - 'properties': {'description': {'type': 'string'}, - 'params': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}}, - 'required': ['description', 'params'], - 'type': 'object'}, - 'Actions': {'additionalProperties': False, - 'properties': {'actions': {'items': {'$ref': '#/definitions/Action'}, - 'type': 'array'}}, - 'type': 'object'}, - 'ActionsByName': {'additionalProperties': False, - 'properties': {'actions': {'items': {'$ref': '#/definitions/ActionResult'}, - 'type': 'array'}, - 'error': {'$ref': '#/definitions/Error'}, - 'name': {'type': 'string'}}, - 'type': 'object'}, - 'ActionsByNames': {'additionalProperties': False, - 'properties': {'actions': {'items': {'$ref': '#/definitions/ActionsByName'}, - 'type': 'array'}}, - 'type': 'object'}, - 'ActionsByReceiver': {'additionalProperties': False, - 'properties': {'actions': {'items': {'$ref': '#/definitions/ActionResult'}, - 'type': 'array'}, - 'error': {'$ref': '#/definitions/Error'}, - 'receiver': {'type': 'string'}}, - 'type': 'object'}, - 'ActionsByReceivers': {'additionalProperties': False, - 'properties': {'actions': {'items': {'$ref': '#/definitions/ActionsByReceiver'}, - 'type': 'array'}}, - 'type': 'object'}, - 'ApplicationCharmActionsResult': {'additionalProperties': False, - 'properties': {'actions': {'patternProperties': {'.*': {'$ref': '#/definitions/ActionSpec'}}, - 'type': 'object'}, - 'application-tag': {'type': 'string'}, - 'error': {'$ref': '#/definitions/Error'}}, - 'type': 'object'}, - 'ApplicationsCharmActionsResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ApplicationCharmActionsResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'Entities': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}}, - 'required': ['entities'], - 'type': 'object'}, - 'Entity': {'additionalProperties': False, - 'properties': {'tag': {'type': 'string'}}, - 'required': ['tag'], - 'type': 'object'}, - 'Error': {'additionalProperties': False, - 'properties': {'code': {'type': 'string'}, - 'info': {'$ref': '#/definitions/ErrorInfo'}, - 'message': {'type': 'string'}}, - 'required': ['message', 'code'], - 'type': 'object'}, - 'ErrorInfo': {'additionalProperties': False, - 'properties': {'macaroon': {'$ref': '#/definitions/Macaroon'}, - 'macaroon-path': {'type': 'string'}}, - 'type': 'object'}, - 'FindActionsByNames': {'additionalProperties': False, - 'properties': {'names': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'type': 'object'}, - 'FindTags': {'additionalProperties': False, - 'properties': {'prefixes': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['prefixes'], - 'type': 'object'}, - 'FindTagsResults': {'additionalProperties': False, - 'properties': {'matches': {'patternProperties': {'.*': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}}, - 'type': 'object'}}, - 'required': ['matches'], - 'type': 'object'}, - 'Macaroon': {'additionalProperties': False, 'type': 'object'}, - 'RunParams': {'additionalProperties': False, - 'properties': {'applications': {'items': {'type': 'string'}, - 'type': 'array'}, - 'commands': {'type': 'string'}, - 'machines': {'items': {'type': 'string'}, - 'type': 'array'}, - 'timeout': {'type': 'integer'}, - 'units': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['commands', 'timeout'], - 'type': 'object'}}, - 'properties': {'Actions': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ActionResults'}}, - 'type': 'object'}, - 'ApplicationsCharmsActions': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ApplicationsCharmActionsResults'}}, - 'type': 'object'}, - 'Cancel': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ActionResults'}}, - 'type': 'object'}, - 'Enqueue': {'properties': {'Params': {'$ref': '#/definitions/Actions'}, - 'Result': {'$ref': '#/definitions/ActionResults'}}, - 'type': 'object'}, - 'FindActionTagsByPrefix': {'properties': {'Params': {'$ref': '#/definitions/FindTags'}, - 'Result': {'$ref': '#/definitions/FindTagsResults'}}, - 'type': 'object'}, - 'FindActionsByNames': {'properties': {'Params': {'$ref': '#/definitions/FindActionsByNames'}, - 'Result': {'$ref': '#/definitions/ActionsByNames'}}, - 'type': 'object'}, - 'ListAll': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ActionsByReceivers'}}, - 'type': 'object'}, - 'ListCompleted': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ActionsByReceivers'}}, - 'type': 'object'}, - 'ListPending': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ActionsByReceivers'}}, - 'type': 'object'}, - 'ListRunning': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ActionsByReceivers'}}, - 'type': 'object'}, - 'Run': {'properties': {'Params': {'$ref': '#/definitions/RunParams'}, - 'Result': {'$ref': '#/definitions/ActionResults'}}, - 'type': 'object'}, - 'RunOnAllMachines': {'properties': {'Params': {'$ref': '#/definitions/RunParams'}, - 'Result': {'$ref': '#/definitions/ActionResults'}}, - 'type': 'object'}}, - 'type': 'object'} - - - @ReturnMapping(ActionResults) - async def Actions(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ActionResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Action', - request='Actions', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ApplicationsCharmActionsResults) - async def ApplicationsCharmsActions(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ApplicationCharmActionsResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Action', - request='ApplicationsCharmsActions', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ActionResults) - async def Cancel(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ActionResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Action', - request='Cancel', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ActionResults) - async def Enqueue(self, actions): - ''' - actions : typing.Sequence[~Action] - Returns -> typing.Sequence[~ActionResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Action', - request='Enqueue', - version=3, - params=_params) - _params['actions'] = actions - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(FindTagsResults) - async def FindActionTagsByPrefix(self, prefixes): - ''' - prefixes : typing.Sequence[str] - Returns -> typing.Sequence[~Entity] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Action', - request='FindActionTagsByPrefix', - version=3, - params=_params) - _params['prefixes'] = prefixes - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ActionsByNames) - async def FindActionsByNames(self, names): - ''' - names : typing.Sequence[str] - Returns -> typing.Sequence[~ActionsByName] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Action', - request='FindActionsByNames', - version=3, - params=_params) - _params['names'] = names - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ActionsByReceivers) - async def ListAll(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ActionsByReceiver] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Action', - request='ListAll', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ActionsByReceivers) - async def ListCompleted(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ActionsByReceiver] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Action', - request='ListCompleted', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ActionsByReceivers) - async def ListPending(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ActionsByReceiver] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Action', - request='ListPending', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ActionsByReceivers) - async def ListRunning(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ActionsByReceiver] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Action', - request='ListRunning', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ActionResults) - async def Run(self, applications, commands, machines, timeout, units): - ''' - applications : typing.Sequence[str] - commands : str - machines : typing.Sequence[str] - timeout : int - units : typing.Sequence[str] - Returns -> typing.Sequence[~ActionResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Action', - request='Run', - version=3, - params=_params) - _params['applications'] = applications - _params['commands'] = commands - _params['machines'] = machines - _params['timeout'] = timeout - _params['units'] = units - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ActionResults) - async def RunOnAllMachines(self, applications, commands, machines, timeout, units): - ''' - applications : typing.Sequence[str] - commands : str - machines : typing.Sequence[str] - timeout : int - units : typing.Sequence[str] - Returns -> typing.Sequence[~ActionResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Action', - request='RunOnAllMachines', - version=3, - params=_params) - _params['applications'] = applications - _params['commands'] = commands - _params['machines'] = machines - _params['timeout'] = timeout - _params['units'] = units - reply = await self.rpc(msg) - return reply - - - -class ApplicationFacade(Type): - name = 'Application' - version = 3 - schema = {'definitions': {'AddApplicationUnits': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}, - 'num-units': {'type': 'integer'}, - 'placement': {'items': {'$ref': '#/definitions/Placement'}, - 'type': 'array'}}, - 'required': ['application', - 'num-units', - 'placement'], - 'type': 'object'}, - 'AddApplicationUnitsResults': {'additionalProperties': False, - 'properties': {'units': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['units'], - 'type': 'object'}, - 'AddRelation': {'additionalProperties': False, - 'properties': {'endpoints': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['endpoints'], - 'type': 'object'}, - 'AddRelationResults': {'additionalProperties': False, - 'properties': {'endpoints': {'patternProperties': {'.*': {'$ref': '#/definitions/CharmRelation'}}, - 'type': 'object'}}, - 'required': ['endpoints'], - 'type': 'object'}, - 'ApplicationCharmRelations': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}}, - 'required': ['application'], - 'type': 'object'}, - 'ApplicationCharmRelationsResults': {'additionalProperties': False, - 'properties': {'charm-relations': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['charm-relations'], - 'type': 'object'}, - 'ApplicationDeploy': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}, - 'channel': {'type': 'string'}, - 'charm-url': {'type': 'string'}, - 'config': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'config-yaml': {'type': 'string'}, - 'constraints': {'$ref': '#/definitions/Value'}, - 'endpoint-bindings': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'num-units': {'type': 'integer'}, - 'placement': {'items': {'$ref': '#/definitions/Placement'}, - 'type': 'array'}, - 'resources': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'series': {'type': 'string'}, - 'storage': {'patternProperties': {'.*': {'$ref': '#/definitions/Constraints'}}, - 'type': 'object'}}, - 'required': ['application', - 'series', - 'charm-url', - 'channel', - 'num-units', - 'config-yaml', - 'constraints'], - 'type': 'object'}, - 'ApplicationDestroy': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}}, - 'required': ['application'], - 'type': 'object'}, - 'ApplicationExpose': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}}, - 'required': ['application'], - 'type': 'object'}, - 'ApplicationGet': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}}, - 'required': ['application'], - 'type': 'object'}, - 'ApplicationGetResults': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}, - 'charm': {'type': 'string'}, - 'config': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'constraints': {'$ref': '#/definitions/Value'}, - 'series': {'type': 'string'}}, - 'required': ['application', - 'charm', - 'config', - 'constraints', - 'series'], - 'type': 'object'}, - 'ApplicationMetricCredential': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}, - 'metrics-credentials': {'items': {'type': 'integer'}, - 'type': 'array'}}, - 'required': ['application', - 'metrics-credentials'], - 'type': 'object'}, - 'ApplicationMetricCredentials': {'additionalProperties': False, - 'properties': {'creds': {'items': {'$ref': '#/definitions/ApplicationMetricCredential'}, - 'type': 'array'}}, - 'required': ['creds'], - 'type': 'object'}, - 'ApplicationSet': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}, - 'options': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}}, - 'required': ['application', 'options'], - 'type': 'object'}, - 'ApplicationSetCharm': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}, - 'channel': {'type': 'string'}, - 'charm-url': {'type': 'string'}, - 'config-settings': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'config-settings-yaml': {'type': 'string'}, - 'force-series': {'type': 'boolean'}, - 'force-units': {'type': 'boolean'}, - 'resource-ids': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'storage-constraints': {'patternProperties': {'.*': {'$ref': '#/definitions/StorageConstraints'}}, - 'type': 'object'}}, - 'required': ['application', - 'charm-url', - 'channel', - 'force-units', - 'force-series'], - 'type': 'object'}, - 'ApplicationUnexpose': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}}, - 'required': ['application'], - 'type': 'object'}, - 'ApplicationUnset': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}, - 'options': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['application', 'options'], - 'type': 'object'}, - 'ApplicationUpdate': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}, - 'charm-url': {'type': 'string'}, - 'constraints': {'$ref': '#/definitions/Value'}, - 'force-charm-url': {'type': 'boolean'}, - 'force-series': {'type': 'boolean'}, - 'min-units': {'type': 'integer'}, - 'settings': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'settings-yaml': {'type': 'string'}}, - 'required': ['application', - 'charm-url', - 'force-charm-url', - 'force-series', - 'settings-yaml'], - 'type': 'object'}, - 'ApplicationsDeploy': {'additionalProperties': False, - 'properties': {'applications': {'items': {'$ref': '#/definitions/ApplicationDeploy'}, - 'type': 'array'}}, - 'required': ['applications'], - 'type': 'object'}, - 'CharmRelation': {'additionalProperties': False, - 'properties': {'interface': {'type': 'string'}, - 'limit': {'type': 'integer'}, - 'name': {'type': 'string'}, - 'optional': {'type': 'boolean'}, - 'role': {'type': 'string'}, - 'scope': {'type': 'string'}}, - 'required': ['name', - 'role', - 'interface', - 'optional', - 'limit', - 'scope'], - 'type': 'object'}, - 'Constraints': {'additionalProperties': False, - 'properties': {'Count': {'type': 'integer'}, - 'Pool': {'type': 'string'}, - 'Size': {'type': 'integer'}}, - 'required': ['Pool', 'Size', 'Count'], - 'type': 'object'}, - 'DestroyApplicationUnits': {'additionalProperties': False, - 'properties': {'unit-names': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['unit-names'], - 'type': 'object'}, - 'DestroyRelation': {'additionalProperties': False, - 'properties': {'endpoints': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['endpoints'], - 'type': 'object'}, - 'Error': {'additionalProperties': False, - 'properties': {'code': {'type': 'string'}, - 'info': {'$ref': '#/definitions/ErrorInfo'}, - 'message': {'type': 'string'}}, - 'required': ['message', 'code'], - 'type': 'object'}, - 'ErrorInfo': {'additionalProperties': False, - 'properties': {'macaroon': {'$ref': '#/definitions/Macaroon'}, - 'macaroon-path': {'type': 'string'}}, - 'type': 'object'}, - 'ErrorResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}}, - 'type': 'object'}, - 'ErrorResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'GetApplicationConstraints': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}}, - 'required': ['application'], - 'type': 'object'}, - 'GetConstraintsResults': {'additionalProperties': False, - 'properties': {'constraints': {'$ref': '#/definitions/Value'}}, - 'required': ['constraints'], - 'type': 'object'}, - 'Macaroon': {'additionalProperties': False, 'type': 'object'}, - 'Placement': {'additionalProperties': False, - 'properties': {'directive': {'type': 'string'}, - 'scope': {'type': 'string'}}, - 'required': ['scope', 'directive'], - 'type': 'object'}, - 'SetConstraints': {'additionalProperties': False, - 'properties': {'application': {'type': 'string'}, - 'constraints': {'$ref': '#/definitions/Value'}}, - 'required': ['application', 'constraints'], - 'type': 'object'}, - 'StorageConstraints': {'additionalProperties': False, - 'properties': {'count': {'type': 'integer'}, - 'pool': {'type': 'string'}, - 'size': {'type': 'integer'}}, - 'type': 'object'}, - 'StringResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'type': 'string'}}, - 'required': ['result'], - 'type': 'object'}, - 'Value': {'additionalProperties': False, - 'properties': {'arch': {'type': 'string'}, - 'container': {'type': 'string'}, - 'cores': {'type': 'integer'}, - 'cpu-power': {'type': 'integer'}, - 'instance-type': {'type': 'string'}, - 'mem': {'type': 'integer'}, - 'root-disk': {'type': 'integer'}, - 'spaces': {'items': {'type': 'string'}, - 'type': 'array'}, - 'tags': {'items': {'type': 'string'}, - 'type': 'array'}, - 'virt-type': {'type': 'string'}}, - 'type': 'object'}}, - 'properties': {'AddRelation': {'properties': {'Params': {'$ref': '#/definitions/AddRelation'}, - 'Result': {'$ref': '#/definitions/AddRelationResults'}}, - 'type': 'object'}, - 'AddUnits': {'properties': {'Params': {'$ref': '#/definitions/AddApplicationUnits'}, - 'Result': {'$ref': '#/definitions/AddApplicationUnitsResults'}}, - 'type': 'object'}, - 'CharmRelations': {'properties': {'Params': {'$ref': '#/definitions/ApplicationCharmRelations'}, - 'Result': {'$ref': '#/definitions/ApplicationCharmRelationsResults'}}, - 'type': 'object'}, - 'Deploy': {'properties': {'Params': {'$ref': '#/definitions/ApplicationsDeploy'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'Destroy': {'properties': {'Params': {'$ref': '#/definitions/ApplicationDestroy'}}, - 'type': 'object'}, - 'DestroyRelation': {'properties': {'Params': {'$ref': '#/definitions/DestroyRelation'}}, - 'type': 'object'}, - 'DestroyUnits': {'properties': {'Params': {'$ref': '#/definitions/DestroyApplicationUnits'}}, - 'type': 'object'}, - 'Expose': {'properties': {'Params': {'$ref': '#/definitions/ApplicationExpose'}}, - 'type': 'object'}, - 'Get': {'properties': {'Params': {'$ref': '#/definitions/ApplicationGet'}, - 'Result': {'$ref': '#/definitions/ApplicationGetResults'}}, - 'type': 'object'}, - 'GetCharmURL': {'properties': {'Params': {'$ref': '#/definitions/ApplicationGet'}, - 'Result': {'$ref': '#/definitions/StringResult'}}, - 'type': 'object'}, - 'GetConstraints': {'properties': {'Params': {'$ref': '#/definitions/GetApplicationConstraints'}, - 'Result': {'$ref': '#/definitions/GetConstraintsResults'}}, - 'type': 'object'}, - 'Set': {'properties': {'Params': {'$ref': '#/definitions/ApplicationSet'}}, - 'type': 'object'}, - 'SetCharm': {'properties': {'Params': {'$ref': '#/definitions/ApplicationSetCharm'}}, - 'type': 'object'}, - 'SetConstraints': {'properties': {'Params': {'$ref': '#/definitions/SetConstraints'}}, - 'type': 'object'}, - 'SetMetricCredentials': {'properties': {'Params': {'$ref': '#/definitions/ApplicationMetricCredentials'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'Unexpose': {'properties': {'Params': {'$ref': '#/definitions/ApplicationUnexpose'}}, - 'type': 'object'}, - 'Unset': {'properties': {'Params': {'$ref': '#/definitions/ApplicationUnset'}}, - 'type': 'object'}, - 'Update': {'properties': {'Params': {'$ref': '#/definitions/ApplicationUpdate'}}, - 'type': 'object'}}, - 'type': 'object'} - - - @ReturnMapping(AddRelationResults) - async def AddRelation(self, endpoints): - ''' - endpoints : typing.Sequence[str] - Returns -> typing.Mapping[str, ~CharmRelation] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='AddRelation', - version=3, - params=_params) - _params['endpoints'] = endpoints - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(AddApplicationUnitsResults) - async def AddUnits(self, application, num_units, placement): - ''' - application : str - num_units : int - placement : typing.Sequence[~Placement] - Returns -> typing.Sequence[str] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='AddUnits', - version=3, - params=_params) - _params['application'] = application - _params['num-units'] = num_units - _params['placement'] = placement - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ApplicationCharmRelationsResults) - async def CharmRelations(self, application): - ''' - application : str - Returns -> typing.Sequence[str] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='CharmRelations', - version=3, - params=_params) - _params['application'] = application - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def Deploy(self, applications): - ''' - applications : typing.Sequence[~ApplicationDeploy] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='Deploy', - version=3, - params=_params) - _params['applications'] = applications - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def Destroy(self, application): - ''' - application : str - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='Destroy', - version=3, - params=_params) - _params['application'] = application - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def DestroyRelation(self, endpoints): - ''' - endpoints : typing.Sequence[str] - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='DestroyRelation', - version=3, - params=_params) - _params['endpoints'] = endpoints - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def DestroyUnits(self, unit_names): - ''' - unit_names : typing.Sequence[str] - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='DestroyUnits', - version=3, - params=_params) - _params['unit-names'] = unit_names - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def Expose(self, application): - ''' - application : str - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='Expose', - version=3, - params=_params) - _params['application'] = application - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ApplicationGetResults) - async def Get(self, application): - ''' - application : str - Returns -> typing.Union[str, typing.Mapping[str, typing.Any], _ForwardRef('Value')] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='Get', - version=3, - params=_params) - _params['application'] = application - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringResult) - async def GetCharmURL(self, application): - ''' - application : str - Returns -> typing.Union[_ForwardRef('Error'), str] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='GetCharmURL', - version=3, - params=_params) - _params['application'] = application - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(GetConstraintsResults) - async def GetConstraints(self, application): - ''' - application : str - Returns -> Value - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='GetConstraints', - version=3, - params=_params) - _params['application'] = application - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def Set(self, application, options): - ''' - application : str - options : typing.Mapping[str, str] - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='Set', - version=3, - params=_params) - _params['application'] = application - _params['options'] = options - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def SetCharm(self, application, channel, charm_url, config_settings, config_settings_yaml, force_series, force_units, resource_ids, storage_constraints): - ''' - application : str - channel : str - charm_url : str - config_settings : typing.Mapping[str, str] - config_settings_yaml : str - force_series : bool - force_units : bool - resource_ids : typing.Mapping[str, str] - storage_constraints : typing.Mapping[str, ~StorageConstraints] - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='SetCharm', - version=3, - params=_params) - _params['application'] = application - _params['channel'] = channel - _params['charm-url'] = charm_url - _params['config-settings'] = config_settings - _params['config-settings-yaml'] = config_settings_yaml - _params['force-series'] = force_series - _params['force-units'] = force_units - _params['resource-ids'] = resource_ids - _params['storage-constraints'] = storage_constraints - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def SetConstraints(self, application, constraints): - ''' - application : str - constraints : Value - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='SetConstraints', - version=3, - params=_params) - _params['application'] = application - _params['constraints'] = constraints - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetMetricCredentials(self, creds): - ''' - creds : typing.Sequence[~ApplicationMetricCredential] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='SetMetricCredentials', - version=3, - params=_params) - _params['creds'] = creds - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def Unexpose(self, application): - ''' - application : str - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='Unexpose', - version=3, - params=_params) - _params['application'] = application - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def Unset(self, application, options): - ''' - application : str - options : typing.Sequence[str] - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='Unset', - version=3, - params=_params) - _params['application'] = application - _params['options'] = options - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def Update(self, application, charm_url, constraints, force_charm_url, force_series, min_units, settings, settings_yaml): - ''' - application : str - charm_url : str - constraints : Value - force_charm_url : bool - force_series : bool - min_units : int - settings : typing.Mapping[str, str] - settings_yaml : str - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Application', - request='Update', - version=3, - params=_params) - _params['application'] = application - _params['charm-url'] = charm_url - _params['constraints'] = constraints - _params['force-charm-url'] = force_charm_url - _params['force-series'] = force_series - _params['min-units'] = min_units - _params['settings'] = settings - _params['settings-yaml'] = settings_yaml - reply = await self.rpc(msg) - return reply - - - -class CloudFacade(Type): - name = 'Cloud' - version = 3 - schema = {'definitions': {'AddCloudArgs': {'additionalProperties': False, - 'properties': {'cloud': {'$ref': '#/definitions/Cloud'}, - 'name': {'type': 'string'}}, - 'required': ['cloud', 'name'], - 'type': 'object'}, - 'Cloud': {'additionalProperties': False, - 'properties': {'auth-types': {'items': {'type': 'string'}, - 'type': 'array'}, - 'ca-certificates': {'items': {'type': 'string'}, - 'type': 'array'}, - 'endpoint': {'type': 'string'}, - 'identity-endpoint': {'type': 'string'}, - 'regions': {'items': {'$ref': '#/definitions/CloudRegion'}, - 'type': 'array'}, - 'storage-endpoint': {'type': 'string'}, - 'type': {'type': 'string'}}, - 'required': ['type'], - 'type': 'object'}, - 'CloudCredential': {'additionalProperties': False, - 'properties': {'attrs': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'auth-type': {'type': 'string'}, - 'redacted': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['auth-type'], - 'type': 'object'}, - 'CloudCredentialArg': {'additionalProperties': False, - 'properties': {'cloud-name': {'type': 'string'}, - 'credential-name': {'type': 'string'}}, - 'required': ['cloud-name', - 'credential-name'], - 'type': 'object'}, - 'CloudCredentialArgs': {'additionalProperties': False, - 'properties': {'credentials': {'items': {'$ref': '#/definitions/CloudCredentialArg'}, - 'type': 'array'}, - 'include-secrets': {'type': 'boolean'}}, - 'required': ['include-secrets'], - 'type': 'object'}, - 'CloudCredentialResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/CloudCredential'}}, - 'type': 'object'}, - 'CloudCredentialResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/CloudCredentialResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'CloudDetails': {'additionalProperties': False, - 'properties': {'auth-types': {'items': {'type': 'string'}, - 'type': 'array'}, - 'endpoint': {'type': 'string'}, - 'identity-endpoint': {'type': 'string'}, - 'regions': {'items': {'$ref': '#/definitions/CloudRegion'}, - 'type': 'array'}, - 'storage-endpoint': {'type': 'string'}, - 'type': {'type': 'string'}}, - 'required': ['type'], - 'type': 'object'}, - 'CloudInfo': {'additionalProperties': False, - 'properties': {'CloudDetails': {'$ref': '#/definitions/CloudDetails'}, - 'users': {'items': {'$ref': '#/definitions/CloudUserInfo'}, - 'type': 'array'}}, - 'required': ['CloudDetails', 'users'], - 'type': 'object'}, - 'CloudInfoResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/CloudInfo'}}, - 'type': 'object'}, - 'CloudInfoResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/CloudInfoResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'CloudInstanceTypesConstraint': {'additionalProperties': False, - 'properties': {'cloud-tag': {'type': 'string'}, - 'constraints': {'$ref': '#/definitions/Value'}, - 'region': {'type': 'string'}}, - 'required': ['cloud-tag', - 'region'], - 'type': 'object'}, - 'CloudInstanceTypesConstraints': {'additionalProperties': False, - 'properties': {'constraints': {'items': {'$ref': '#/definitions/CloudInstanceTypesConstraint'}, - 'type': 'array'}}, - 'required': ['constraints'], - 'type': 'object'}, - 'CloudRegion': {'additionalProperties': False, - 'properties': {'endpoint': {'type': 'string'}, - 'identity-endpoint': {'type': 'string'}, - 'name': {'type': 'string'}, - 'storage-endpoint': {'type': 'string'}}, - 'required': ['name'], - 'type': 'object'}, - 'CloudResult': {'additionalProperties': False, - 'properties': {'cloud': {'$ref': '#/definitions/Cloud'}, - 'error': {'$ref': '#/definitions/Error'}}, - 'type': 'object'}, - 'CloudResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/CloudResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'CloudUserInfo': {'additionalProperties': False, - 'properties': {'access': {'type': 'string'}, - 'display-name': {'type': 'string'}, - 'user': {'type': 'string'}}, - 'required': ['user', - 'display-name', - 'access'], - 'type': 'object'}, - 'CloudsResult': {'additionalProperties': False, - 'properties': {'clouds': {'patternProperties': {'.*': {'$ref': '#/definitions/Cloud'}}, - 'type': 'object'}}, - 'type': 'object'}, - 'ControllerCredentialInfo': {'additionalProperties': False, - 'properties': {'content': {'$ref': '#/definitions/CredentialContent'}, - 'models': {'items': {'$ref': '#/definitions/ModelAccess'}, - 'type': 'array'}}, - 'type': 'object'}, - 'CredentialContent': {'additionalProperties': False, - 'properties': {'attrs': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'auth-type': {'type': 'string'}, - 'cloud': {'type': 'string'}, - 'name': {'type': 'string'}}, - 'required': ['name', - 'cloud', - 'auth-type'], - 'type': 'object'}, - 'CredentialContentResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/ControllerCredentialInfo'}}, - 'type': 'object'}, - 'CredentialContentResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/CredentialContentResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'Entities': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}}, - 'required': ['entities'], - 'type': 'object'}, - 'Entity': {'additionalProperties': False, - 'properties': {'tag': {'type': 'string'}}, - 'required': ['tag'], - 'type': 'object'}, - 'Error': {'additionalProperties': False, - 'properties': {'code': {'type': 'string'}, - 'info': {'$ref': '#/definitions/ErrorInfo'}, - 'message': {'type': 'string'}}, - 'required': ['message', 'code'], - 'type': 'object'}, - 'ErrorInfo': {'additionalProperties': False, - 'properties': {'macaroon': {'$ref': '#/definitions/Macaroon'}, - 'macaroon-path': {'type': 'string'}}, - 'type': 'object'}, - 'ErrorResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}}, - 'type': 'object'}, - 'ErrorResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'InstanceType': {'additionalProperties': False, - 'properties': {'arches': {'items': {'type': 'string'}, - 'type': 'array'}, - 'cost': {'type': 'integer'}, - 'cpu-cores': {'type': 'integer'}, - 'deprecated': {'type': 'boolean'}, - 'memory': {'type': 'integer'}, - 'name': {'type': 'string'}, - 'root-disk': {'type': 'integer'}, - 'virt-type': {'type': 'string'}}, - 'required': ['arches', 'cpu-cores', 'memory'], - 'type': 'object'}, - 'InstanceTypesResult': {'additionalProperties': False, - 'properties': {'cost-currency': {'type': 'string'}, - 'cost-divisor': {'type': 'integer'}, - 'cost-unit': {'type': 'string'}, - 'error': {'$ref': '#/definitions/Error'}, - 'instance-types': {'items': {'$ref': '#/definitions/InstanceType'}, - 'type': 'array'}}, - 'type': 'object'}, - 'InstanceTypesResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/InstanceTypesResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'ListCloudInfo': {'additionalProperties': False, - 'properties': {'CloudDetails': {'$ref': '#/definitions/CloudDetails'}, - 'user-access': {'type': 'string'}}, - 'required': ['CloudDetails', 'user-access'], - 'type': 'object'}, - 'ListCloudInfoResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/ListCloudInfo'}}, - 'type': 'object'}, - 'ListCloudInfoResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ListCloudInfoResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'ListCloudsRequest': {'additionalProperties': False, - 'properties': {'all': {'type': 'boolean'}, - 'user-tag': {'type': 'string'}}, - 'required': ['user-tag'], - 'type': 'object'}, - 'Macaroon': {'additionalProperties': False, 'type': 'object'}, - 'ModelAccess': {'additionalProperties': False, - 'properties': {'access': {'type': 'string'}, - 'model': {'type': 'string'}}, - 'type': 'object'}, - 'ModifyCloudAccess': {'additionalProperties': False, - 'properties': {'access': {'type': 'string'}, - 'action': {'type': 'string'}, - 'cloud-tag': {'type': 'string'}, - 'user-tag': {'type': 'string'}}, - 'required': ['user-tag', - 'cloud-tag', - 'action', - 'access'], - 'type': 'object'}, - 'ModifyCloudAccessRequest': {'additionalProperties': False, - 'properties': {'changes': {'items': {'$ref': '#/definitions/ModifyCloudAccess'}, - 'type': 'array'}}, - 'required': ['changes'], - 'type': 'object'}, - 'RevokeCredentialArg': {'additionalProperties': False, - 'properties': {'force': {'type': 'boolean'}, - 'tag': {'type': 'string'}}, - 'required': ['tag', 'force'], - 'type': 'object'}, - 'RevokeCredentialArgs': {'additionalProperties': False, - 'properties': {'credentials': {'items': {'$ref': '#/definitions/RevokeCredentialArg'}, - 'type': 'array'}}, - 'required': ['credentials'], - 'type': 'object'}, - 'StringResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'type': 'string'}}, - 'required': ['result'], - 'type': 'object'}, - 'StringsResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'type': 'object'}, - 'StringsResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StringsResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'TaggedCredential': {'additionalProperties': False, - 'properties': {'credential': {'$ref': '#/definitions/CloudCredential'}, - 'tag': {'type': 'string'}}, - 'required': ['tag', 'credential'], - 'type': 'object'}, - 'TaggedCredentials': {'additionalProperties': False, - 'properties': {'credentials': {'items': {'$ref': '#/definitions/TaggedCredential'}, - 'type': 'array'}}, - 'type': 'object'}, - 'UpdateCredentialArgs': {'additionalProperties': False, - 'properties': {'credentials': {'items': {'$ref': '#/definitions/TaggedCredential'}, - 'type': 'array'}, - 'force': {'type': 'boolean'}}, - 'required': ['credentials', 'force'], - 'type': 'object'}, - 'UpdateCredentialModelResult': {'additionalProperties': False, - 'properties': {'errors': {'items': {'$ref': '#/definitions/ErrorResult'}, - 'type': 'array'}, - 'name': {'type': 'string'}, - 'uuid': {'type': 'string'}}, - 'required': ['uuid', 'name'], - 'type': 'object'}, - 'UpdateCredentialResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'models': {'items': {'$ref': '#/definitions/UpdateCredentialModelResult'}, - 'type': 'array'}, - 'tag': {'type': 'string'}}, - 'required': ['tag'], - 'type': 'object'}, - 'UpdateCredentialResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/UpdateCredentialResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'UserCloud': {'additionalProperties': False, - 'properties': {'cloud-tag': {'type': 'string'}, - 'user-tag': {'type': 'string'}}, - 'required': ['user-tag', 'cloud-tag'], - 'type': 'object'}, - 'UserClouds': {'additionalProperties': False, - 'properties': {'user-clouds': {'items': {'$ref': '#/definitions/UserCloud'}, - 'type': 'array'}}, - 'type': 'object'}, - 'Value': {'additionalProperties': False, - 'properties': {'arch': {'type': 'string'}, - 'container': {'type': 'string'}, - 'cores': {'type': 'integer'}, - 'cpu-power': {'type': 'integer'}, - 'instance-type': {'type': 'string'}, - 'mem': {'type': 'integer'}, - 'root-disk': {'type': 'integer'}, - 'spaces': {'items': {'type': 'string'}, - 'type': 'array'}, - 'tags': {'items': {'type': 'string'}, - 'type': 'array'}, - 'virt-type': {'type': 'string'}, - 'zones': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'type': 'object'}}, - 'properties': {'AddCloud': {'properties': {'Params': {'$ref': '#/definitions/AddCloudArgs'}}, - 'type': 'object'}, - 'AddCredentials': {'properties': {'Params': {'$ref': '#/definitions/TaggedCredentials'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'CheckCredentialsModels': {'properties': {'Params': {'$ref': '#/definitions/TaggedCredentials'}, - 'Result': {'$ref': '#/definitions/UpdateCredentialResults'}}, - 'type': 'object'}, - 'Cloud': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/CloudResults'}}, - 'type': 'object'}, - 'CloudInfo': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/CloudInfoResults'}}, - 'type': 'object'}, - 'Clouds': {'properties': {'Result': {'$ref': '#/definitions/CloudsResult'}}, - 'type': 'object'}, - 'Credential': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/CloudCredentialResults'}}, - 'type': 'object'}, - 'CredentialContents': {'properties': {'Params': {'$ref': '#/definitions/CloudCredentialArgs'}, - 'Result': {'$ref': '#/definitions/CredentialContentResults'}}, - 'type': 'object'}, - 'DefaultCloud': {'properties': {'Result': {'$ref': '#/definitions/StringResult'}}, - 'type': 'object'}, - 'InstanceTypes': {'properties': {'Params': {'$ref': '#/definitions/CloudInstanceTypesConstraints'}, - 'Result': {'$ref': '#/definitions/InstanceTypesResults'}}, - 'type': 'object'}, - 'ListCloudInfo': {'properties': {'Params': {'$ref': '#/definitions/ListCloudsRequest'}, - 'Result': {'$ref': '#/definitions/ListCloudInfoResults'}}, - 'type': 'object'}, - 'ModifyCloudAccess': {'properties': {'Params': {'$ref': '#/definitions/ModifyCloudAccessRequest'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'RemoveClouds': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'RevokeCredentialsCheckModels': {'properties': {'Params': {'$ref': '#/definitions/RevokeCredentialArgs'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'UpdateCredentialsCheckModels': {'properties': {'Params': {'$ref': '#/definitions/UpdateCredentialArgs'}, - 'Result': {'$ref': '#/definitions/UpdateCredentialResults'}}, - 'type': 'object'}, - 'UserCredentials': {'properties': {'Params': {'$ref': '#/definitions/UserClouds'}, - 'Result': {'$ref': '#/definitions/StringsResults'}}, - 'type': 'object'}}, - 'type': 'object'} - - - @ReturnMapping(None) - async def AddCloud(self, cloud, name): - ''' - cloud : Cloud - name : str - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='AddCloud', - version=3, - params=_params) - _params['cloud'] = cloud - _params['name'] = name - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def AddCredentials(self, credentials): - ''' - credentials : typing.Sequence[~TaggedCredential] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='AddCredentials', - version=3, - params=_params) - _params['credentials'] = credentials - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(UpdateCredentialResults) - async def CheckCredentialsModels(self, credentials): - ''' - credentials : typing.Sequence[~TaggedCredential] - Returns -> typing.Sequence[~UpdateCredentialResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='CheckCredentialsModels', - version=3, - params=_params) - _params['credentials'] = credentials - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(CloudResults) - async def Cloud(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~CloudResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='Cloud', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(CloudInfoResults) - async def CloudInfo(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~CloudInfoResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='CloudInfo', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(CloudsResult) - async def Clouds(self): - ''' - - Returns -> typing.Mapping[str, ~Cloud] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='Clouds', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(CloudCredentialResults) - async def Credential(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~CloudCredentialResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='Credential', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(CredentialContentResults) - async def CredentialContents(self, credentials, include_secrets): - ''' - credentials : typing.Sequence[~CloudCredentialArg] - include_secrets : bool - Returns -> typing.Sequence[~CredentialContentResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='CredentialContents', - version=3, - params=_params) - _params['credentials'] = credentials - _params['include-secrets'] = include_secrets - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringResult) - async def DefaultCloud(self): - ''' - - Returns -> typing.Union[_ForwardRef('Error'), str] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='DefaultCloud', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(InstanceTypesResults) - async def InstanceTypes(self, constraints): - ''' - constraints : typing.Sequence[~CloudInstanceTypesConstraint] - Returns -> typing.Sequence[~InstanceTypesResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='InstanceTypes', - version=3, - params=_params) - _params['constraints'] = constraints - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ListCloudInfoResults) - async def ListCloudInfo(self, all_, user_tag): - ''' - all_ : bool - user_tag : str - Returns -> typing.Sequence[~ListCloudInfoResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='ListCloudInfo', - version=3, - params=_params) - _params['all'] = all_ - _params['user-tag'] = user_tag - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def ModifyCloudAccess(self, changes): - ''' - changes : typing.Sequence[~ModifyCloudAccess] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='ModifyCloudAccess', - version=3, - params=_params) - _params['changes'] = changes - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def RemoveClouds(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='RemoveClouds', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def RevokeCredentialsCheckModels(self, credentials): - ''' - credentials : typing.Sequence[~RevokeCredentialArg] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='RevokeCredentialsCheckModels', - version=3, - params=_params) - _params['credentials'] = credentials - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(UpdateCredentialResults) - async def UpdateCredentialsCheckModels(self, credentials, force): - ''' - credentials : typing.Sequence[~TaggedCredential] - force : bool - Returns -> typing.Sequence[~UpdateCredentialResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='UpdateCredentialsCheckModels', - version=3, - params=_params) - _params['credentials'] = credentials - _params['force'] = force - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringsResults) - async def UserCredentials(self, user_clouds): - ''' - user_clouds : typing.Sequence[~UserCloud] - Returns -> typing.Sequence[~StringsResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Cloud', - request='UserCredentials', - version=3, - params=_params) - _params['user-clouds'] = user_clouds - reply = await self.rpc(msg) - return reply - - - -class ControllerFacade(Type): - name = 'Controller' - version = 3 - schema = {'definitions': {'AllWatcherId': {'additionalProperties': False, - 'properties': {'watcher-id': {'type': 'string'}}, - 'required': ['watcher-id'], - 'type': 'object'}, - 'CloudCredential': {'additionalProperties': False, - 'properties': {'attrs': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'auth-type': {'type': 'string'}, - 'redacted': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['auth-type'], - 'type': 'object'}, - 'CloudSpec': {'additionalProperties': False, - 'properties': {'credential': {'$ref': '#/definitions/CloudCredential'}, - 'endpoint': {'type': 'string'}, - 'identity-endpoint': {'type': 'string'}, - 'name': {'type': 'string'}, - 'region': {'type': 'string'}, - 'storage-endpoint': {'type': 'string'}, - 'type': {'type': 'string'}}, - 'required': ['type', 'name'], - 'type': 'object'}, - 'CloudSpecResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/CloudSpec'}}, - 'type': 'object'}, - 'CloudSpecResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/CloudSpecResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'ConfigValue': {'additionalProperties': False, - 'properties': {'source': {'type': 'string'}, - 'value': {'additionalProperties': True, - 'type': 'object'}}, - 'required': ['value', 'source'], - 'type': 'object'}, - 'ControllerConfigResult': {'additionalProperties': False, - 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}}, - 'required': ['config'], - 'type': 'object'}, - 'DestroyControllerArgs': {'additionalProperties': False, - 'properties': {'destroy-models': {'type': 'boolean'}}, - 'required': ['destroy-models'], - 'type': 'object'}, - 'Entities': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}}, - 'required': ['entities'], - 'type': 'object'}, - 'Entity': {'additionalProperties': False, - 'properties': {'tag': {'type': 'string'}}, - 'required': ['tag'], - 'type': 'object'}, - 'Error': {'additionalProperties': False, - 'properties': {'code': {'type': 'string'}, - 'info': {'$ref': '#/definitions/ErrorInfo'}, - 'message': {'type': 'string'}}, - 'required': ['message', 'code'], - 'type': 'object'}, - 'ErrorInfo': {'additionalProperties': False, - 'properties': {'macaroon': {'$ref': '#/definitions/Macaroon'}, - 'macaroon-path': {'type': 'string'}}, - 'type': 'object'}, - 'ErrorResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}}, - 'type': 'object'}, - 'ErrorResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'HostedModelConfig': {'additionalProperties': False, - 'properties': {'cloud-spec': {'$ref': '#/definitions/CloudSpec'}, - 'config': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'error': {'$ref': '#/definitions/Error'}, - 'name': {'type': 'string'}, - 'owner': {'type': 'string'}}, - 'required': ['name', 'owner'], - 'type': 'object'}, - 'HostedModelConfigsResults': {'additionalProperties': False, - 'properties': {'models': {'items': {'$ref': '#/definitions/HostedModelConfig'}, - 'type': 'array'}}, - 'required': ['models'], - 'type': 'object'}, - 'InitiateMigrationArgs': {'additionalProperties': False, - 'properties': {'specs': {'items': {'$ref': '#/definitions/MigrationSpec'}, - 'type': 'array'}}, - 'required': ['specs'], - 'type': 'object'}, - 'InitiateMigrationResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'migration-id': {'type': 'string'}, - 'model-tag': {'type': 'string'}}, - 'required': ['model-tag', - 'migration-id'], - 'type': 'object'}, - 'InitiateMigrationResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/InitiateMigrationResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Macaroon': {'additionalProperties': False, 'type': 'object'}, - 'MachineHardware': {'additionalProperties': False, - 'properties': {'arch': {'type': 'string'}, - 'availability-zone': {'type': 'string'}, - 'cores': {'type': 'integer'}, - 'cpu-power': {'type': 'integer'}, - 'mem': {'type': 'integer'}, - 'root-disk': {'type': 'integer'}, - 'tags': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'type': 'object'}, - 'MigrationSpec': {'additionalProperties': False, - 'properties': {'model-tag': {'type': 'string'}, - 'target-info': {'$ref': '#/definitions/MigrationTargetInfo'}}, - 'required': ['model-tag', 'target-info'], - 'type': 'object'}, - 'MigrationTargetInfo': {'additionalProperties': False, - 'properties': {'addrs': {'items': {'type': 'string'}, - 'type': 'array'}, - 'auth-tag': {'type': 'string'}, - 'ca-cert': {'type': 'string'}, - 'controller-tag': {'type': 'string'}, - 'macaroons': {'type': 'string'}, - 'password': {'type': 'string'}}, - 'required': ['controller-tag', - 'addrs', - 'ca-cert', - 'auth-tag'], - 'type': 'object'}, - 'Model': {'additionalProperties': False, - 'properties': {'name': {'type': 'string'}, - 'owner-tag': {'type': 'string'}, - 'uuid': {'type': 'string'}}, - 'required': ['name', 'uuid', 'owner-tag'], - 'type': 'object'}, - 'ModelBlockInfo': {'additionalProperties': False, - 'properties': {'blocks': {'items': {'type': 'string'}, - 'type': 'array'}, - 'model-uuid': {'type': 'string'}, - 'name': {'type': 'string'}, - 'owner-tag': {'type': 'string'}}, - 'required': ['name', - 'model-uuid', - 'owner-tag', - 'blocks'], - 'type': 'object'}, - 'ModelBlockInfoList': {'additionalProperties': False, - 'properties': {'models': {'items': {'$ref': '#/definitions/ModelBlockInfo'}, - 'type': 'array'}}, - 'type': 'object'}, - 'ModelConfigResults': {'additionalProperties': False, - 'properties': {'config': {'patternProperties': {'.*': {'$ref': '#/definitions/ConfigValue'}}, - 'type': 'object'}}, - 'required': ['config'], - 'type': 'object'}, - 'ModelMachineInfo': {'additionalProperties': False, - 'properties': {'hardware': {'$ref': '#/definitions/MachineHardware'}, - 'has-vote': {'type': 'boolean'}, - 'id': {'type': 'string'}, - 'instance-id': {'type': 'string'}, - 'status': {'type': 'string'}, - 'wants-vote': {'type': 'boolean'}}, - 'required': ['id'], - 'type': 'object'}, - 'ModelStatus': {'additionalProperties': False, - 'properties': {'application-count': {'type': 'integer'}, - 'hosted-machine-count': {'type': 'integer'}, - 'life': {'type': 'string'}, - 'machines': {'items': {'$ref': '#/definitions/ModelMachineInfo'}, - 'type': 'array'}, - 'model-tag': {'type': 'string'}, - 'owner-tag': {'type': 'string'}}, - 'required': ['model-tag', - 'life', - 'hosted-machine-count', - 'application-count', - 'owner-tag'], - 'type': 'object'}, - 'ModelStatusResults': {'additionalProperties': False, - 'properties': {'models': {'items': {'$ref': '#/definitions/ModelStatus'}, - 'type': 'array'}}, - 'required': ['models'], - 'type': 'object'}, - 'ModelTag': {'additionalProperties': False, 'type': 'object'}, - 'ModifyControllerAccess': {'additionalProperties': False, - 'properties': {'access': {'type': 'string'}, - 'action': {'type': 'string'}, - 'user-tag': {'type': 'string'}}, - 'required': ['user-tag', - 'action', - 'access'], - 'type': 'object'}, - 'ModifyControllerAccessRequest': {'additionalProperties': False, - 'properties': {'changes': {'items': {'$ref': '#/definitions/ModifyControllerAccess'}, - 'type': 'array'}}, - 'required': ['changes'], - 'type': 'object'}, - 'RemoveBlocksArgs': {'additionalProperties': False, - 'properties': {'all': {'type': 'boolean'}}, - 'required': ['all'], - 'type': 'object'}, - 'UserAccess': {'additionalProperties': False, - 'properties': {'access': {'type': 'string'}, - 'user-tag': {'type': 'string'}}, - 'required': ['user-tag', 'access'], - 'type': 'object'}, - 'UserAccessResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/UserAccess'}}, - 'type': 'object'}, - 'UserAccessResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/UserAccessResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'UserModel': {'additionalProperties': False, - 'properties': {'last-connection': {'format': 'date-time', - 'type': 'string'}, - 'model': {'$ref': '#/definitions/Model'}}, - 'required': ['model', 'last-connection'], - 'type': 'object'}, - 'UserModelList': {'additionalProperties': False, - 'properties': {'user-models': {'items': {'$ref': '#/definitions/UserModel'}, - 'type': 'array'}}, - 'required': ['user-models'], - 'type': 'object'}}, - 'properties': {'AllModels': {'properties': {'Result': {'$ref': '#/definitions/UserModelList'}}, - 'type': 'object'}, - 'CloudSpec': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/CloudSpecResults'}}, - 'type': 'object'}, - 'ControllerConfig': {'properties': {'Result': {'$ref': '#/definitions/ControllerConfigResult'}}, - 'type': 'object'}, - 'DestroyController': {'properties': {'Params': {'$ref': '#/definitions/DestroyControllerArgs'}}, - 'type': 'object'}, - 'GetCloudSpec': {'properties': {'Params': {'$ref': '#/definitions/ModelTag'}, - 'Result': {'$ref': '#/definitions/CloudSpecResult'}}, - 'type': 'object'}, - 'GetControllerAccess': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/UserAccessResults'}}, - 'type': 'object'}, - 'HostedModelConfigs': {'properties': {'Result': {'$ref': '#/definitions/HostedModelConfigsResults'}}, - 'type': 'object'}, - 'InitiateMigration': {'properties': {'Params': {'$ref': '#/definitions/InitiateMigrationArgs'}, - 'Result': {'$ref': '#/definitions/InitiateMigrationResults'}}, - 'type': 'object'}, - 'ListBlockedModels': {'properties': {'Result': {'$ref': '#/definitions/ModelBlockInfoList'}}, - 'type': 'object'}, - 'ModelConfig': {'properties': {'Result': {'$ref': '#/definitions/ModelConfigResults'}}, - 'type': 'object'}, - 'ModelStatus': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ModelStatusResults'}}, - 'type': 'object'}, - 'ModifyControllerAccess': {'properties': {'Params': {'$ref': '#/definitions/ModifyControllerAccessRequest'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'RemoveBlocks': {'properties': {'Params': {'$ref': '#/definitions/RemoveBlocksArgs'}}, - 'type': 'object'}, - 'WatchAllModels': {'properties': {'Result': {'$ref': '#/definitions/AllWatcherId'}}, - 'type': 'object'}}, - 'type': 'object'} - - - @ReturnMapping(UserModelList) - async def AllModels(self): - ''' - - Returns -> typing.Sequence[~UserModel] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='AllModels', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(CloudSpecResults) - async def CloudSpec(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~CloudSpecResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='CloudSpec', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ControllerConfigResult) - async def ControllerConfig(self): - ''' - - Returns -> typing.Mapping[str, typing.Any] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='ControllerConfig', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def DestroyController(self, destroy_models): - ''' - destroy_models : bool - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='DestroyController', - version=3, - params=_params) - _params['destroy-models'] = destroy_models - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(CloudSpecResult) - async def GetCloudSpec(self): - ''' - - Returns -> typing.Union[_ForwardRef('Error'), _ForwardRef('CloudSpec')] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='GetCloudSpec', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(UserAccessResults) - async def GetControllerAccess(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~UserAccessResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='GetControllerAccess', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(HostedModelConfigsResults) - async def HostedModelConfigs(self): - ''' - - Returns -> typing.Sequence[~HostedModelConfig] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='HostedModelConfigs', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(InitiateMigrationResults) - async def InitiateMigration(self, specs): - ''' - specs : typing.Sequence[~MigrationSpec] - Returns -> typing.Sequence[~InitiateMigrationResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='InitiateMigration', - version=3, - params=_params) - _params['specs'] = specs - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ModelBlockInfoList) - async def ListBlockedModels(self): - ''' - - Returns -> typing.Sequence[~ModelBlockInfo] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='ListBlockedModels', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ModelConfigResults) - async def ModelConfig(self): - ''' - - Returns -> typing.Mapping[str, ~ConfigValue] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='ModelConfig', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ModelStatusResults) - async def ModelStatus(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ModelStatus] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='ModelStatus', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def ModifyControllerAccess(self, changes): - ''' - changes : typing.Sequence[~ModifyControllerAccess] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='ModifyControllerAccess', - version=3, - params=_params) - _params['changes'] = changes - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def RemoveBlocks(self, all_): - ''' - all_ : bool - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='RemoveBlocks', - version=3, - params=_params) - _params['all'] = all_ - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(AllWatcherId) - async def WatchAllModels(self): - ''' - - Returns -> str - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Controller', - request='WatchAllModels', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - -class FirewallerFacade(Type): - name = 'Firewaller' - version = 3 - schema = {'definitions': {'BoolResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'type': 'boolean'}}, - 'required': ['result'], - 'type': 'object'}, - 'BoolResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/BoolResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'CloudCredential': {'additionalProperties': False, - 'properties': {'attrs': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'auth-type': {'type': 'string'}, - 'redacted': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['auth-type'], - 'type': 'object'}, - 'CloudSpec': {'additionalProperties': False, - 'properties': {'credential': {'$ref': '#/definitions/CloudCredential'}, - 'endpoint': {'type': 'string'}, - 'identity-endpoint': {'type': 'string'}, - 'name': {'type': 'string'}, - 'region': {'type': 'string'}, - 'storage-endpoint': {'type': 'string'}, - 'type': {'type': 'string'}}, - 'required': ['type', 'name'], - 'type': 'object'}, - 'CloudSpecResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/CloudSpec'}}, - 'type': 'object'}, - 'CloudSpecResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/CloudSpecResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'Entities': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}}, - 'required': ['entities'], - 'type': 'object'}, - 'Entity': {'additionalProperties': False, - 'properties': {'tag': {'type': 'string'}}, - 'required': ['tag'], - 'type': 'object'}, - 'Error': {'additionalProperties': False, - 'properties': {'code': {'type': 'string'}, - 'info': {'$ref': '#/definitions/ErrorInfo'}, - 'message': {'type': 'string'}}, - 'required': ['message', 'code'], - 'type': 'object'}, - 'ErrorInfo': {'additionalProperties': False, - 'properties': {'macaroon': {'$ref': '#/definitions/Macaroon'}, - 'macaroon-path': {'type': 'string'}}, - 'type': 'object'}, - 'LifeResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'life': {'type': 'string'}}, - 'required': ['life'], - 'type': 'object'}, - 'LifeResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Macaroon': {'additionalProperties': False, 'type': 'object'}, - 'MachinePortRange': {'additionalProperties': False, - 'properties': {'port-range': {'$ref': '#/definitions/PortRange'}, - 'relation-tag': {'type': 'string'}, - 'unit-tag': {'type': 'string'}}, - 'required': ['unit-tag', - 'relation-tag', - 'port-range'], - 'type': 'object'}, - 'MachinePorts': {'additionalProperties': False, - 'properties': {'machine-tag': {'type': 'string'}, - 'subnet-tag': {'type': 'string'}}, - 'required': ['machine-tag', 'subnet-tag'], - 'type': 'object'}, - 'MachinePortsParams': {'additionalProperties': False, - 'properties': {'params': {'items': {'$ref': '#/definitions/MachinePorts'}, - 'type': 'array'}}, - 'required': ['params'], - 'type': 'object'}, - 'MachinePortsResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'ports': {'items': {'$ref': '#/definitions/MachinePortRange'}, - 'type': 'array'}}, - 'required': ['ports'], - 'type': 'object'}, - 'MachinePortsResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/MachinePortsResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'ModelConfigResult': {'additionalProperties': False, - 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}}, - 'required': ['config'], - 'type': 'object'}, - 'ModelTag': {'additionalProperties': False, 'type': 'object'}, - 'NotifyWatchResult': {'additionalProperties': False, - 'properties': {'NotifyWatcherId': {'type': 'string'}, - 'error': {'$ref': '#/definitions/Error'}}, - 'required': ['NotifyWatcherId'], - 'type': 'object'}, - 'NotifyWatchResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'PortRange': {'additionalProperties': False, - 'properties': {'from-port': {'type': 'integer'}, - 'protocol': {'type': 'string'}, - 'to-port': {'type': 'integer'}}, - 'required': ['from-port', 'to-port', 'protocol'], - 'type': 'object'}, - 'StringResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'type': 'string'}}, - 'required': ['result'], - 'type': 'object'}, - 'StringResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'StringsResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'type': 'object'}, - 'StringsResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StringsResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'StringsWatchResult': {'additionalProperties': False, - 'properties': {'changes': {'items': {'type': 'string'}, - 'type': 'array'}, - 'error': {'$ref': '#/definitions/Error'}, - 'watcher-id': {'type': 'string'}}, - 'required': ['watcher-id'], - 'type': 'object'}, - 'StringsWatchResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}}, - 'properties': {'CloudSpec': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/CloudSpecResults'}}, - 'type': 'object'}, - 'GetAssignedMachine': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StringResults'}}, - 'type': 'object'}, - 'GetCloudSpec': {'properties': {'Params': {'$ref': '#/definitions/ModelTag'}, - 'Result': {'$ref': '#/definitions/CloudSpecResult'}}, - 'type': 'object'}, - 'GetExposed': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/BoolResults'}}, - 'type': 'object'}, - 'GetMachineActiveSubnets': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StringsResults'}}, - 'type': 'object'}, - 'GetMachinePorts': {'properties': {'Params': {'$ref': '#/definitions/MachinePortsParams'}, - 'Result': {'$ref': '#/definitions/MachinePortsResults'}}, - 'type': 'object'}, - 'InstanceId': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StringResults'}}, - 'type': 'object'}, - 'Life': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/LifeResults'}}, - 'type': 'object'}, - 'ModelConfig': {'properties': {'Result': {'$ref': '#/definitions/ModelConfigResult'}}, - 'type': 'object'}, - 'Watch': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, - 'type': 'object'}, - 'WatchForModelConfigChanges': {'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, - 'type': 'object'}, - 'WatchModelMachines': {'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, - 'type': 'object'}, - 'WatchOpenedPorts': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, - 'type': 'object'}, - 'WatchUnits': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, - 'type': 'object'}}, - 'type': 'object'} - - - @ReturnMapping(CloudSpecResults) - async def CloudSpec(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~CloudSpecResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='CloudSpec', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringResults) - async def GetAssignedMachine(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StringResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='GetAssignedMachine', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(CloudSpecResult) - async def GetCloudSpec(self): - ''' - - Returns -> typing.Union[_ForwardRef('Error'), _ForwardRef('CloudSpec')] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='GetCloudSpec', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(BoolResults) - async def GetExposed(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~BoolResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='GetExposed', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringsResults) - async def GetMachineActiveSubnets(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StringsResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='GetMachineActiveSubnets', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(MachinePortsResults) - async def GetMachinePorts(self, params): - ''' - params : typing.Sequence[~MachinePorts] - Returns -> typing.Sequence[~MachinePortsResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='GetMachinePorts', - version=3, - params=_params) - _params['params'] = params - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringResults) - async def InstanceId(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StringResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='InstanceId', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(LifeResults) - async def Life(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~LifeResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='Life', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ModelConfigResult) - async def ModelConfig(self): - ''' - - Returns -> typing.Mapping[str, typing.Any] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='ModelConfig', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(NotifyWatchResults) - async def Watch(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~NotifyWatchResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='Watch', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(NotifyWatchResult) - async def WatchForModelConfigChanges(self): - ''' - - Returns -> typing.Union[str, _ForwardRef('Error')] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='WatchForModelConfigChanges', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringsWatchResult) - async def WatchModelMachines(self): - ''' - - Returns -> typing.Union[typing.Sequence[str], _ForwardRef('Error'), str] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='WatchModelMachines', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringsWatchResults) - async def WatchOpenedPorts(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StringsWatchResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='WatchOpenedPorts', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringsWatchResults) - async def WatchUnits(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StringsWatchResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Firewaller', - request='WatchUnits', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - -class ImageMetadataFacade(Type): - name = 'ImageMetadata' - version = 3 - schema = {'properties': {'UpdateFromPublishedImages': {'type': 'object'}}, - 'type': 'object'} - - - @ReturnMapping(None) - async def UpdateFromPublishedImages(self): - ''' - - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='ImageMetadata', - request='UpdateFromPublishedImages', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - -class InstancePollerFacade(Type): - name = 'InstancePoller' - version = 3 - schema = {'definitions': {'Address': {'additionalProperties': False, - 'properties': {'scope': {'type': 'string'}, - 'space-name': {'type': 'string'}, - 'type': {'type': 'string'}, - 'value': {'type': 'string'}}, - 'required': ['value', 'type', 'scope'], - 'type': 'object'}, - 'BoolResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'type': 'boolean'}}, - 'required': ['result'], - 'type': 'object'}, - 'BoolResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/BoolResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Entities': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}}, - 'required': ['entities'], - 'type': 'object'}, - 'Entity': {'additionalProperties': False, - 'properties': {'tag': {'type': 'string'}}, - 'required': ['tag'], - 'type': 'object'}, - 'EntityStatusArgs': {'additionalProperties': False, - 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'info': {'type': 'string'}, - 'status': {'type': 'string'}, - 'tag': {'type': 'string'}}, - 'required': ['tag', - 'status', - 'info', - 'data'], - 'type': 'object'}, - 'Error': {'additionalProperties': False, - 'properties': {'code': {'type': 'string'}, - 'info': {'$ref': '#/definitions/ErrorInfo'}, - 'message': {'type': 'string'}}, - 'required': ['message', 'code'], - 'type': 'object'}, - 'ErrorInfo': {'additionalProperties': False, - 'properties': {'macaroon': {'$ref': '#/definitions/Macaroon'}, - 'macaroon-path': {'type': 'string'}}, - 'type': 'object'}, - 'ErrorResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}}, - 'type': 'object'}, - 'ErrorResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'LifeResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'life': {'type': 'string'}}, - 'required': ['life'], - 'type': 'object'}, - 'LifeResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Macaroon': {'additionalProperties': False, 'type': 'object'}, - 'MachineAddresses': {'additionalProperties': False, - 'properties': {'addresses': {'items': {'$ref': '#/definitions/Address'}, - 'type': 'array'}, - 'tag': {'type': 'string'}}, - 'required': ['tag', 'addresses'], - 'type': 'object'}, - 'MachineAddressesResult': {'additionalProperties': False, - 'properties': {'addresses': {'items': {'$ref': '#/definitions/Address'}, - 'type': 'array'}, - 'error': {'$ref': '#/definitions/Error'}}, - 'required': ['addresses'], - 'type': 'object'}, - 'MachineAddressesResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/MachineAddressesResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'ModelConfigResult': {'additionalProperties': False, - 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}}, - 'required': ['config'], - 'type': 'object'}, - 'NotifyWatchResult': {'additionalProperties': False, - 'properties': {'NotifyWatcherId': {'type': 'string'}, - 'error': {'$ref': '#/definitions/Error'}}, - 'required': ['NotifyWatcherId'], - 'type': 'object'}, - 'SetMachinesAddresses': {'additionalProperties': False, - 'properties': {'machine-addresses': {'items': {'$ref': '#/definitions/MachineAddresses'}, - 'type': 'array'}}, - 'required': ['machine-addresses'], - 'type': 'object'}, - 'SetStatus': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, - 'type': 'array'}}, - 'required': ['entities'], - 'type': 'object'}, - 'StatusResult': {'additionalProperties': False, - 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'error': {'$ref': '#/definitions/Error'}, - 'id': {'type': 'string'}, - 'info': {'type': 'string'}, - 'life': {'type': 'string'}, - 'since': {'format': 'date-time', - 'type': 'string'}, - 'status': {'type': 'string'}}, - 'required': ['id', - 'life', - 'status', - 'info', - 'data', - 'since'], - 'type': 'object'}, - 'StatusResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StatusResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'StringResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'type': 'string'}}, - 'required': ['result'], - 'type': 'object'}, - 'StringResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'StringsWatchResult': {'additionalProperties': False, - 'properties': {'changes': {'items': {'type': 'string'}, - 'type': 'array'}, - 'error': {'$ref': '#/definitions/Error'}, - 'watcher-id': {'type': 'string'}}, - 'required': ['watcher-id'], - 'type': 'object'}}, - 'properties': {'AreManuallyProvisioned': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/BoolResults'}}, - 'type': 'object'}, - 'InstanceId': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StringResults'}}, - 'type': 'object'}, - 'InstanceStatus': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StatusResults'}}, - 'type': 'object'}, - 'Life': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/LifeResults'}}, - 'type': 'object'}, - 'ModelConfig': {'properties': {'Result': {'$ref': '#/definitions/ModelConfigResult'}}, - 'type': 'object'}, - 'ProviderAddresses': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/MachineAddressesResults'}}, - 'type': 'object'}, - 'SetInstanceStatus': {'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'SetProviderAddresses': {'properties': {'Params': {'$ref': '#/definitions/SetMachinesAddresses'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'Status': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StatusResults'}}, - 'type': 'object'}, - 'WatchForModelConfigChanges': {'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, - 'type': 'object'}, - 'WatchModelMachines': {'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, - 'type': 'object'}}, - 'type': 'object'} - - - @ReturnMapping(BoolResults) - async def AreManuallyProvisioned(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~BoolResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='InstancePoller', - request='AreManuallyProvisioned', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringResults) - async def InstanceId(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StringResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='InstancePoller', - request='InstanceId', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StatusResults) - async def InstanceStatus(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StatusResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='InstancePoller', - request='InstanceStatus', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(LifeResults) - async def Life(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~LifeResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='InstancePoller', - request='Life', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ModelConfigResult) - async def ModelConfig(self): - ''' - - Returns -> typing.Mapping[str, typing.Any] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='InstancePoller', - request='ModelConfig', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(MachineAddressesResults) - async def ProviderAddresses(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~MachineAddressesResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='InstancePoller', - request='ProviderAddresses', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetInstanceStatus(self, entities): - ''' - entities : typing.Sequence[~EntityStatusArgs] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='InstancePoller', - request='SetInstanceStatus', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetProviderAddresses(self, machine_addresses): - ''' - machine_addresses : typing.Sequence[~MachineAddresses] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='InstancePoller', - request='SetProviderAddresses', - version=3, - params=_params) - _params['machine-addresses'] = machine_addresses - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StatusResults) - async def Status(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StatusResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='InstancePoller', - request='Status', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(NotifyWatchResult) - async def WatchForModelConfigChanges(self): - ''' - - Returns -> typing.Union[str, _ForwardRef('Error')] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='InstancePoller', - request='WatchForModelConfigChanges', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringsWatchResult) - async def WatchModelMachines(self): - ''' - - Returns -> typing.Union[typing.Sequence[str], _ForwardRef('Error'), str] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='InstancePoller', - request='WatchModelMachines', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - -class MachineManagerFacade(Type): - name = 'MachineManager' - version = 3 - schema = {'definitions': {'AddMachineParams': {'additionalProperties': False, - 'properties': {'addresses': {'items': {'$ref': '#/definitions/Address'}, - 'type': 'array'}, - 'constraints': {'$ref': '#/definitions/Value'}, - 'container-type': {'type': 'string'}, - 'disks': {'items': {'$ref': '#/definitions/Constraints'}, - 'type': 'array'}, - 'hardware-characteristics': {'$ref': '#/definitions/HardwareCharacteristics'}, - 'instance-id': {'type': 'string'}, - 'jobs': {'items': {'type': 'string'}, - 'type': 'array'}, - 'nonce': {'type': 'string'}, - 'parent-id': {'type': 'string'}, - 'placement': {'$ref': '#/definitions/Placement'}, - 'series': {'type': 'string'}}, - 'required': ['series', - 'constraints', - 'jobs', - 'parent-id', - 'container-type', - 'instance-id', - 'nonce', - 'hardware-characteristics', - 'addresses'], - 'type': 'object'}, - 'AddMachines': {'additionalProperties': False, - 'properties': {'params': {'items': {'$ref': '#/definitions/AddMachineParams'}, - 'type': 'array'}}, - 'required': ['params'], - 'type': 'object'}, - 'AddMachinesResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'machine': {'type': 'string'}}, - 'required': ['machine'], - 'type': 'object'}, - 'AddMachinesResults': {'additionalProperties': False, - 'properties': {'machines': {'items': {'$ref': '#/definitions/AddMachinesResult'}, - 'type': 'array'}}, - 'required': ['machines'], - 'type': 'object'}, - 'Address': {'additionalProperties': False, - 'properties': {'scope': {'type': 'string'}, - 'space-name': {'type': 'string'}, - 'type': {'type': 'string'}, - 'value': {'type': 'string'}}, - 'required': ['value', 'type', 'scope'], - 'type': 'object'}, - 'Constraints': {'additionalProperties': False, - 'properties': {'Count': {'type': 'integer'}, - 'Pool': {'type': 'string'}, - 'Size': {'type': 'integer'}}, - 'required': ['Pool', 'Size', 'Count'], - 'type': 'object'}, - 'DestroyMachineInfo': {'additionalProperties': False, - 'properties': {'destroyed-storage': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}, - 'destroyed-units': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}, - 'detached-storage': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}}, - 'type': 'object'}, - 'DestroyMachineResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'info': {'$ref': '#/definitions/DestroyMachineInfo'}}, - 'type': 'object'}, - 'DestroyMachineResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/DestroyMachineResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'Entities': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}}, - 'required': ['entities'], - 'type': 'object'}, - 'Entity': {'additionalProperties': False, - 'properties': {'tag': {'type': 'string'}}, - 'required': ['tag'], - 'type': 'object'}, - 'Error': {'additionalProperties': False, - 'properties': {'code': {'type': 'string'}, - 'info': {'$ref': '#/definitions/ErrorInfo'}, - 'message': {'type': 'string'}}, - 'required': ['message', 'code'], - 'type': 'object'}, - 'ErrorInfo': {'additionalProperties': False, - 'properties': {'macaroon': {'$ref': '#/definitions/Macaroon'}, - 'macaroon-path': {'type': 'string'}}, - 'type': 'object'}, - 'HardwareCharacteristics': {'additionalProperties': False, - 'properties': {'arch': {'type': 'string'}, - 'availability-zone': {'type': 'string'}, - 'cpu-cores': {'type': 'integer'}, - 'cpu-power': {'type': 'integer'}, - 'mem': {'type': 'integer'}, - 'root-disk': {'type': 'integer'}, - 'tags': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'type': 'object'}, - 'InstanceType': {'additionalProperties': False, - 'properties': {'arches': {'items': {'type': 'string'}, - 'type': 'array'}, - 'cost': {'type': 'integer'}, - 'cpu-cores': {'type': 'integer'}, - 'deprecated': {'type': 'boolean'}, - 'memory': {'type': 'integer'}, - 'name': {'type': 'string'}, - 'root-disk': {'type': 'integer'}, - 'virt-type': {'type': 'string'}}, - 'required': ['arches', 'cpu-cores', 'memory'], - 'type': 'object'}, - 'InstanceTypesResult': {'additionalProperties': False, - 'properties': {'cost-currency': {'type': 'string'}, - 'cost-divisor': {'type': 'integer'}, - 'cost-unit': {'type': 'string'}, - 'error': {'$ref': '#/definitions/Error'}, - 'instance-types': {'items': {'$ref': '#/definitions/InstanceType'}, - 'type': 'array'}}, - 'type': 'object'}, - 'InstanceTypesResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/InstanceTypesResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Macaroon': {'additionalProperties': False, 'type': 'object'}, - 'ModelInstanceTypesConstraint': {'additionalProperties': False, - 'properties': {'value': {'$ref': '#/definitions/Value'}}, - 'type': 'object'}, - 'ModelInstanceTypesConstraints': {'additionalProperties': False, - 'properties': {'constraints': {'items': {'$ref': '#/definitions/ModelInstanceTypesConstraint'}, - 'type': 'array'}}, - 'required': ['constraints'], - 'type': 'object'}, - 'Placement': {'additionalProperties': False, - 'properties': {'directive': {'type': 'string'}, - 'scope': {'type': 'string'}}, - 'required': ['scope', 'directive'], - 'type': 'object'}, - 'Value': {'additionalProperties': False, - 'properties': {'arch': {'type': 'string'}, - 'container': {'type': 'string'}, - 'cores': {'type': 'integer'}, - 'cpu-power': {'type': 'integer'}, - 'instance-type': {'type': 'string'}, - 'mem': {'type': 'integer'}, - 'root-disk': {'type': 'integer'}, - 'spaces': {'items': {'type': 'string'}, - 'type': 'array'}, - 'tags': {'items': {'type': 'string'}, - 'type': 'array'}, - 'virt-type': {'type': 'string'}}, - 'type': 'object'}}, - 'properties': {'AddMachines': {'properties': {'Params': {'$ref': '#/definitions/AddMachines'}, - 'Result': {'$ref': '#/definitions/AddMachinesResults'}}, - 'type': 'object'}, - 'DestroyMachine': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/DestroyMachineResults'}}, - 'type': 'object'}, - 'ForceDestroyMachine': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/DestroyMachineResults'}}, - 'type': 'object'}, - 'InstanceTypes': {'properties': {'Params': {'$ref': '#/definitions/ModelInstanceTypesConstraints'}, - 'Result': {'$ref': '#/definitions/InstanceTypesResults'}}, - 'type': 'object'}}, - 'type': 'object'} - - - @ReturnMapping(AddMachinesResults) - async def AddMachines(self, params): - ''' - params : typing.Sequence[~AddMachineParams] - Returns -> typing.Sequence[~AddMachinesResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='MachineManager', - request='AddMachines', - version=3, - params=_params) - _params['params'] = params - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(DestroyMachineResults) - async def DestroyMachine(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~DestroyMachineResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='MachineManager', - request='DestroyMachine', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(DestroyMachineResults) - async def ForceDestroyMachine(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~DestroyMachineResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='MachineManager', - request='ForceDestroyMachine', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(InstanceTypesResults) - async def InstanceTypes(self, constraints): - ''' - constraints : typing.Sequence[~ModelInstanceTypesConstraint] - Returns -> typing.Sequence[~InstanceTypesResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='MachineManager', - request='InstanceTypes', - version=3, - params=_params) - _params['constraints'] = constraints - reply = await self.rpc(msg) - return reply - - - -class ModelManagerFacade(Type): - name = 'ModelManager' - version = 3 - schema = {'definitions': {'DumpModelRequest': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}, - 'simplified': {'type': 'boolean'}}, - 'required': ['entities', 'simplified'], - 'type': 'object'}, - 'Entities': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}}, - 'required': ['entities'], - 'type': 'object'}, - 'Entity': {'additionalProperties': False, - 'properties': {'tag': {'type': 'string'}}, - 'required': ['tag'], - 'type': 'object'}, - 'EntityStatus': {'additionalProperties': False, - 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'info': {'type': 'string'}, - 'since': {'format': 'date-time', - 'type': 'string'}, - 'status': {'type': 'string'}}, - 'required': ['status', 'info', 'since'], - 'type': 'object'}, - 'Error': {'additionalProperties': False, - 'properties': {'code': {'type': 'string'}, - 'info': {'$ref': '#/definitions/ErrorInfo'}, - 'message': {'type': 'string'}}, - 'required': ['message', 'code'], - 'type': 'object'}, - 'ErrorInfo': {'additionalProperties': False, - 'properties': {'macaroon': {'$ref': '#/definitions/Macaroon'}, - 'macaroon-path': {'type': 'string'}}, - 'type': 'object'}, - 'ErrorResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}}, - 'type': 'object'}, - 'ErrorResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Macaroon': {'additionalProperties': False, 'type': 'object'}, - 'MachineHardware': {'additionalProperties': False, - 'properties': {'arch': {'type': 'string'}, - 'availability-zone': {'type': 'string'}, - 'cores': {'type': 'integer'}, - 'cpu-power': {'type': 'integer'}, - 'mem': {'type': 'integer'}, - 'root-disk': {'type': 'integer'}, - 'tags': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'type': 'object'}, - 'MapResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}}, - 'required': ['result'], - 'type': 'object'}, - 'MapResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/MapResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Model': {'additionalProperties': False, - 'properties': {'name': {'type': 'string'}, - 'owner-tag': {'type': 'string'}, - 'uuid': {'type': 'string'}}, - 'required': ['name', 'uuid', 'owner-tag'], - 'type': 'object'}, - 'ModelCreateArgs': {'additionalProperties': False, - 'properties': {'cloud-tag': {'type': 'string'}, - 'config': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'credential': {'type': 'string'}, - 'name': {'type': 'string'}, - 'owner-tag': {'type': 'string'}, - 'region': {'type': 'string'}}, - 'required': ['name', 'owner-tag'], - 'type': 'object'}, - 'ModelDefaultValues': {'additionalProperties': False, - 'properties': {'cloud-region': {'type': 'string'}, - 'cloud-tag': {'type': 'string'}, - 'config': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}}, - 'required': ['config'], - 'type': 'object'}, - 'ModelDefaults': {'additionalProperties': False, - 'properties': {'controller': {'additionalProperties': True, - 'type': 'object'}, - 'default': {'additionalProperties': True, - 'type': 'object'}, - 'regions': {'items': {'$ref': '#/definitions/RegionDefaults'}, - 'type': 'array'}}, - 'type': 'object'}, - 'ModelDefaultsResult': {'additionalProperties': False, - 'properties': {'config': {'patternProperties': {'.*': {'$ref': '#/definitions/ModelDefaults'}}, - 'type': 'object'}}, - 'required': ['config'], - 'type': 'object'}, - 'ModelInfo': {'additionalProperties': False, - 'properties': {'agent-version': {'$ref': '#/definitions/Number'}, - 'cloud-credential-tag': {'type': 'string'}, - 'cloud-region': {'type': 'string'}, - 'cloud-tag': {'type': 'string'}, - 'controller-uuid': {'type': 'string'}, - 'default-series': {'type': 'string'}, - 'life': {'type': 'string'}, - 'machines': {'items': {'$ref': '#/definitions/ModelMachineInfo'}, - 'type': 'array'}, - 'migration': {'$ref': '#/definitions/ModelMigrationStatus'}, - 'name': {'type': 'string'}, - 'owner-tag': {'type': 'string'}, - 'provider-type': {'type': 'string'}, - 'sla': {'$ref': '#/definitions/ModelSLAInfo'}, - 'status': {'$ref': '#/definitions/EntityStatus'}, - 'users': {'items': {'$ref': '#/definitions/ModelUserInfo'}, - 'type': 'array'}, - 'uuid': {'type': 'string'}}, - 'required': ['name', - 'uuid', - 'controller-uuid', - 'cloud-tag', - 'owner-tag', - 'life', - 'users', - 'machines', - 'sla', - 'agent-version'], - 'type': 'object'}, - 'ModelInfoResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/ModelInfo'}}, - 'type': 'object'}, - 'ModelInfoResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ModelInfoResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'ModelMachineInfo': {'additionalProperties': False, - 'properties': {'hardware': {'$ref': '#/definitions/MachineHardware'}, - 'has-vote': {'type': 'boolean'}, - 'id': {'type': 'string'}, - 'instance-id': {'type': 'string'}, - 'status': {'type': 'string'}, - 'wants-vote': {'type': 'boolean'}}, - 'required': ['id'], - 'type': 'object'}, - 'ModelMigrationStatus': {'additionalProperties': False, - 'properties': {'end': {'format': 'date-time', - 'type': 'string'}, - 'start': {'format': 'date-time', - 'type': 'string'}, - 'status': {'type': 'string'}}, - 'required': ['status', 'start'], - 'type': 'object'}, - 'ModelSLAInfo': {'additionalProperties': False, - 'properties': {'level': {'type': 'string'}, - 'owner': {'type': 'string'}}, - 'required': ['level', 'owner'], - 'type': 'object'}, - 'ModelStatus': {'additionalProperties': False, - 'properties': {'application-count': {'type': 'integer'}, - 'hosted-machine-count': {'type': 'integer'}, - 'life': {'type': 'string'}, - 'machines': {'items': {'$ref': '#/definitions/ModelMachineInfo'}, - 'type': 'array'}, - 'model-tag': {'type': 'string'}, - 'owner-tag': {'type': 'string'}}, - 'required': ['model-tag', - 'life', - 'hosted-machine-count', - 'application-count', - 'owner-tag'], - 'type': 'object'}, - 'ModelStatusResults': {'additionalProperties': False, - 'properties': {'models': {'items': {'$ref': '#/definitions/ModelStatus'}, - 'type': 'array'}}, - 'required': ['models'], - 'type': 'object'}, - 'ModelUnsetKeys': {'additionalProperties': False, - 'properties': {'cloud-region': {'type': 'string'}, - 'cloud-tag': {'type': 'string'}, - 'keys': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['keys'], - 'type': 'object'}, - 'ModelUserInfo': {'additionalProperties': False, - 'properties': {'access': {'type': 'string'}, - 'display-name': {'type': 'string'}, - 'last-connection': {'format': 'date-time', - 'type': 'string'}, - 'user': {'type': 'string'}}, - 'required': ['user', - 'display-name', - 'last-connection', - 'access'], - 'type': 'object'}, - 'ModifyModelAccess': {'additionalProperties': False, - 'properties': {'access': {'type': 'string'}, - 'action': {'type': 'string'}, - 'model-tag': {'type': 'string'}, - 'user-tag': {'type': 'string'}}, - 'required': ['user-tag', - 'action', - 'access', - 'model-tag'], - 'type': 'object'}, - 'ModifyModelAccessRequest': {'additionalProperties': False, - 'properties': {'changes': {'items': {'$ref': '#/definitions/ModifyModelAccess'}, - 'type': 'array'}}, - 'required': ['changes'], - 'type': 'object'}, - 'Number': {'additionalProperties': False, - 'properties': {'Build': {'type': 'integer'}, - 'Major': {'type': 'integer'}, - 'Minor': {'type': 'integer'}, - 'Patch': {'type': 'integer'}, - 'Tag': {'type': 'string'}}, - 'required': ['Major', - 'Minor', - 'Tag', - 'Patch', - 'Build'], - 'type': 'object'}, - 'RegionDefaults': {'additionalProperties': False, - 'properties': {'region-name': {'type': 'string'}, - 'value': {'additionalProperties': True, - 'type': 'object'}}, - 'required': ['region-name', 'value'], - 'type': 'object'}, - 'SetModelDefaults': {'additionalProperties': False, - 'properties': {'config': {'items': {'$ref': '#/definitions/ModelDefaultValues'}, - 'type': 'array'}}, - 'required': ['config'], - 'type': 'object'}, - 'StringResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'type': 'string'}}, - 'required': ['result'], - 'type': 'object'}, - 'StringResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'UnsetModelDefaults': {'additionalProperties': False, - 'properties': {'keys': {'items': {'$ref': '#/definitions/ModelUnsetKeys'}, - 'type': 'array'}}, - 'required': ['keys'], - 'type': 'object'}, - 'UserModel': {'additionalProperties': False, - 'properties': {'last-connection': {'format': 'date-time', - 'type': 'string'}, - 'model': {'$ref': '#/definitions/Model'}}, - 'required': ['model', 'last-connection'], - 'type': 'object'}, - 'UserModelList': {'additionalProperties': False, - 'properties': {'user-models': {'items': {'$ref': '#/definitions/UserModel'}, - 'type': 'array'}}, - 'required': ['user-models'], - 'type': 'object'}}, - 'properties': {'CreateModel': {'properties': {'Params': {'$ref': '#/definitions/ModelCreateArgs'}, - 'Result': {'$ref': '#/definitions/ModelInfo'}}, - 'type': 'object'}, - 'DestroyModels': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'DumpModels': {'properties': {'Params': {'$ref': '#/definitions/DumpModelRequest'}, - 'Result': {'$ref': '#/definitions/StringResults'}}, - 'type': 'object'}, - 'DumpModelsDB': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/MapResults'}}, - 'type': 'object'}, - 'ListModels': {'properties': {'Params': {'$ref': '#/definitions/Entity'}, - 'Result': {'$ref': '#/definitions/UserModelList'}}, - 'type': 'object'}, - 'ModelDefaults': {'properties': {'Result': {'$ref': '#/definitions/ModelDefaultsResult'}}, - 'type': 'object'}, - 'ModelInfo': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ModelInfoResults'}}, - 'type': 'object'}, - 'ModelStatus': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ModelStatusResults'}}, - 'type': 'object'}, - 'ModifyModelAccess': {'properties': {'Params': {'$ref': '#/definitions/ModifyModelAccessRequest'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'SetModelDefaults': {'properties': {'Params': {'$ref': '#/definitions/SetModelDefaults'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'UnsetModelDefaults': {'properties': {'Params': {'$ref': '#/definitions/UnsetModelDefaults'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}}, - 'type': 'object'} - - - @ReturnMapping(ModelInfo) - async def CreateModel(self, cloud_tag, config, credential, name, owner_tag, region): - ''' - cloud_tag : str - config : typing.Mapping[str, typing.Any] - credential : str - name : str - owner_tag : str - region : str - Returns -> typing.Union[_ForwardRef('Number'), str, typing.Sequence[~ModelMachineInfo], _ForwardRef('ModelMigrationStatus'), _ForwardRef('ModelSLAInfo'), _ForwardRef('EntityStatus'), typing.Sequence[~ModelUserInfo]] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='ModelManager', - request='CreateModel', - version=3, - params=_params) - _params['cloud-tag'] = cloud_tag - _params['config'] = config - _params['credential'] = credential - _params['name'] = name - _params['owner-tag'] = owner_tag - _params['region'] = region - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def DestroyModels(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='ModelManager', - request='DestroyModels', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringResults) - async def DumpModels(self, entities, simplified): - ''' - entities : typing.Sequence[~Entity] - simplified : bool - Returns -> typing.Sequence[~StringResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='ModelManager', - request='DumpModels', - version=3, - params=_params) - _params['entities'] = entities - _params['simplified'] = simplified - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(MapResults) - async def DumpModelsDB(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~MapResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='ModelManager', - request='DumpModelsDB', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(UserModelList) - async def ListModels(self, tag): - ''' - tag : str - Returns -> typing.Sequence[~UserModel] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='ModelManager', - request='ListModels', - version=3, - params=_params) - _params['tag'] = tag - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ModelDefaultsResult) - async def ModelDefaults(self): - ''' - - Returns -> typing.Mapping[str, ~ModelDefaults] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='ModelManager', - request='ModelDefaults', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ModelInfoResults) - async def ModelInfo(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ModelInfoResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='ModelManager', - request='ModelInfo', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ModelStatusResults) - async def ModelStatus(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ModelStatus] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='ModelManager', - request='ModelStatus', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def ModifyModelAccess(self, changes): - ''' - changes : typing.Sequence[~ModifyModelAccess] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='ModelManager', - request='ModifyModelAccess', - version=3, - params=_params) - _params['changes'] = changes - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetModelDefaults(self, config): - ''' - config : typing.Sequence[~ModelDefaultValues] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='ModelManager', - request='SetModelDefaults', - version=3, - params=_params) - _params['config'] = config - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def UnsetModelDefaults(self, keys): - ''' - keys : typing.Sequence[~ModelUnsetKeys] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='ModelManager', - request='UnsetModelDefaults', - version=3, - params=_params) - _params['keys'] = keys - reply = await self.rpc(msg) - return reply - - - -class ProvisionerFacade(Type): - name = 'Provisioner' - version = 3 - schema = {'definitions': {'APIHostPortsResult': {'additionalProperties': False, - 'properties': {'servers': {'items': {'items': {'$ref': '#/definitions/HostPort'}, - 'type': 'array'}, - 'type': 'array'}}, - 'required': ['servers'], - 'type': 'object'}, - 'Address': {'additionalProperties': False, - 'properties': {'scope': {'type': 'string'}, - 'space-name': {'type': 'string'}, - 'type': {'type': 'string'}, - 'value': {'type': 'string'}}, - 'required': ['value', 'type', 'scope'], - 'type': 'object'}, - 'Binary': {'additionalProperties': False, - 'properties': {'Arch': {'type': 'string'}, - 'Number': {'$ref': '#/definitions/Number'}, - 'Series': {'type': 'string'}}, - 'required': ['Number', 'Series', 'Arch'], - 'type': 'object'}, - 'BytesResult': {'additionalProperties': False, - 'properties': {'result': {'items': {'type': 'integer'}, - 'type': 'array'}}, - 'required': ['result'], - 'type': 'object'}, - 'CloudImageMetadata': {'additionalProperties': False, - 'properties': {'arch': {'type': 'string'}, - 'image-id': {'type': 'string'}, - 'priority': {'type': 'integer'}, - 'region': {'type': 'string'}, - 'root-storage-size': {'type': 'integer'}, - 'root-storage-type': {'type': 'string'}, - 'series': {'type': 'string'}, - 'source': {'type': 'string'}, - 'stream': {'type': 'string'}, - 'version': {'type': 'string'}, - 'virt-type': {'type': 'string'}}, - 'required': ['image-id', - 'region', - 'version', - 'series', - 'arch', - 'source', - 'priority'], - 'type': 'object'}, - 'ConstraintsResult': {'additionalProperties': False, - 'properties': {'constraints': {'$ref': '#/definitions/Value'}, - 'error': {'$ref': '#/definitions/Error'}}, - 'required': ['constraints'], - 'type': 'object'}, - 'ConstraintsResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ConstraintsResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'ContainerConfig': {'additionalProperties': False, - 'properties': {'UpdateBehavior': {'$ref': '#/definitions/UpdateBehavior'}, - 'apt-mirror': {'type': 'string'}, - 'apt-proxy': {'$ref': '#/definitions/Settings'}, - 'authorized-keys': {'type': 'string'}, - 'provider-type': {'type': 'string'}, - 'proxy': {'$ref': '#/definitions/Settings'}, - 'ssl-hostname-verification': {'type': 'boolean'}}, - 'required': ['provider-type', - 'authorized-keys', - 'ssl-hostname-verification', - 'proxy', - 'apt-proxy', - 'apt-mirror', - 'UpdateBehavior'], - 'type': 'object'}, - 'ContainerManagerConfig': {'additionalProperties': False, - 'properties': {'config': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}}, - 'required': ['config'], - 'type': 'object'}, - 'ContainerManagerConfigParams': {'additionalProperties': False, - 'properties': {'type': {'type': 'string'}}, - 'required': ['type'], - 'type': 'object'}, - 'ControllerConfigResult': {'additionalProperties': False, - 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}}, - 'required': ['config'], - 'type': 'object'}, - 'DeviceBridgeInfo': {'additionalProperties': False, - 'properties': {'bridge-name': {'type': 'string'}, - 'host-device-name': {'type': 'string'}}, - 'required': ['host-device-name', - 'bridge-name'], - 'type': 'object'}, - 'DistributionGroupResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['result'], - 'type': 'object'}, - 'DistributionGroupResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/DistributionGroupResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Entities': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}}, - 'required': ['entities'], - 'type': 'object'}, - 'Entity': {'additionalProperties': False, - 'properties': {'tag': {'type': 'string'}}, - 'required': ['tag'], - 'type': 'object'}, - 'EntityPassword': {'additionalProperties': False, - 'properties': {'password': {'type': 'string'}, - 'tag': {'type': 'string'}}, - 'required': ['tag', 'password'], - 'type': 'object'}, - 'EntityPasswords': {'additionalProperties': False, - 'properties': {'changes': {'items': {'$ref': '#/definitions/EntityPassword'}, - 'type': 'array'}}, - 'required': ['changes'], - 'type': 'object'}, - 'EntityStatusArgs': {'additionalProperties': False, - 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'info': {'type': 'string'}, - 'status': {'type': 'string'}, - 'tag': {'type': 'string'}}, - 'required': ['tag', - 'status', - 'info', - 'data'], - 'type': 'object'}, - 'Error': {'additionalProperties': False, - 'properties': {'code': {'type': 'string'}, - 'info': {'$ref': '#/definitions/ErrorInfo'}, - 'message': {'type': 'string'}}, - 'required': ['message', 'code'], - 'type': 'object'}, - 'ErrorInfo': {'additionalProperties': False, - 'properties': {'macaroon': {'$ref': '#/definitions/Macaroon'}, - 'macaroon-path': {'type': 'string'}}, - 'type': 'object'}, - 'ErrorResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}}, - 'type': 'object'}, - 'ErrorResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'FindToolsParams': {'additionalProperties': False, - 'properties': {'arch': {'type': 'string'}, - 'major': {'type': 'integer'}, - 'minor': {'type': 'integer'}, - 'number': {'$ref': '#/definitions/Number'}, - 'series': {'type': 'string'}}, - 'required': ['number', - 'major', - 'minor', - 'arch', - 'series'], - 'type': 'object'}, - 'FindToolsResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'list': {'items': {'$ref': '#/definitions/Tools'}, - 'type': 'array'}}, - 'required': ['list'], - 'type': 'object'}, - 'HardwareCharacteristics': {'additionalProperties': False, - 'properties': {'arch': {'type': 'string'}, - 'availability-zone': {'type': 'string'}, - 'cpu-cores': {'type': 'integer'}, - 'cpu-power': {'type': 'integer'}, - 'mem': {'type': 'integer'}, - 'root-disk': {'type': 'integer'}, - 'tags': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'type': 'object'}, - 'HostNetworkChange': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'new-bridges': {'items': {'$ref': '#/definitions/DeviceBridgeInfo'}, - 'type': 'array'}, - 'reconfigure-delay': {'type': 'integer'}}, - 'required': ['new-bridges', - 'reconfigure-delay'], - 'type': 'object'}, - 'HostNetworkChangeResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/HostNetworkChange'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'HostPort': {'additionalProperties': False, - 'properties': {'Address': {'$ref': '#/definitions/Address'}, - 'port': {'type': 'integer'}}, - 'required': ['Address', 'port'], - 'type': 'object'}, - 'InstanceInfo': {'additionalProperties': False, - 'properties': {'characteristics': {'$ref': '#/definitions/HardwareCharacteristics'}, - 'instance-id': {'type': 'string'}, - 'network-config': {'items': {'$ref': '#/definitions/NetworkConfig'}, - 'type': 'array'}, - 'nonce': {'type': 'string'}, - 'tag': {'type': 'string'}, - 'volume-attachments': {'patternProperties': {'.*': {'$ref': '#/definitions/VolumeAttachmentInfo'}}, - 'type': 'object'}, - 'volumes': {'items': {'$ref': '#/definitions/Volume'}, - 'type': 'array'}}, - 'required': ['tag', - 'instance-id', - 'nonce', - 'characteristics', - 'volumes', - 'volume-attachments', - 'network-config'], - 'type': 'object'}, - 'InstancesInfo': {'additionalProperties': False, - 'properties': {'machines': {'items': {'$ref': '#/definitions/InstanceInfo'}, - 'type': 'array'}}, - 'required': ['machines'], - 'type': 'object'}, - 'LifeResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'life': {'type': 'string'}}, - 'required': ['life'], - 'type': 'object'}, - 'LifeResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Macaroon': {'additionalProperties': False, 'type': 'object'}, - 'MachineContainers': {'additionalProperties': False, - 'properties': {'container-types': {'items': {'type': 'string'}, - 'type': 'array'}, - 'machine-tag': {'type': 'string'}}, - 'required': ['machine-tag', - 'container-types'], - 'type': 'object'}, - 'MachineContainersParams': {'additionalProperties': False, - 'properties': {'params': {'items': {'$ref': '#/definitions/MachineContainers'}, - 'type': 'array'}}, - 'required': ['params'], - 'type': 'object'}, - 'MachineNetworkConfigResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'info': {'items': {'$ref': '#/definitions/NetworkConfig'}, - 'type': 'array'}}, - 'required': ['info'], - 'type': 'object'}, - 'MachineNetworkConfigResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/MachineNetworkConfigResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'ModelConfigResult': {'additionalProperties': False, - 'properties': {'config': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}}, - 'required': ['config'], - 'type': 'object'}, - 'NetworkConfig': {'additionalProperties': False, - 'properties': {'address': {'type': 'string'}, - 'cidr': {'type': 'string'}, - 'config-type': {'type': 'string'}, - 'device-index': {'type': 'integer'}, - 'disabled': {'type': 'boolean'}, - 'dns-search-domains': {'items': {'type': 'string'}, - 'type': 'array'}, - 'dns-servers': {'items': {'type': 'string'}, - 'type': 'array'}, - 'gateway-address': {'type': 'string'}, - 'interface-name': {'type': 'string'}, - 'interface-type': {'type': 'string'}, - 'mac-address': {'type': 'string'}, - 'mtu': {'type': 'integer'}, - 'no-auto-start': {'type': 'boolean'}, - 'parent-interface-name': {'type': 'string'}, - 'provider-address-id': {'type': 'string'}, - 'provider-id': {'type': 'string'}, - 'provider-space-id': {'type': 'string'}, - 'provider-subnet-id': {'type': 'string'}, - 'provider-vlan-id': {'type': 'string'}, - 'routes': {'items': {'$ref': '#/definitions/NetworkRoute'}, - 'type': 'array'}, - 'vlan-tag': {'type': 'integer'}}, - 'required': ['device-index', - 'mac-address', - 'cidr', - 'mtu', - 'provider-id', - 'provider-subnet-id', - 'provider-space-id', - 'provider-address-id', - 'provider-vlan-id', - 'vlan-tag', - 'interface-name', - 'parent-interface-name', - 'interface-type', - 'disabled'], - 'type': 'object'}, - 'NetworkRoute': {'additionalProperties': False, - 'properties': {'destination-cidr': {'type': 'string'}, - 'gateway-ip': {'type': 'string'}, - 'metric': {'type': 'integer'}}, - 'required': ['destination-cidr', - 'gateway-ip', - 'metric'], - 'type': 'object'}, - 'NotifyWatchResult': {'additionalProperties': False, - 'properties': {'NotifyWatcherId': {'type': 'string'}, - 'error': {'$ref': '#/definitions/Error'}}, - 'required': ['NotifyWatcherId'], - 'type': 'object'}, - 'Number': {'additionalProperties': False, - 'properties': {'Build': {'type': 'integer'}, - 'Major': {'type': 'integer'}, - 'Minor': {'type': 'integer'}, - 'Patch': {'type': 'integer'}, - 'Tag': {'type': 'string'}}, - 'required': ['Major', - 'Minor', - 'Tag', - 'Patch', - 'Build'], - 'type': 'object'}, - 'ProvisioningInfo': {'additionalProperties': False, - 'properties': {'constraints': {'$ref': '#/definitions/Value'}, - 'controller-config': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'endpoint-bindings': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'image-metadata': {'items': {'$ref': '#/definitions/CloudImageMetadata'}, - 'type': 'array'}, - 'jobs': {'items': {'type': 'string'}, - 'type': 'array'}, - 'placement': {'type': 'string'}, - 'series': {'type': 'string'}, - 'subnets-to-zones': {'patternProperties': {'.*': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'type': 'object'}, - 'tags': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'volume-attachments': {'items': {'$ref': '#/definitions/VolumeAttachmentParams'}, - 'type': 'array'}, - 'volumes': {'items': {'$ref': '#/definitions/VolumeParams'}, - 'type': 'array'}}, - 'required': ['constraints', - 'series', - 'placement', - 'jobs'], - 'type': 'object'}, - 'ProvisioningInfoResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/ProvisioningInfo'}}, - 'required': ['result'], - 'type': 'object'}, - 'ProvisioningInfoResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ProvisioningInfoResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'SetMachineNetworkConfig': {'additionalProperties': False, - 'properties': {'config': {'items': {'$ref': '#/definitions/NetworkConfig'}, - 'type': 'array'}, - 'tag': {'type': 'string'}}, - 'required': ['tag', 'config'], - 'type': 'object'}, - 'SetStatus': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, - 'type': 'array'}}, - 'required': ['entities'], - 'type': 'object'}, - 'Settings': {'additionalProperties': False, - 'properties': {'AutoNoProxy': {'type': 'string'}, - 'Ftp': {'type': 'string'}, - 'Http': {'type': 'string'}, - 'Https': {'type': 'string'}, - 'NoProxy': {'type': 'string'}}, - 'required': ['Http', - 'Https', - 'Ftp', - 'NoProxy', - 'AutoNoProxy'], - 'type': 'object'}, - 'StatusResult': {'additionalProperties': False, - 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'error': {'$ref': '#/definitions/Error'}, - 'id': {'type': 'string'}, - 'info': {'type': 'string'}, - 'life': {'type': 'string'}, - 'since': {'format': 'date-time', - 'type': 'string'}, - 'status': {'type': 'string'}}, - 'required': ['id', - 'life', - 'status', - 'info', - 'data', - 'since'], - 'type': 'object'}, - 'StatusResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StatusResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'StringResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'type': 'string'}}, - 'required': ['result'], - 'type': 'object'}, - 'StringResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'StringsResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'type': 'object'}, - 'StringsWatchResult': {'additionalProperties': False, - 'properties': {'changes': {'items': {'type': 'string'}, - 'type': 'array'}, - 'error': {'$ref': '#/definitions/Error'}, - 'watcher-id': {'type': 'string'}}, - 'required': ['watcher-id'], - 'type': 'object'}, - 'StringsWatchResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Tools': {'additionalProperties': False, - 'properties': {'sha256': {'type': 'string'}, - 'size': {'type': 'integer'}, - 'url': {'type': 'string'}, - 'version': {'$ref': '#/definitions/Binary'}}, - 'required': ['version', 'url', 'size'], - 'type': 'object'}, - 'ToolsResult': {'additionalProperties': False, - 'properties': {'disable-ssl-hostname-verification': {'type': 'boolean'}, - 'error': {'$ref': '#/definitions/Error'}, - 'tools': {'items': {'$ref': '#/definitions/Tools'}, - 'type': 'array'}}, - 'required': ['tools', - 'disable-ssl-hostname-verification'], - 'type': 'object'}, - 'ToolsResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ToolsResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'UpdateBehavior': {'additionalProperties': False, - 'properties': {'enable-os-refresh-update': {'type': 'boolean'}, - 'enable-os-upgrade': {'type': 'boolean'}}, - 'required': ['enable-os-refresh-update', - 'enable-os-upgrade'], - 'type': 'object'}, - 'Value': {'additionalProperties': False, - 'properties': {'arch': {'type': 'string'}, - 'container': {'type': 'string'}, - 'cores': {'type': 'integer'}, - 'cpu-power': {'type': 'integer'}, - 'instance-type': {'type': 'string'}, - 'mem': {'type': 'integer'}, - 'root-disk': {'type': 'integer'}, - 'spaces': {'items': {'type': 'string'}, - 'type': 'array'}, - 'tags': {'items': {'type': 'string'}, - 'type': 'array'}, - 'virt-type': {'type': 'string'}}, - 'type': 'object'}, - 'Volume': {'additionalProperties': False, - 'properties': {'info': {'$ref': '#/definitions/VolumeInfo'}, - 'volume-tag': {'type': 'string'}}, - 'required': ['volume-tag', 'info'], - 'type': 'object'}, - 'VolumeAttachmentInfo': {'additionalProperties': False, - 'properties': {'bus-address': {'type': 'string'}, - 'device-link': {'type': 'string'}, - 'device-name': {'type': 'string'}, - 'read-only': {'type': 'boolean'}}, - 'type': 'object'}, - 'VolumeAttachmentParams': {'additionalProperties': False, - 'properties': {'instance-id': {'type': 'string'}, - 'machine-tag': {'type': 'string'}, - 'provider': {'type': 'string'}, - 'read-only': {'type': 'boolean'}, - 'volume-id': {'type': 'string'}, - 'volume-tag': {'type': 'string'}}, - 'required': ['volume-tag', - 'machine-tag', - 'provider'], - 'type': 'object'}, - 'VolumeInfo': {'additionalProperties': False, - 'properties': {'hardware-id': {'type': 'string'}, - 'persistent': {'type': 'boolean'}, - 'pool': {'type': 'string'}, - 'size': {'type': 'integer'}, - 'volume-id': {'type': 'string'}, - 'wwn': {'type': 'string'}}, - 'required': ['volume-id', 'size', 'persistent'], - 'type': 'object'}, - 'VolumeParams': {'additionalProperties': False, - 'properties': {'attachment': {'$ref': '#/definitions/VolumeAttachmentParams'}, - 'attributes': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'provider': {'type': 'string'}, - 'size': {'type': 'integer'}, - 'tags': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'volume-tag': {'type': 'string'}}, - 'required': ['volume-tag', - 'size', - 'provider'], - 'type': 'object'}, - 'WatchContainer': {'additionalProperties': False, - 'properties': {'container-type': {'type': 'string'}, - 'machine-tag': {'type': 'string'}}, - 'required': ['machine-tag', - 'container-type'], - 'type': 'object'}, - 'WatchContainers': {'additionalProperties': False, - 'properties': {'params': {'items': {'$ref': '#/definitions/WatchContainer'}, - 'type': 'array'}}, - 'required': ['params'], - 'type': 'object'}}, - 'properties': {'APIAddresses': {'properties': {'Result': {'$ref': '#/definitions/StringsResult'}}, - 'type': 'object'}, - 'APIHostPorts': {'properties': {'Result': {'$ref': '#/definitions/APIHostPortsResult'}}, - 'type': 'object'}, - 'CACert': {'properties': {'Result': {'$ref': '#/definitions/BytesResult'}}, - 'type': 'object'}, - 'Constraints': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ConstraintsResults'}}, - 'type': 'object'}, - 'ContainerConfig': {'properties': {'Result': {'$ref': '#/definitions/ContainerConfig'}}, - 'type': 'object'}, - 'ContainerManagerConfig': {'properties': {'Params': {'$ref': '#/definitions/ContainerManagerConfigParams'}, - 'Result': {'$ref': '#/definitions/ContainerManagerConfig'}}, - 'type': 'object'}, - 'ControllerConfig': {'properties': {'Result': {'$ref': '#/definitions/ControllerConfigResult'}}, - 'type': 'object'}, - 'DistributionGroup': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/DistributionGroupResults'}}, - 'type': 'object'}, - 'EnsureDead': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'FindTools': {'properties': {'Params': {'$ref': '#/definitions/FindToolsParams'}, - 'Result': {'$ref': '#/definitions/FindToolsResult'}}, - 'type': 'object'}, - 'GetContainerInterfaceInfo': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/MachineNetworkConfigResults'}}, - 'type': 'object'}, - 'HostChangesForContainers': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/HostNetworkChangeResults'}}, - 'type': 'object'}, - 'InstanceId': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StringResults'}}, - 'type': 'object'}, - 'InstanceStatus': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StatusResults'}}, - 'type': 'object'}, - 'Life': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/LifeResults'}}, - 'type': 'object'}, - 'MachinesWithTransientErrors': {'properties': {'Result': {'$ref': '#/definitions/StatusResults'}}, - 'type': 'object'}, - 'MarkMachinesForRemoval': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'ModelConfig': {'properties': {'Result': {'$ref': '#/definitions/ModelConfigResult'}}, - 'type': 'object'}, - 'ModelUUID': {'properties': {'Result': {'$ref': '#/definitions/StringResult'}}, - 'type': 'object'}, - 'PrepareContainerInterfaceInfo': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/MachineNetworkConfigResults'}}, - 'type': 'object'}, - 'ProvisioningInfo': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ProvisioningInfoResults'}}, - 'type': 'object'}, - 'ReleaseContainerAddresses': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'Remove': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'Series': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StringResults'}}, - 'type': 'object'}, - 'SetHostMachineNetworkConfig': {'properties': {'Params': {'$ref': '#/definitions/SetMachineNetworkConfig'}}, - 'type': 'object'}, - 'SetInstanceInfo': {'properties': {'Params': {'$ref': '#/definitions/InstancesInfo'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'SetInstanceStatus': {'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'SetObservedNetworkConfig': {'properties': {'Params': {'$ref': '#/definitions/SetMachineNetworkConfig'}}, - 'type': 'object'}, - 'SetPasswords': {'properties': {'Params': {'$ref': '#/definitions/EntityPasswords'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'SetProviderNetworkConfig': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'SetStatus': {'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'SetSupportedContainers': {'properties': {'Params': {'$ref': '#/definitions/MachineContainersParams'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'StateAddresses': {'properties': {'Result': {'$ref': '#/definitions/StringsResult'}}, - 'type': 'object'}, - 'Status': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StatusResults'}}, - 'type': 'object'}, - 'Tools': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ToolsResults'}}, - 'type': 'object'}, - 'UpdateStatus': {'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'WatchAPIHostPorts': {'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, - 'type': 'object'}, - 'WatchAllContainers': {'properties': {'Params': {'$ref': '#/definitions/WatchContainers'}, - 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, - 'type': 'object'}, - 'WatchContainers': {'properties': {'Params': {'$ref': '#/definitions/WatchContainers'}, - 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, - 'type': 'object'}, - 'WatchForModelConfigChanges': {'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, - 'type': 'object'}, - 'WatchMachineErrorRetry': {'properties': {'Result': {'$ref': '#/definitions/NotifyWatchResult'}}, - 'type': 'object'}, - 'WatchModelMachines': {'properties': {'Result': {'$ref': '#/definitions/StringsWatchResult'}}, - 'type': 'object'}}, - 'type': 'object'} - - - @ReturnMapping(StringsResult) - async def APIAddresses(self): - ''' - - Returns -> typing.Union[_ForwardRef('Error'), typing.Sequence[str]] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='APIAddresses', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(APIHostPortsResult) - async def APIHostPorts(self): - ''' - - Returns -> typing.Sequence[~HostPort] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='APIHostPorts', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(BytesResult) - async def CACert(self): - ''' - - Returns -> typing.Sequence[int] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='CACert', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ConstraintsResults) - async def Constraints(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ConstraintsResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='Constraints', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ContainerConfig) - async def ContainerConfig(self): - ''' - - Returns -> typing.Union[_ForwardRef('UpdateBehavior'), str, _ForwardRef('Settings'), bool] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='ContainerConfig', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ContainerManagerConfig) - async def ContainerManagerConfig(self, type_): - ''' - type_ : str - Returns -> typing.Mapping[str, str] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='ContainerManagerConfig', - version=3, - params=_params) - _params['type'] = type_ - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ControllerConfigResult) - async def ControllerConfig(self): - ''' - - Returns -> typing.Mapping[str, typing.Any] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='ControllerConfig', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(DistributionGroupResults) - async def DistributionGroup(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~DistributionGroupResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='DistributionGroup', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def EnsureDead(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='EnsureDead', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(FindToolsResult) - async def FindTools(self, arch, major, minor, number, series): - ''' - arch : str - major : int - minor : int - number : Number - series : str - Returns -> typing.Union[_ForwardRef('Error'), typing.Sequence[~Tools]] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='FindTools', - version=3, - params=_params) - _params['arch'] = arch - _params['major'] = major - _params['minor'] = minor - _params['number'] = number - _params['series'] = series - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(MachineNetworkConfigResults) - async def GetContainerInterfaceInfo(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~MachineNetworkConfigResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='GetContainerInterfaceInfo', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(HostNetworkChangeResults) - async def HostChangesForContainers(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~HostNetworkChange] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='HostChangesForContainers', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringResults) - async def InstanceId(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StringResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='InstanceId', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StatusResults) - async def InstanceStatus(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StatusResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='InstanceStatus', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(LifeResults) - async def Life(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~LifeResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='Life', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StatusResults) - async def MachinesWithTransientErrors(self): - ''' - - Returns -> typing.Sequence[~StatusResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='MachinesWithTransientErrors', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def MarkMachinesForRemoval(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='MarkMachinesForRemoval', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ModelConfigResult) - async def ModelConfig(self): - ''' - - Returns -> typing.Mapping[str, typing.Any] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='ModelConfig', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringResult) - async def ModelUUID(self): - ''' - - Returns -> typing.Union[_ForwardRef('Error'), str] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='ModelUUID', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(MachineNetworkConfigResults) - async def PrepareContainerInterfaceInfo(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~MachineNetworkConfigResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='PrepareContainerInterfaceInfo', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ProvisioningInfoResults) - async def ProvisioningInfo(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ProvisioningInfoResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='ProvisioningInfo', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def ReleaseContainerAddresses(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='ReleaseContainerAddresses', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def Remove(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='Remove', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringResults) - async def Series(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StringResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='Series', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def SetHostMachineNetworkConfig(self, config, tag): - ''' - config : typing.Sequence[~NetworkConfig] - tag : str - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='SetHostMachineNetworkConfig', - version=3, - params=_params) - _params['config'] = config - _params['tag'] = tag - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetInstanceInfo(self, machines): - ''' - machines : typing.Sequence[~InstanceInfo] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='SetInstanceInfo', - version=3, - params=_params) - _params['machines'] = machines - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetInstanceStatus(self, entities): - ''' - entities : typing.Sequence[~EntityStatusArgs] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='SetInstanceStatus', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def SetObservedNetworkConfig(self, config, tag): - ''' - config : typing.Sequence[~NetworkConfig] - tag : str - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='SetObservedNetworkConfig', - version=3, - params=_params) - _params['config'] = config - _params['tag'] = tag - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetPasswords(self, changes): - ''' - changes : typing.Sequence[~EntityPassword] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='SetPasswords', - version=3, - params=_params) - _params['changes'] = changes - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetProviderNetworkConfig(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='SetProviderNetworkConfig', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetStatus(self, entities): - ''' - entities : typing.Sequence[~EntityStatusArgs] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='SetStatus', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetSupportedContainers(self, params): - ''' - params : typing.Sequence[~MachineContainers] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='SetSupportedContainers', - version=3, - params=_params) - _params['params'] = params - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringsResult) - async def StateAddresses(self): - ''' - - Returns -> typing.Union[_ForwardRef('Error'), typing.Sequence[str]] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='StateAddresses', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StatusResults) - async def Status(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StatusResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='Status', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ToolsResults) - async def Tools(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ToolsResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='Tools', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def UpdateStatus(self, entities): - ''' - entities : typing.Sequence[~EntityStatusArgs] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='UpdateStatus', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(NotifyWatchResult) - async def WatchAPIHostPorts(self): - ''' - - Returns -> typing.Union[str, _ForwardRef('Error')] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='WatchAPIHostPorts', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringsWatchResults) - async def WatchAllContainers(self, params): - ''' - params : typing.Sequence[~WatchContainer] - Returns -> typing.Sequence[~StringsWatchResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='WatchAllContainers', - version=3, - params=_params) - _params['params'] = params - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringsWatchResults) - async def WatchContainers(self, params): - ''' - params : typing.Sequence[~WatchContainer] - Returns -> typing.Sequence[~StringsWatchResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='WatchContainers', - version=3, - params=_params) - _params['params'] = params - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(NotifyWatchResult) - async def WatchForModelConfigChanges(self): - ''' - - Returns -> typing.Union[str, _ForwardRef('Error')] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='WatchForModelConfigChanges', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(NotifyWatchResult) - async def WatchMachineErrorRetry(self): - ''' - - Returns -> typing.Union[str, _ForwardRef('Error')] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='WatchMachineErrorRetry', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringsWatchResult) - async def WatchModelMachines(self): - ''' - - Returns -> typing.Union[typing.Sequence[str], _ForwardRef('Error'), str] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Provisioner', - request='WatchModelMachines', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - -class SpacesFacade(Type): - name = 'Spaces' - version = 3 - schema = {'definitions': {'CreateSpaceParams': {'additionalProperties': False, - 'properties': {'provider-id': {'type': 'string'}, - 'public': {'type': 'boolean'}, - 'space-tag': {'type': 'string'}, - 'subnet-tags': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['subnet-tags', - 'space-tag', - 'public'], - 'type': 'object'}, - 'CreateSpacesParams': {'additionalProperties': False, - 'properties': {'spaces': {'items': {'$ref': '#/definitions/CreateSpaceParams'}, - 'type': 'array'}}, - 'required': ['spaces'], - 'type': 'object'}, - 'Error': {'additionalProperties': False, - 'properties': {'code': {'type': 'string'}, - 'info': {'$ref': '#/definitions/ErrorInfo'}, - 'message': {'type': 'string'}}, - 'required': ['message', 'code'], - 'type': 'object'}, - 'ErrorInfo': {'additionalProperties': False, - 'properties': {'macaroon': {'$ref': '#/definitions/Macaroon'}, - 'macaroon-path': {'type': 'string'}}, - 'type': 'object'}, - 'ErrorResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}}, - 'type': 'object'}, - 'ErrorResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'ListSpacesResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/Space'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Macaroon': {'additionalProperties': False, 'type': 'object'}, - 'Space': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'name': {'type': 'string'}, - 'subnets': {'items': {'$ref': '#/definitions/Subnet'}, - 'type': 'array'}}, - 'required': ['name', 'subnets'], - 'type': 'object'}, - 'Subnet': {'additionalProperties': False, - 'properties': {'cidr': {'type': 'string'}, - 'life': {'type': 'string'}, - 'provider-id': {'type': 'string'}, - 'provider-network-id': {'type': 'string'}, - 'provider-space-id': {'type': 'string'}, - 'space-tag': {'type': 'string'}, - 'status': {'type': 'string'}, - 'vlan-tag': {'type': 'integer'}, - 'zones': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'required': ['cidr', - 'vlan-tag', - 'life', - 'space-tag', - 'zones'], - 'type': 'object'}}, - 'properties': {'CreateSpaces': {'properties': {'Params': {'$ref': '#/definitions/CreateSpacesParams'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'ListSpaces': {'properties': {'Result': {'$ref': '#/definitions/ListSpacesResults'}}, - 'type': 'object'}, - 'ReloadSpaces': {'type': 'object'}}, - 'type': 'object'} - - - @ReturnMapping(ErrorResults) - async def CreateSpaces(self, spaces): - ''' - spaces : typing.Sequence[~CreateSpaceParams] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Spaces', - request='CreateSpaces', - version=3, - params=_params) - _params['spaces'] = spaces - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ListSpacesResults) - async def ListSpaces(self): - ''' - - Returns -> typing.Sequence[~Space] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Spaces', - request='ListSpaces', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def ReloadSpaces(self): - ''' - - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Spaces', - request='ReloadSpaces', - version=3, - params=_params) - - reply = await self.rpc(msg) - return reply - - - -class StorageFacade(Type): - name = 'Storage' - version = 3 - schema = {'definitions': {'Entities': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}}, - 'required': ['entities'], - 'type': 'object'}, - 'Entity': {'additionalProperties': False, - 'properties': {'tag': {'type': 'string'}}, - 'required': ['tag'], - 'type': 'object'}, - 'EntityStatus': {'additionalProperties': False, - 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'info': {'type': 'string'}, - 'since': {'format': 'date-time', - 'type': 'string'}, - 'status': {'type': 'string'}}, - 'required': ['status', 'info', 'since'], - 'type': 'object'}, - 'Error': {'additionalProperties': False, - 'properties': {'code': {'type': 'string'}, - 'info': {'$ref': '#/definitions/ErrorInfo'}, - 'message': {'type': 'string'}}, - 'required': ['message', 'code'], - 'type': 'object'}, - 'ErrorInfo': {'additionalProperties': False, - 'properties': {'macaroon': {'$ref': '#/definitions/Macaroon'}, - 'macaroon-path': {'type': 'string'}}, - 'type': 'object'}, - 'ErrorResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}}, - 'type': 'object'}, - 'ErrorResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'FilesystemAttachmentDetails': {'additionalProperties': False, - 'properties': {'FilesystemAttachmentInfo': {'$ref': '#/definitions/FilesystemAttachmentInfo'}, - 'life': {'type': 'string'}}, - 'required': ['FilesystemAttachmentInfo'], - 'type': 'object'}, - 'FilesystemAttachmentInfo': {'additionalProperties': False, - 'properties': {'mount-point': {'type': 'string'}, - 'read-only': {'type': 'boolean'}}, - 'type': 'object'}, - 'FilesystemDetails': {'additionalProperties': False, - 'properties': {'filesystem-tag': {'type': 'string'}, - 'info': {'$ref': '#/definitions/FilesystemInfo'}, - 'life': {'type': 'string'}, - 'machine-attachments': {'patternProperties': {'.*': {'$ref': '#/definitions/FilesystemAttachmentDetails'}}, - 'type': 'object'}, - 'status': {'$ref': '#/definitions/EntityStatus'}, - 'storage': {'$ref': '#/definitions/StorageDetails'}, - 'volume-tag': {'type': 'string'}}, - 'required': ['filesystem-tag', - 'info', - 'status'], - 'type': 'object'}, - 'FilesystemDetailsListResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'items': {'$ref': '#/definitions/FilesystemDetails'}, - 'type': 'array'}}, - 'type': 'object'}, - 'FilesystemDetailsListResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/FilesystemDetailsListResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'FilesystemFilter': {'additionalProperties': False, - 'properties': {'machines': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'type': 'object'}, - 'FilesystemFilters': {'additionalProperties': False, - 'properties': {'filters': {'items': {'$ref': '#/definitions/FilesystemFilter'}, - 'type': 'array'}}, - 'type': 'object'}, - 'FilesystemInfo': {'additionalProperties': False, - 'properties': {'filesystem-id': {'type': 'string'}, - 'pool': {'type': 'string'}, - 'size': {'type': 'integer'}}, - 'required': ['filesystem-id', - 'pool', - 'size'], - 'type': 'object'}, - 'Macaroon': {'additionalProperties': False, 'type': 'object'}, - 'StorageAddParams': {'additionalProperties': False, - 'properties': {'name': {'type': 'string'}, - 'storage': {'$ref': '#/definitions/StorageConstraints'}, - 'unit': {'type': 'string'}}, - 'required': ['unit', 'name', 'storage'], - 'type': 'object'}, - 'StorageAttachmentDetails': {'additionalProperties': False, - 'properties': {'life': {'type': 'string'}, - 'location': {'type': 'string'}, - 'machine-tag': {'type': 'string'}, - 'storage-tag': {'type': 'string'}, - 'unit-tag': {'type': 'string'}}, - 'required': ['storage-tag', - 'unit-tag', - 'machine-tag'], - 'type': 'object'}, - 'StorageAttachmentId': {'additionalProperties': False, - 'properties': {'storage-tag': {'type': 'string'}, - 'unit-tag': {'type': 'string'}}, - 'required': ['storage-tag', - 'unit-tag'], - 'type': 'object'}, - 'StorageAttachmentIds': {'additionalProperties': False, - 'properties': {'ids': {'items': {'$ref': '#/definitions/StorageAttachmentId'}, - 'type': 'array'}}, - 'required': ['ids'], - 'type': 'object'}, - 'StorageConstraints': {'additionalProperties': False, - 'properties': {'count': {'type': 'integer'}, - 'pool': {'type': 'string'}, - 'size': {'type': 'integer'}}, - 'type': 'object'}, - 'StorageDetails': {'additionalProperties': False, - 'properties': {'attachments': {'patternProperties': {'.*': {'$ref': '#/definitions/StorageAttachmentDetails'}}, - 'type': 'object'}, - 'kind': {'type': 'integer'}, - 'life': {'type': 'string'}, - 'owner-tag': {'type': 'string'}, - 'persistent': {'type': 'boolean'}, - 'status': {'$ref': '#/definitions/EntityStatus'}, - 'storage-tag': {'type': 'string'}}, - 'required': ['storage-tag', - 'owner-tag', - 'kind', - 'status', - 'persistent'], - 'type': 'object'}, - 'StorageDetailsListResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'items': {'$ref': '#/definitions/StorageDetails'}, - 'type': 'array'}}, - 'type': 'object'}, - 'StorageDetailsListResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StorageDetailsListResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'StorageDetailsResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/StorageDetails'}}, - 'type': 'object'}, - 'StorageDetailsResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StorageDetailsResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'StorageFilter': {'additionalProperties': False, - 'type': 'object'}, - 'StorageFilters': {'additionalProperties': False, - 'properties': {'filters': {'items': {'$ref': '#/definitions/StorageFilter'}, - 'type': 'array'}}, - 'type': 'object'}, - 'StoragePool': {'additionalProperties': False, - 'properties': {'attrs': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'name': {'type': 'string'}, - 'provider': {'type': 'string'}}, - 'required': ['name', 'provider', 'attrs'], - 'type': 'object'}, - 'StoragePoolFilter': {'additionalProperties': False, - 'properties': {'names': {'items': {'type': 'string'}, - 'type': 'array'}, - 'providers': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'type': 'object'}, - 'StoragePoolFilters': {'additionalProperties': False, - 'properties': {'filters': {'items': {'$ref': '#/definitions/StoragePoolFilter'}, - 'type': 'array'}}, - 'type': 'object'}, - 'StoragePoolsResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'storage-pools': {'items': {'$ref': '#/definitions/StoragePool'}, - 'type': 'array'}}, - 'type': 'object'}, - 'StoragePoolsResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StoragePoolsResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'StoragesAddParams': {'additionalProperties': False, - 'properties': {'storages': {'items': {'$ref': '#/definitions/StorageAddParams'}, - 'type': 'array'}}, - 'required': ['storages'], - 'type': 'object'}, - 'VolumeAttachmentDetails': {'additionalProperties': False, - 'properties': {'VolumeAttachmentInfo': {'$ref': '#/definitions/VolumeAttachmentInfo'}, - 'life': {'type': 'string'}}, - 'required': ['VolumeAttachmentInfo'], - 'type': 'object'}, - 'VolumeAttachmentInfo': {'additionalProperties': False, - 'properties': {'bus-address': {'type': 'string'}, - 'device-link': {'type': 'string'}, - 'device-name': {'type': 'string'}, - 'read-only': {'type': 'boolean'}}, - 'type': 'object'}, - 'VolumeDetails': {'additionalProperties': False, - 'properties': {'info': {'$ref': '#/definitions/VolumeInfo'}, - 'life': {'type': 'string'}, - 'machine-attachments': {'patternProperties': {'.*': {'$ref': '#/definitions/VolumeAttachmentDetails'}}, - 'type': 'object'}, - 'status': {'$ref': '#/definitions/EntityStatus'}, - 'storage': {'$ref': '#/definitions/StorageDetails'}, - 'volume-tag': {'type': 'string'}}, - 'required': ['volume-tag', 'info', 'status'], - 'type': 'object'}, - 'VolumeDetailsListResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'items': {'$ref': '#/definitions/VolumeDetails'}, - 'type': 'array'}}, - 'type': 'object'}, - 'VolumeDetailsListResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/VolumeDetailsListResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'VolumeFilter': {'additionalProperties': False, - 'properties': {'machines': {'items': {'type': 'string'}, - 'type': 'array'}}, - 'type': 'object'}, - 'VolumeFilters': {'additionalProperties': False, - 'properties': {'filters': {'items': {'$ref': '#/definitions/VolumeFilter'}, - 'type': 'array'}}, - 'type': 'object'}, - 'VolumeInfo': {'additionalProperties': False, - 'properties': {'hardware-id': {'type': 'string'}, - 'persistent': {'type': 'boolean'}, - 'pool': {'type': 'string'}, - 'size': {'type': 'integer'}, - 'volume-id': {'type': 'string'}, - 'wwn': {'type': 'string'}}, - 'required': ['volume-id', 'size', 'persistent'], - 'type': 'object'}}, - 'properties': {'AddToUnit': {'properties': {'Params': {'$ref': '#/definitions/StoragesAddParams'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'Attach': {'properties': {'Params': {'$ref': '#/definitions/StorageAttachmentIds'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'CreatePool': {'properties': {'Params': {'$ref': '#/definitions/StoragePool'}}, - 'type': 'object'}, - 'Destroy': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'Detach': {'properties': {'Params': {'$ref': '#/definitions/StorageAttachmentIds'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'ListFilesystems': {'properties': {'Params': {'$ref': '#/definitions/FilesystemFilters'}, - 'Result': {'$ref': '#/definitions/FilesystemDetailsListResults'}}, - 'type': 'object'}, - 'ListPools': {'properties': {'Params': {'$ref': '#/definitions/StoragePoolFilters'}, - 'Result': {'$ref': '#/definitions/StoragePoolsResults'}}, - 'type': 'object'}, - 'ListStorageDetails': {'properties': {'Params': {'$ref': '#/definitions/StorageFilters'}, - 'Result': {'$ref': '#/definitions/StorageDetailsListResults'}}, - 'type': 'object'}, - 'ListVolumes': {'properties': {'Params': {'$ref': '#/definitions/VolumeFilters'}, - 'Result': {'$ref': '#/definitions/VolumeDetailsListResults'}}, - 'type': 'object'}, - 'StorageDetails': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StorageDetailsResults'}}, - 'type': 'object'}}, - 'type': 'object'} - - - @ReturnMapping(ErrorResults) - async def AddToUnit(self, storages): - ''' - storages : typing.Sequence[~StorageAddParams] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Storage', - request='AddToUnit', - version=3, - params=_params) - _params['storages'] = storages - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def Attach(self, ids): - ''' - ids : typing.Sequence[~StorageAttachmentId] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Storage', - request='Attach', - version=3, - params=_params) - _params['ids'] = ids - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(None) - async def CreatePool(self, attrs, name, provider): - ''' - attrs : typing.Mapping[str, typing.Any] - name : str - provider : str - Returns -> None - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Storage', - request='CreatePool', - version=3, - params=_params) - _params['attrs'] = attrs - _params['name'] = name - _params['provider'] = provider - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def Destroy(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Storage', - request='Destroy', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def Detach(self, ids): - ''' - ids : typing.Sequence[~StorageAttachmentId] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Storage', - request='Detach', - version=3, - params=_params) - _params['ids'] = ids - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(FilesystemDetailsListResults) - async def ListFilesystems(self, filters): - ''' - filters : typing.Sequence[~FilesystemFilter] - Returns -> typing.Sequence[~FilesystemDetailsListResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Storage', - request='ListFilesystems', - version=3, - params=_params) - _params['filters'] = filters - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StoragePoolsResults) - async def ListPools(self, filters): - ''' - filters : typing.Sequence[~StoragePoolFilter] - Returns -> typing.Sequence[~StoragePoolsResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Storage', - request='ListPools', - version=3, - params=_params) - _params['filters'] = filters - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StorageDetailsListResults) - async def ListStorageDetails(self, filters): - ''' - filters : typing.Sequence[~StorageFilter] - Returns -> typing.Sequence[~StorageDetailsListResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Storage', - request='ListStorageDetails', - version=3, - params=_params) - _params['filters'] = filters - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(VolumeDetailsListResults) - async def ListVolumes(self, filters): - ''' - filters : typing.Sequence[~VolumeFilter] - Returns -> typing.Sequence[~VolumeDetailsListResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Storage', - request='ListVolumes', - version=3, - params=_params) - _params['filters'] = filters - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StorageDetailsResults) - async def StorageDetails(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StorageDetailsResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='Storage', - request='StorageDetails', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - -class StorageProvisionerFacade(Type): - name = 'StorageProvisioner' - version = 3 - schema = {'definitions': {'BlockDevice': {'additionalProperties': False, - 'properties': {'BusAddress': {'type': 'string'}, - 'DeviceLinks': {'items': {'type': 'string'}, - 'type': 'array'}, - 'DeviceName': {'type': 'string'}, - 'FilesystemType': {'type': 'string'}, - 'HardwareId': {'type': 'string'}, - 'InUse': {'type': 'boolean'}, - 'Label': {'type': 'string'}, - 'MountPoint': {'type': 'string'}, - 'Size': {'type': 'integer'}, - 'UUID': {'type': 'string'}, - 'WWN': {'type': 'string'}}, - 'required': ['DeviceName', - 'DeviceLinks', - 'Label', - 'UUID', - 'HardwareId', - 'WWN', - 'BusAddress', - 'Size', - 'FilesystemType', - 'InUse', - 'MountPoint'], - 'type': 'object'}, - 'BlockDeviceResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/BlockDevice'}}, - 'required': ['result'], - 'type': 'object'}, - 'BlockDeviceResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/BlockDeviceResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'Entities': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/Entity'}, - 'type': 'array'}}, - 'required': ['entities'], - 'type': 'object'}, - 'Entity': {'additionalProperties': False, - 'properties': {'tag': {'type': 'string'}}, - 'required': ['tag'], - 'type': 'object'}, - 'EntityStatusArgs': {'additionalProperties': False, - 'properties': {'data': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'info': {'type': 'string'}, - 'status': {'type': 'string'}, - 'tag': {'type': 'string'}}, - 'required': ['tag', - 'status', - 'info', - 'data'], - 'type': 'object'}, - 'Error': {'additionalProperties': False, - 'properties': {'code': {'type': 'string'}, - 'info': {'$ref': '#/definitions/ErrorInfo'}, - 'message': {'type': 'string'}}, - 'required': ['message', 'code'], - 'type': 'object'}, - 'ErrorInfo': {'additionalProperties': False, - 'properties': {'macaroon': {'$ref': '#/definitions/Macaroon'}, - 'macaroon-path': {'type': 'string'}}, - 'type': 'object'}, - 'ErrorResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}}, - 'type': 'object'}, - 'ErrorResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/ErrorResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Filesystem': {'additionalProperties': False, - 'properties': {'filesystem-tag': {'type': 'string'}, - 'info': {'$ref': '#/definitions/FilesystemInfo'}, - 'volume-tag': {'type': 'string'}}, - 'required': ['filesystem-tag', 'info'], - 'type': 'object'}, - 'FilesystemAttachment': {'additionalProperties': False, - 'properties': {'filesystem-tag': {'type': 'string'}, - 'info': {'$ref': '#/definitions/FilesystemAttachmentInfo'}, - 'machine-tag': {'type': 'string'}}, - 'required': ['filesystem-tag', - 'machine-tag', - 'info'], - 'type': 'object'}, - 'FilesystemAttachmentInfo': {'additionalProperties': False, - 'properties': {'mount-point': {'type': 'string'}, - 'read-only': {'type': 'boolean'}}, - 'type': 'object'}, - 'FilesystemAttachmentParams': {'additionalProperties': False, - 'properties': {'filesystem-id': {'type': 'string'}, - 'filesystem-tag': {'type': 'string'}, - 'instance-id': {'type': 'string'}, - 'machine-tag': {'type': 'string'}, - 'mount-point': {'type': 'string'}, - 'provider': {'type': 'string'}, - 'read-only': {'type': 'boolean'}}, - 'required': ['filesystem-tag', - 'machine-tag', - 'provider'], - 'type': 'object'}, - 'FilesystemAttachmentParamsResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/FilesystemAttachmentParams'}}, - 'required': ['result'], - 'type': 'object'}, - 'FilesystemAttachmentParamsResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/FilesystemAttachmentParamsResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'FilesystemAttachmentResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/FilesystemAttachment'}}, - 'required': ['result'], - 'type': 'object'}, - 'FilesystemAttachmentResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/FilesystemAttachmentResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'FilesystemAttachments': {'additionalProperties': False, - 'properties': {'filesystem-attachments': {'items': {'$ref': '#/definitions/FilesystemAttachment'}, - 'type': 'array'}}, - 'required': ['filesystem-attachments'], - 'type': 'object'}, - 'FilesystemInfo': {'additionalProperties': False, - 'properties': {'filesystem-id': {'type': 'string'}, - 'pool': {'type': 'string'}, - 'size': {'type': 'integer'}}, - 'required': ['filesystem-id', - 'pool', - 'size'], - 'type': 'object'}, - 'FilesystemParams': {'additionalProperties': False, - 'properties': {'attachment': {'$ref': '#/definitions/FilesystemAttachmentParams'}, - 'attributes': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'filesystem-tag': {'type': 'string'}, - 'provider': {'type': 'string'}, - 'size': {'type': 'integer'}, - 'tags': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'volume-tag': {'type': 'string'}}, - 'required': ['filesystem-tag', - 'size', - 'provider'], - 'type': 'object'}, - 'FilesystemParamsResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/FilesystemParams'}}, - 'required': ['result'], - 'type': 'object'}, - 'FilesystemParamsResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/FilesystemParamsResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'FilesystemResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/Filesystem'}}, - 'required': ['result'], - 'type': 'object'}, - 'FilesystemResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/FilesystemResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'Filesystems': {'additionalProperties': False, - 'properties': {'filesystems': {'items': {'$ref': '#/definitions/Filesystem'}, - 'type': 'array'}}, - 'required': ['filesystems'], - 'type': 'object'}, - 'LifeResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'life': {'type': 'string'}}, - 'required': ['life'], - 'type': 'object'}, - 'LifeResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/LifeResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Macaroon': {'additionalProperties': False, 'type': 'object'}, - 'MachineStorageId': {'additionalProperties': False, - 'properties': {'attachment-tag': {'type': 'string'}, - 'machine-tag': {'type': 'string'}}, - 'required': ['machine-tag', - 'attachment-tag'], - 'type': 'object'}, - 'MachineStorageIds': {'additionalProperties': False, - 'properties': {'ids': {'items': {'$ref': '#/definitions/MachineStorageId'}, - 'type': 'array'}}, - 'required': ['ids'], - 'type': 'object'}, - 'MachineStorageIdsWatchResult': {'additionalProperties': False, - 'properties': {'changes': {'items': {'$ref': '#/definitions/MachineStorageId'}, - 'type': 'array'}, - 'error': {'$ref': '#/definitions/Error'}, - 'watcher-id': {'type': 'string'}}, - 'required': ['watcher-id', - 'changes'], - 'type': 'object'}, - 'MachineStorageIdsWatchResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/MachineStorageIdsWatchResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'NotifyWatchResult': {'additionalProperties': False, - 'properties': {'NotifyWatcherId': {'type': 'string'}, - 'error': {'$ref': '#/definitions/Error'}}, - 'required': ['NotifyWatcherId'], - 'type': 'object'}, - 'NotifyWatchResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/NotifyWatchResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'SetStatus': {'additionalProperties': False, - 'properties': {'entities': {'items': {'$ref': '#/definitions/EntityStatusArgs'}, - 'type': 'array'}}, - 'required': ['entities'], - 'type': 'object'}, - 'StringResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'type': 'string'}}, - 'required': ['result'], - 'type': 'object'}, - 'StringResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StringResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'StringsWatchResult': {'additionalProperties': False, - 'properties': {'changes': {'items': {'type': 'string'}, - 'type': 'array'}, - 'error': {'$ref': '#/definitions/Error'}, - 'watcher-id': {'type': 'string'}}, - 'required': ['watcher-id'], - 'type': 'object'}, - 'StringsWatchResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/StringsWatchResult'}, - 'type': 'array'}}, - 'required': ['results'], - 'type': 'object'}, - 'Volume': {'additionalProperties': False, - 'properties': {'info': {'$ref': '#/definitions/VolumeInfo'}, - 'volume-tag': {'type': 'string'}}, - 'required': ['volume-tag', 'info'], - 'type': 'object'}, - 'VolumeAttachment': {'additionalProperties': False, - 'properties': {'info': {'$ref': '#/definitions/VolumeAttachmentInfo'}, - 'machine-tag': {'type': 'string'}, - 'volume-tag': {'type': 'string'}}, - 'required': ['volume-tag', - 'machine-tag', - 'info'], - 'type': 'object'}, - 'VolumeAttachmentInfo': {'additionalProperties': False, - 'properties': {'bus-address': {'type': 'string'}, - 'device-link': {'type': 'string'}, - 'device-name': {'type': 'string'}, - 'read-only': {'type': 'boolean'}}, - 'type': 'object'}, - 'VolumeAttachmentParams': {'additionalProperties': False, - 'properties': {'instance-id': {'type': 'string'}, - 'machine-tag': {'type': 'string'}, - 'provider': {'type': 'string'}, - 'read-only': {'type': 'boolean'}, - 'volume-id': {'type': 'string'}, - 'volume-tag': {'type': 'string'}}, - 'required': ['volume-tag', - 'machine-tag', - 'provider'], - 'type': 'object'}, - 'VolumeAttachmentParamsResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/VolumeAttachmentParams'}}, - 'required': ['result'], - 'type': 'object'}, - 'VolumeAttachmentParamsResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/VolumeAttachmentParamsResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'VolumeAttachmentResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/VolumeAttachment'}}, - 'required': ['result'], - 'type': 'object'}, - 'VolumeAttachmentResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/VolumeAttachmentResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'VolumeAttachments': {'additionalProperties': False, - 'properties': {'volume-attachments': {'items': {'$ref': '#/definitions/VolumeAttachment'}, - 'type': 'array'}}, - 'required': ['volume-attachments'], - 'type': 'object'}, - 'VolumeInfo': {'additionalProperties': False, - 'properties': {'hardware-id': {'type': 'string'}, - 'persistent': {'type': 'boolean'}, - 'pool': {'type': 'string'}, - 'size': {'type': 'integer'}, - 'volume-id': {'type': 'string'}, - 'wwn': {'type': 'string'}}, - 'required': ['volume-id', 'size', 'persistent'], - 'type': 'object'}, - 'VolumeParams': {'additionalProperties': False, - 'properties': {'attachment': {'$ref': '#/definitions/VolumeAttachmentParams'}, - 'attributes': {'patternProperties': {'.*': {'additionalProperties': True, - 'type': 'object'}}, - 'type': 'object'}, - 'provider': {'type': 'string'}, - 'size': {'type': 'integer'}, - 'tags': {'patternProperties': {'.*': {'type': 'string'}}, - 'type': 'object'}, - 'volume-tag': {'type': 'string'}}, - 'required': ['volume-tag', - 'size', - 'provider'], - 'type': 'object'}, - 'VolumeParamsResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/VolumeParams'}}, - 'required': ['result'], - 'type': 'object'}, - 'VolumeParamsResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/VolumeParamsResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'VolumeResult': {'additionalProperties': False, - 'properties': {'error': {'$ref': '#/definitions/Error'}, - 'result': {'$ref': '#/definitions/Volume'}}, - 'required': ['result'], - 'type': 'object'}, - 'VolumeResults': {'additionalProperties': False, - 'properties': {'results': {'items': {'$ref': '#/definitions/VolumeResult'}, - 'type': 'array'}}, - 'type': 'object'}, - 'Volumes': {'additionalProperties': False, - 'properties': {'volumes': {'items': {'$ref': '#/definitions/Volume'}, - 'type': 'array'}}, - 'required': ['volumes'], - 'type': 'object'}}, - 'properties': {'AttachmentLife': {'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, - 'Result': {'$ref': '#/definitions/LifeResults'}}, - 'type': 'object'}, - 'EnsureDead': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'FilesystemAttachmentParams': {'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, - 'Result': {'$ref': '#/definitions/FilesystemAttachmentParamsResults'}}, - 'type': 'object'}, - 'FilesystemAttachments': {'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, - 'Result': {'$ref': '#/definitions/FilesystemAttachmentResults'}}, - 'type': 'object'}, - 'FilesystemParams': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/FilesystemParamsResults'}}, - 'type': 'object'}, - 'Filesystems': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/FilesystemResults'}}, - 'type': 'object'}, - 'InstanceId': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StringResults'}}, - 'type': 'object'}, - 'Life': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/LifeResults'}}, - 'type': 'object'}, - 'Remove': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'RemoveAttachment': {'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'SetFilesystemAttachmentInfo': {'properties': {'Params': {'$ref': '#/definitions/FilesystemAttachments'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'SetFilesystemInfo': {'properties': {'Params': {'$ref': '#/definitions/Filesystems'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'SetStatus': {'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'SetVolumeAttachmentInfo': {'properties': {'Params': {'$ref': '#/definitions/VolumeAttachments'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'SetVolumeInfo': {'properties': {'Params': {'$ref': '#/definitions/Volumes'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'UpdateStatus': {'properties': {'Params': {'$ref': '#/definitions/SetStatus'}, - 'Result': {'$ref': '#/definitions/ErrorResults'}}, - 'type': 'object'}, - 'VolumeAttachmentParams': {'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, - 'Result': {'$ref': '#/definitions/VolumeAttachmentParamsResults'}}, - 'type': 'object'}, - 'VolumeAttachments': {'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, - 'Result': {'$ref': '#/definitions/VolumeAttachmentResults'}}, - 'type': 'object'}, - 'VolumeBlockDevices': {'properties': {'Params': {'$ref': '#/definitions/MachineStorageIds'}, - 'Result': {'$ref': '#/definitions/BlockDeviceResults'}}, - 'type': 'object'}, - 'VolumeParams': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/VolumeParamsResults'}}, - 'type': 'object'}, - 'Volumes': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/VolumeResults'}}, - 'type': 'object'}, - 'WatchBlockDevices': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, - 'type': 'object'}, - 'WatchFilesystemAttachments': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/MachineStorageIdsWatchResults'}}, - 'type': 'object'}, - 'WatchFilesystems': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, - 'type': 'object'}, - 'WatchMachines': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/NotifyWatchResults'}}, - 'type': 'object'}, - 'WatchVolumeAttachments': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/MachineStorageIdsWatchResults'}}, - 'type': 'object'}, - 'WatchVolumes': {'properties': {'Params': {'$ref': '#/definitions/Entities'}, - 'Result': {'$ref': '#/definitions/StringsWatchResults'}}, - 'type': 'object'}}, - 'type': 'object'} - - - @ReturnMapping(LifeResults) - async def AttachmentLife(self, ids): - ''' - ids : typing.Sequence[~MachineStorageId] - Returns -> typing.Sequence[~LifeResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='AttachmentLife', - version=3, - params=_params) - _params['ids'] = ids - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def EnsureDead(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='EnsureDead', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(FilesystemAttachmentParamsResults) - async def FilesystemAttachmentParams(self, ids): - ''' - ids : typing.Sequence[~MachineStorageId] - Returns -> typing.Sequence[~FilesystemAttachmentParamsResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='FilesystemAttachmentParams', - version=3, - params=_params) - _params['ids'] = ids - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(FilesystemAttachmentResults) - async def FilesystemAttachments(self, ids): - ''' - ids : typing.Sequence[~MachineStorageId] - Returns -> typing.Sequence[~FilesystemAttachmentResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='FilesystemAttachments', - version=3, - params=_params) - _params['ids'] = ids - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(FilesystemParamsResults) - async def FilesystemParams(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~FilesystemParamsResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='FilesystemParams', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(FilesystemResults) - async def Filesystems(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~FilesystemResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='Filesystems', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringResults) - async def InstanceId(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StringResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='InstanceId', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(LifeResults) - async def Life(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~LifeResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='Life', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def Remove(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='Remove', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def RemoveAttachment(self, ids): - ''' - ids : typing.Sequence[~MachineStorageId] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='RemoveAttachment', - version=3, - params=_params) - _params['ids'] = ids - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetFilesystemAttachmentInfo(self, filesystem_attachments): - ''' - filesystem_attachments : typing.Sequence[~FilesystemAttachment] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='SetFilesystemAttachmentInfo', - version=3, - params=_params) - _params['filesystem-attachments'] = filesystem_attachments - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetFilesystemInfo(self, filesystems): - ''' - filesystems : typing.Sequence[~Filesystem] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='SetFilesystemInfo', - version=3, - params=_params) - _params['filesystems'] = filesystems - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetStatus(self, entities): - ''' - entities : typing.Sequence[~EntityStatusArgs] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='SetStatus', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetVolumeAttachmentInfo(self, volume_attachments): - ''' - volume_attachments : typing.Sequence[~VolumeAttachment] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='SetVolumeAttachmentInfo', - version=3, - params=_params) - _params['volume-attachments'] = volume_attachments - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def SetVolumeInfo(self, volumes): - ''' - volumes : typing.Sequence[~Volume] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='SetVolumeInfo', - version=3, - params=_params) - _params['volumes'] = volumes - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(ErrorResults) - async def UpdateStatus(self, entities): - ''' - entities : typing.Sequence[~EntityStatusArgs] - Returns -> typing.Sequence[~ErrorResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='UpdateStatus', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(VolumeAttachmentParamsResults) - async def VolumeAttachmentParams(self, ids): - ''' - ids : typing.Sequence[~MachineStorageId] - Returns -> typing.Sequence[~VolumeAttachmentParamsResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='VolumeAttachmentParams', - version=3, - params=_params) - _params['ids'] = ids - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(VolumeAttachmentResults) - async def VolumeAttachments(self, ids): - ''' - ids : typing.Sequence[~MachineStorageId] - Returns -> typing.Sequence[~VolumeAttachmentResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='VolumeAttachments', - version=3, - params=_params) - _params['ids'] = ids - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(BlockDeviceResults) - async def VolumeBlockDevices(self, ids): - ''' - ids : typing.Sequence[~MachineStorageId] - Returns -> typing.Sequence[~BlockDeviceResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='VolumeBlockDevices', - version=3, - params=_params) - _params['ids'] = ids - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(VolumeParamsResults) - async def VolumeParams(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~VolumeParamsResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='VolumeParams', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(VolumeResults) - async def Volumes(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~VolumeResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='Volumes', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(NotifyWatchResults) - async def WatchBlockDevices(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~NotifyWatchResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='WatchBlockDevices', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(MachineStorageIdsWatchResults) - async def WatchFilesystemAttachments(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~MachineStorageIdsWatchResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='WatchFilesystemAttachments', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringsWatchResults) - async def WatchFilesystems(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StringsWatchResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='WatchFilesystems', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(NotifyWatchResults) - async def WatchMachines(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~NotifyWatchResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='WatchMachines', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(MachineStorageIdsWatchResults) - async def WatchVolumeAttachments(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~MachineStorageIdsWatchResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='WatchVolumeAttachments', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply - - - - @ReturnMapping(StringsWatchResults) - async def WatchVolumes(self, entities): - ''' - entities : typing.Sequence[~Entity] - Returns -> typing.Sequence[~StringsWatchResult] - ''' - # map input types to rpc msg - _params = dict() - msg = dict(type='StorageProvisioner', - request='WatchVolumes', - version=3, - params=_params) - _params['entities'] = entities - reply = await self.rpc(msg) - return reply