+ capabilities = api_ims_inventory_v1.model(
+ "DeploymentManagerCapabilities", {
+ 'OS': fields.String(
+ example='low_latency',
+ description='Show the OS capablities of ' +
+ 'the Deployment Manager'),
+ })
+
+ capacity = api_ims_inventory_v1.model(
+ "DeploymentManagerCapacity", {
+ 'OS': fields.String(
+ example='low_latency',
+ description='Show the OS capacity of ' +
+ 'the Deployment Manager'),
+ })
+
+ deployment_manager_list = api_ims_inventory_v1.model(
+ "DeploymentManagerListDto",
+ {
+ 'deploymentManagerId': fields.String(
+ required=True,
+ example='c765516a-a84e-30c9-b954-9c3031bf71c8',
+ description='Identifier for the Deployment Manager.'),
+ 'name': fields.String(
+ example='95b818b8-b315-4d9f-af37-b82c492101f1.kubernetes',
+ description='Human readable name of the deployment manager.'),
+ 'description': fields.String(
+ example='A DMS',
+ description='Human readable description of the deployment ' +
+ 'manager.'),
+ 'oCloudId': fields.String(
+ example='f078a1d3-56df-46c2-88a2-dd659aa3f6bd',
+ description='Identifier for the containing O-Cloud.'),
+ 'serviceUri': fields.String(
+ attribute='serviceUri',
+ example='https://128.224.115.51:6443',
+ description='The fully qualified URI to a Deployment ' +
+ 'Management server for O2dms.'),
+ # Comment for the future implementation
+ # 'deploymentManagementServiceEndpoint': fields.String(
+ # attribute='serviceUri'),
+ 'supportedLocations': fields.String,
+ 'capabilities': fields.Nested(capabilities, True, True),
+ 'capacity': fields.Nested(capacity, True, True),
+ 'profileSupportList': fields.List(
+ fields.String,
+ example=['native_k8sapi'],
+ description='Profile support list, use default for the ' +
+ 'return endpoint'),
+ 'extensions': fields.String(
+ example='',
+ description='List of metadata key-value pairs used to ' +
+ 'associate meaningful metadata to the related Deployment ' +
+ 'Manager'),
+ },
+ mask='{deploymentManagerId,name,description,oCloudId,serviceUri,' +
+ 'supportedLocations,capabilities,capacity,profileSupportList}'
+ )
+
+ profile = api_ims_inventory_v1.model("DeploymentManagerGetDtoProfile", {
+ 'cluster_api_endpoint': fields.String(
+ attribute='cluster_api_endpoint',
+ example='https://128.224.115.51:6443',
+ description='Kubernetes Cluster API Endpoint'),
+ 'cluster_ca_cert': fields.String(
+ attribute='cluster_ca_cert',
+ example='LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUZEakNDQX.....',
+ description='Kubernetes Cluster CA cert'),
+ 'admin_user': fields.String(
+ attribute='admin_user',
+ example='kubernetes-admin',
+ description='Kubernetes Admin username'),
+ 'admin_client_cert': fields.String(
+ attribute='admin_client_cert',
+ example='LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUVJRENDQW.....',
+ description='Kubernetes Admin client cert'),
+ 'admin_client_key': fields.String(
+ attribute='admin_client_key',
+ example='LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcE.....',
+ description='Kubernetes Admin client key'),
+ # 'kube_config_file': fields.String(attribute='kube_config_file')
+ 'helmcli_host_with_port': fields.String(
+ attribute='helmcli_host_with_port',
+ example='128.224.115.34:30022',
+ description='Helm CLI Host address with SSH port'),
+ 'helmcli_username': fields.String(
+ attribute='helmcli_username',
+ example='helm',
+ description='Helm CLI SSH login username'),
+ 'helmcli_password': fields.String(
+ attribute='helmcli_password',
+ example='password',
+ description='Helm CLI SSH login password'),
+ 'helmcli_kubeconfig': fields.String(
+ attribute='helmcli_kubeconfig',
+ example='/share/kubeconfig_c765516a.config',
+ description='Helm CLI KUBECONFIG path'),
+ })
+
+ extensions = api_ims_inventory_v1.model("DeploymentManagerExtensions", {
+ 'profileName': fields.String(
+ example='',
+ description=''),
+ 'profileData': fields.Nested(profile, False, True),
+ })
+
+ deployment_manager_get = api_ims_inventory_v1.model(