aboutsummaryrefslogtreecommitdiffstats
path: root/a1-policy-management/api
diff options
context:
space:
mode:
authorPatrikBuhr <patrik.buhr@est.tech>2022-11-28 09:40:36 +0100
committerPatrik Buhr <patrik.buhr@est.tech>2022-12-06 14:44:33 +0000
commitc7f757e98066775ed2fdeb67f3d31777e8430624 (patch)
tree117bb2b39183b9c59a5a7935e1057391ec90cb58 /a1-policy-management/api
parentbf5e4cd0b2b2ad91238a34c558ba888c38117376 (diff)
A1-PMS, make service id optional in PUT Policy
Improved API documentation. Fixed a bug that lead to that a policy could be connected to several services if the service_id was changed. Change-Id: I211f5db32747fc912b7ba85bfbc15ce50ee725dd Issue-ID: CCSDK-3819 Signed-off-by: PatrikBuhr <patrik.buhr@est.tech>
Diffstat (limited to 'a1-policy-management/api')
-rw-r--r--a1-policy-management/api/pms-api.json12
-rw-r--r--a1-policy-management/api/pms-api.yaml21
2 files changed, 20 insertions, 13 deletions
diff --git a/a1-policy-management/api/pms-api.json b/a1-policy-management/api/pms-api.json
index a81070f7..ce2d9aa8 100644
--- a/a1-policy-management/api/pms-api.json
+++ b/a1-policy-management/api/pms-api.json
@@ -199,8 +199,7 @@
"policy_data",
"policy_id",
"policytype_id",
- "ric_id",
- "service_id"
+ "ric_id"
],
"properties": {
"ric_id": {
@@ -214,12 +213,13 @@
"example": null
},
"transient": {
+ "default": false,
"description": "if true, the policy is deleted at RIC restart. If false, its value is maintained by this service until explicitly deleted. Default false.",
"type": "boolean",
- "example": null
+ "example": false
},
"service_id": {
- "description": "the identity of the service owning the policy",
+ "description": "the identity of the service owning the policy. This can be used to group the policies (it is possible to get all policies associated to a service). Note that the service does not need to be registerred.",
"type": "string",
"example": null
},
@@ -881,7 +881,7 @@
}},
"required": true
},
- "description": "Registering a service is needed to:<ul><li>Get callbacks.<\/li><li>Activate supervision of the service. If a service is inactive, its policies will be deleted.<\/li><\/ul>",
+ "description": "Registering a service is needed to:<ul><li>Get callbacks about available NearRT RICs.<\/li><li>Activate supervision of the service. If a service is inactive, its policies will automatically be deleted.<\/li><\/ul>Policies can be created even if the service is not registerred. This is a feature which it is optional to use.",
"operationId": "putService",
"responses": {
"200": {
@@ -1224,7 +1224,7 @@
"name": "Copyright (C) 2020-2022 Nordix Foundation. Licensed under the Apache License.",
"url": "http://www.apache.org/licenses/LICENSE-2.0"
},
- "description": "<h2>General<\/h2><p>The O-RAN Non-RT RIC Policy Management Service provides a REST API for management of A1 policies. <br/>The main tasks of the service are:<\/p><ul><li>A1 Policy creation, modification and deletion.<\/li><li>Monitoring and maintaining consistency of the SMO view of A1 policies and the Near-RT RICs<\/li><li>Maintaining a view of supported Near-RT RIC policy types<\/li><li>Supervision of using services (R-APPs). When a service is unavailable, its policies are removed.<\/li><\/ul><h2>APIs provided by the service<\/h2><h3>A1 Policy Management<\/h3><p>This is an API for management of A1 Policies.<\/p><ul><li>A1 Policy retrieval, creation, modification and deletion.<\/li><li>Retrieval of supported A1 Policy types for a Near-RT RIC<\/li><li>Retrieval of status for existing A1 policies<\/li><\/ul><h3>Management of configuration<\/h3><p>API for updating and retrieval of the component configuration. Note that there other ways to maintain the configuration.<\/p><h3>Callbacks<\/h3><p>These are endpoints that are invoked by this service. The callbacks are registered in this service at service registration.<\/p><h3>NearRT-RIC Repository<\/h3><p>This is an API that provides support for looking up a NearRT-RIC. Each A1 policy is targeted for one Near-RT RIC.<\/p><h3>Health Check<\/h3><p>API used for supervision of the PMS component.<\/p><h3>Service Registry and Supervision<\/h3><p>API used for registering services that uses PMS. Each A1 policy is owned by a service. PMS can supervise each registered service and will automatically remove policies for unavailable services.<\/p>",
+ "description": "<h2>General<\/h2><p>The O-RAN Non-RT RIC Policy Management Service provides a REST API for management of A1 policies. <br/>The main tasks of the service are:<\/p><ul><li>A1 Policy creation, modification and deletion.<\/li><li>Monitoring and maintaining consistency of the SMO view of A1 policies and the Near-RT RICs<\/li><li>Maintaining a view of supported Near-RT RIC policy types<\/li><li>Supervision of using services (R-APPs). When a service is unavailable, its policies are removed.<\/li><\/ul><h2>APIs provided by the service<\/h2><h3>A1 Policy Management<\/h3><p>This is an API for management of A1 Policies.<\/p><ul><li>A1 Policy retrieval, creation, modification and deletion.<\/li><li>Retrieval of supported A1 Policy types for a Near-RT RIC<\/li><li>Retrieval of status for existing A1 policies<\/li><\/ul><h3>Management of configuration<\/h3><p>API for updating and retrieval of the component configuration. Note that there other ways to maintain the configuration.<\/p><h3>Callbacks<\/h3><p>These are endpoints that are invoked by this service. The callbacks are registered in this service at service registration.<\/p><h3>NearRT-RIC Repository<\/h3><p>This is an API that provides support for looking up a NearRT-RIC. Each A1 policy is targeted for one Near-RT RIC.<\/p><h3>Health Check<\/h3><p>API used for supervision of the PMS component.<\/p><h3>Service Registry and Supervision<\/h3><p>API used for registering services that uses PMS. Each A1 policy is optionally owned by a service. PMS can supervise each registered service by a heart-beat supervision and will automatically remove policies for unavailable services. Note that a service does not need to be registered in order to create A1 Policies. This is a feature that is optional to use.<\/p>",
"title": "A1 Policy Management Service",
"version": "1.1.0"
},
diff --git a/a1-policy-management/api/pms-api.yaml b/a1-policy-management/api/pms-api.yaml
index 1f84399e..6d620c23 100644
--- a/a1-policy-management/api/pms-api.yaml
+++ b/a1-policy-management/api/pms-api.yaml
@@ -18,8 +18,10 @@ info:
provides support for looking up a NearRT-RIC. Each A1 policy is targeted for one
Near-RT RIC.</p><h3>Health Check</h3><p>API used for supervision of the PMS component.</p><h3>Service
Registry and Supervision</h3><p>API used for registering services that uses PMS.
- Each A1 policy is owned by a service. PMS can supervise each registered service
- and will automatically remove policies for unavailable services.</p>
+ Each A1 policy is optionally owned by a service. PMS can supervise each registered
+ service by a heart-beat supervision and will automatically remove policies for
+ unavailable services. Note that a service does not need to be registered in order
+ to create A1 Policies. This is a feature that is optional to use.</p>
license:
name: Copyright (C) 2020-2022 Nordix Foundation. Licensed under the Apache License.
url: http://www.apache.org/licenses/LICENSE-2.0
@@ -539,9 +541,11 @@ paths:
tags:
- Service Registry and Supervision
summary: Register a service
- description: Registering a service is needed to:<ul><li>Get callbacks.</li><li>Activate
- supervision of the service. If a service is inactive, its policies will be
- deleted.</li></ul>
+ description: Registering a service is needed to:<ul><li>Get callbacks about
+ available NearRT RICs.</li><li>Activate supervision of the service. If a service
+ is inactive, its policies will automatically be deleted.</li></ul>Policies
+ can be created even if the service is not registerred. This is a feature which
+ it is optional to use.
operationId: putService
requestBody:
content:
@@ -977,7 +981,6 @@ components:
- policy_id
- policytype_id
- ric_id
- - service_id
type: object
properties:
ric_id:
@@ -991,9 +994,13 @@ components:
description: if true, the policy is deleted at RIC restart. If false, its
value is maintained by this service until explicitly deleted. Default
false.
+ example: false
+ default: false
service_id:
type: string
- description: the identity of the service owning the policy
+ description: the identity of the service owning the policy. This can be
+ used to group the policies (it is possible to get all policies associated
+ to a service). Note that the service does not need to be registerred.
policy_data:
type: object
description: the configuration of the policy