From 0852c95319c6fc5caf00619864acf68bc6f9d669 Mon Sep 17 00:00:00 2001 From: Mubeena Ishaq Date: Fri, 21 Oct 2022 04:10:10 -0700 Subject: [PATCH 01/27] update API versions in SOL003 --- src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml | 6 +++--- src/SOL003/VNFIndicator/VNFIndicator.yaml | 6 +++--- .../VNFLifecycleManagement/VNFLifecycleManagement.yaml | 6 +++--- .../VNFLifecycleOperationGranting.yaml | 6 +++--- src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml | 6 +++--- .../VNFPerformanceManagement/VNFPerformanceManagement.yaml | 6 +++--- .../VNFSnapshotPackageManagement.yaml | 6 +++--- .../VirtualisedResourcesQuotaAvailableNotification.yaml | 6 +++--- 8 files changed, 24 insertions(+), 24 deletions(-) diff --git a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml index 1df854ad..9b59804c 100644 --- a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "1.4.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "1.5.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf servers: - url: http://127.0.0.1/vnffm/v1 diff --git a/src/SOL003/VNFIndicator/VNFIndicator.yaml b/src/SOL003/VNFIndicator/VNFIndicator.yaml index 8e4846ba..48a0bfa1 100644 --- a/src/SOL003/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL003/VNFIndicator/VNFIndicator.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "1.3.1-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "1.4.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf servers: - url: http://127.0.0.1/vnfind/v1 diff --git a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 84f19fa9..b399e69d 100644 --- a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf servers: - url: http://127.0.0.1/vnflcm/v2 diff --git a/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml b/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml index 1e170b37..0e182b3b 100644 --- a/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml +++ b/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "1.6.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "1.7.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf servers: - url: http://127.0.0.1/grant/v1 diff --git a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml index 32d61a14..6c4512fd 100644 --- a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml +++ b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "2.4.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf servers: - url: http://127.0.0.1/vnfpkgm/v2 diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 1536c79d..30485f18 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf servers: - url: http://127.0.0.1/vnfpm/v2 diff --git a/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml b/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml index 46f7b457..5c9ca347 100644 --- a/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml +++ b/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf servers: - url: http://127.0.0.1/vnfsnapshotpkgm/v1 diff --git a/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml b/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml index 42d907a0..a1b11958 100644 --- a/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml +++ b/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "1.2.1-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "1.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf servers: - url: http://127.0.0.1/vrqan/v1 -- GitLab From 63ef453e30f918d4b702c303011ad82bfc6134c8 Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Mon, 24 Oct 2022 11:13:25 +0500 Subject: [PATCH 02/27] update API versions in SOL002 --- src/SOL002/APIVersion/APIVersion.yaml | 4 ++-- src/SOL002/VNFConfiguration/VNFConfiguration.yaml | 6 +++--- src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml | 6 +++--- .../VNFFaultManagementNotification.yaml | 6 +++--- src/SOL002/VNFIndicator/VNFIndicator.yaml | 6 +++--- .../VNFIndicatorNotification/VNFIndicatorNotification.yaml | 6 +++--- .../VNFLifecycleCoordination/VNFLifecycleCoordination.yaml | 6 +++--- .../VNFLifecycleManagement/VNFLifecycleManagement.yaml | 6 +++--- .../VNFLifecycleManagementNotification.yaml | 6 +++--- .../VNFPerformanceManagement/VNFPerformanceManagement.yaml | 6 +++--- .../VNFPerformanceManagementNotification.yaml | 6 +++--- 11 files changed, 32 insertions(+), 32 deletions(-) diff --git a/src/SOL002/APIVersion/APIVersion.yaml b/src/SOL002/APIVersion/APIVersion.yaml index c481b196..7db5c25e 100644 --- a/src/SOL002/APIVersion/APIVersion.yaml +++ b/src/SOL002/APIVersion/APIVersion.yaml @@ -19,8 +19,8 @@ info: version: 1.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.06.01_60/gs_NFV-SOL002v030601p.pdf + description: ETSI GS NFV-SOL 002 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.07.01_60/gs_NFV-SOL002v030701p.pdf paths: /vnfconfig/api_versions: diff --git a/src/SOL002/VNFConfiguration/VNFConfiguration.yaml b/src/SOL002/VNFConfiguration/VNFConfiguration.yaml index 1ae7e870..e019de71 100644 --- a/src/SOL002/VNFConfiguration/VNFConfiguration.yaml +++ b/src/SOL002/VNFConfiguration/VNFConfiguration.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.06.01_60/gs_NFV-SOL002v030601p.pdf + description: ETSI GS NFV-SOL 002 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.07.01_60/gs_NFV-SOL002v030701p.pdf servers: - url: http://127.0.0.1/vnfconfig/v1 diff --git a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml index 2a5e496e..0259eb2f 100644 --- a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.4.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.5.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.06.01_60/gs_NFV-SOL002v030601p.pdf + description: ETSI GS NFV-SOL 002 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.07.01_60/gs_NFV-SOL002v030701p.pdf servers: - url: http://127.0.0.1/vnffm/v1 diff --git a/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml b/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml index 60d9631e..25b4bc83 100644 --- a/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml +++ b/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.4.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.5.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.06.01_60/gs_NFV-SOL002v030601p.pdf + description: ETSI GS NFV-SOL 002 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.07.01_60/gs_NFV-SOL002v030701p.pdf servers: - url: http://127.0.0.1/callback/v1 diff --git a/src/SOL002/VNFIndicator/VNFIndicator.yaml b/src/SOL002/VNFIndicator/VNFIndicator.yaml index 2fbcd440..6e793182 100644 --- a/src/SOL002/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL002/VNFIndicator/VNFIndicator.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.3.1-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.4.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.06.01_60/gs_NFV-SOL002v030601p.pdf + description: ETSI GS NFV-SOL 002 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.07.01_60/gs_NFV-SOL002v030701p.pdf servers: - url: http://127.0.0.1/vnfind/v1 diff --git a/src/SOL002/VNFIndicatorNotification/VNFIndicatorNotification.yaml b/src/SOL002/VNFIndicatorNotification/VNFIndicatorNotification.yaml index be7145b9..e3efb828 100644 --- a/src/SOL002/VNFIndicatorNotification/VNFIndicatorNotification.yaml +++ b/src/SOL002/VNFIndicatorNotification/VNFIndicatorNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.3.1-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.4.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.06.01_60/gs_NFV-SOL002v030601p.pdf + description: ETSI GS NFV-SOL 002 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.07.01_60/gs_NFV-SOL002v030701p.pdf servers: - url: http://127.0.0.1/callback/v1 diff --git a/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml b/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml index 01690249..c3c39e95 100644 --- a/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml +++ b/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.06.01_60/gs_NFV-SOL002v030601p.pdf + description: ETSI GS NFV-SOL 002 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.07.01_60/gs_NFV-SOL002v030701p.pdf servers: - url: http://127.0.0.1/lcmcoord/v1 diff --git a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml index dcff6e40..73c7a2cd 100644 --- a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.06.01_60/gs_NFV-SOL002v030601p.pdf + description: ETSI GS NFV-SOL 002 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.07.01_60/gs_NFV-SOL002v030701p.pdf servers: - url: http://127.0.0.1/vnflcm/v2 diff --git a/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml b/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml index a3a49f41..044918cd 100644 --- a/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml +++ b/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.06.01_60/gs_NFV-SOL002v030601p.pdf + description: ETSI GS NFV-SOL 002 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.07.01_60/gs_NFV-SOL002v030701p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml index e72a10cc..f37c4272 100644 --- a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.06.01_60/gs_NFV-SOL002v030601p.pdf + description: ETSI GS NFV-SOL 002 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.07.01_60/gs_NFV-SOL002v030701p.pdf servers: - url: http://127.0.0.1/vnfpm/v2 diff --git a/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml b/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml index 8c90b809..b7795f46 100644 --- a/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml +++ b/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 002 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.06.01_60/gs_NFV-SOL002v030601p.pdf + description: ETSI GS NFV-SOL 002 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/002/03.07.01_60/gs_NFV-SOL002v030701p.pdf servers: - url: http://127.0.0.1/callback/v2 -- GitLab From 34dfc68372ebd2365faf3dd55c19dff6f117ffea Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Mon, 24 Oct 2022 15:03:37 +0500 Subject: [PATCH 03/27] add HTTP conditional requests for SOL002 --- .../VNFConfiguration/VNFConfiguration.yaml | 34 ++++++++++ .../VNFFaultManagement.yaml | 32 +++++++++ .../VNFLifecycleManagement.yaml | 18 +++++ .../VNFPerformanceManagement.yaml | 66 +++++++++++++++++++ src/components/SOL002_params.yaml | 28 +++++++- 5 files changed, 177 insertions(+), 1 deletion(-) diff --git a/src/SOL002/VNFConfiguration/VNFConfiguration.yaml b/src/SOL002/VNFConfiguration/VNFConfiguration.yaml index e019de71..5b8339dc 100644 --- a/src/SOL002/VNFConfiguration/VNFConfiguration.yaml +++ b/src/SOL002/VNFConfiguration/VNFConfiguration.yaml @@ -67,6 +67,9 @@ paths: patch: description: | This method sets or modifies a configuration resource. See clause 9.4.2.3.4. + parameters: + - $ref: ../../components/SOL002_params.yaml#/components/parameters/If-Unmodified-Since + - $ref: ../../components/SOL002_params.yaml#/components/parameters/If-Match requestBody: $ref: '#/components/requestBodies/ConfigurationRequest' responses: @@ -137,6 +140,22 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time + content: application/json: schema: @@ -160,6 +179,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: diff --git a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml index 0259eb2f..1e50b3d6 100644 --- a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml @@ -115,6 +115,8 @@ paths: parameters: - $ref: ../../components/SOL002_params.yaml#/components/parameters/Accept - $ref: ../../components/SOL002_params.yaml#/components/parameters/ContentType + - $ref: ../../components/SOL002_params.yaml#/components/parameters/If-Unmodified-Since + - $ref: ../../components/SOL002_params.yaml#/components/parameters/If-Match requestBody: $ref: '#/components/requestBodies/IndividualAlarmRequest' responses: @@ -492,6 +494,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: @@ -523,6 +540,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: diff --git a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 73c7a2cd..6784afb1 100644 --- a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -182,6 +182,9 @@ paths: patch: description: | This method modifies an "Individual VNF instance" resource. See clause 5.4.3.3.4. + parameters: + - $ref: ../../components/SOL002_params.yaml#/components/parameters/If-Unmodified-Since + - $ref: ../../components/SOL002_params.yaml#/components/parameters/If-Match requestBody: $ref: '#/components/requestBodies/VnfInstanceModificationRequest' responses: @@ -1588,6 +1591,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: diff --git a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml index f37c4272..46ddb1fd 100644 --- a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -182,6 +182,9 @@ paths: patch: description: | This method allows to modify an "individual PM job" resource. See clause 6.4.3.3.4. + parameters: + - $ref: ../../components/SOL002_params.yaml#/components/parameters/If-Unmodified-Since + - $ref: ../../components/SOL002_params.yaml#/components/parameters/If-Match requestBody: $ref: '#/components/requestBodies/PmJobModificationRequest' responses: @@ -404,6 +407,9 @@ paths: patch: description: | This method allows to modify an "Individual threshold" resource. See clause 6.4.6.3.4. + parameters: + - $ref: ../../components/SOL002_params.yaml#/components/parameters/If-Unmodified-Since + - $ref: ../../components/SOL002_params.yaml#/components/parameters/If-Match requestBody: $ref: '#/components/requestBodies/ThresholdModificationRequest' responses: @@ -666,6 +672,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: @@ -724,6 +745,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: @@ -870,6 +906,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: @@ -922,6 +973,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: diff --git a/src/components/SOL002_params.yaml b/src/components/SOL002_params.yaml index ba54fb11..87211b4b 100644 --- a/src/components/SOL002_params.yaml +++ b/src/components/SOL002_params.yaml @@ -75,4 +75,30 @@ components: in: query required: false schema: - type: string \ No newline at end of file + type: string + + If-Unmodified-Since: + name: If-Unmodified-Since + description: > + Used to make the request method conditional on the selected resource representation's last modification date being + earlier than or equal to the date provided in the field-value. If the condition is not met, the request fails with a + "412 Precondition Failed" response. + required: false + in: header + schema: + type: string + format: date-time + + If-Match: + name: If-Match + description: > + Used to make the request method conditional on the recipient origin server either having at least one current representation + of the target resource, when the field-value is "*", or having a current representation of the target resource that has an + entity-tag matching a member of the list of entity-tags provided in the field-value. If the condition is not met, the request + fails with a "412 Precondition Failed" response. + required: false + in: header + schema: + type: string + + -- GitLab From 4125b462b69f86de694114aac60677d0fb3e65ce Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Tue, 25 Oct 2022 11:29:07 +0500 Subject: [PATCH 04/27] update SOL002VNFLifecycleManagement --- .../VNFLifecycleManagement.yaml | 140 +++++++++++++++++- .../SOL002VNFLifecycleManagement_def.yaml | 43 +++--- ...OL002SOL003VNFLifecycleManagement_def.yaml | 9 +- 3 files changed, 157 insertions(+), 35 deletions(-) diff --git a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 6784afb1..7c74c906 100644 --- a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -100,7 +100,7 @@ paths: "416": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/416 "422": - $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/422 + $ref: '#/components/responses/VnfInstances.Post.422' "429": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/429 "500": @@ -790,6 +790,8 @@ paths: The POST method initiates cancelling an ongoing VNF lifecycle operation while it is being executed or rolled back, i.e. the related "Individual VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state. See clause 5.4.17.3.1. + requestBody: + $ref: '#/components/requestBodies/VnfInstanceCancelModeRequest' responses: "202": $ref: '#/components/responses/VnfLcmOpOccCancel.Post.202' @@ -884,7 +886,7 @@ paths: "416": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/416 "422": - $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/422 + $ref: '#/components/responses/Subscriptions.Post.442' "429": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/429 "500": @@ -993,7 +995,7 @@ paths: "416": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/416 "422": - $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/422 + $ref: '#/components/responses/VnfInstanceCreateSnapshot.Post.422' "429": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/429 "500": @@ -1452,6 +1454,15 @@ components: $ref: ./definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/ChangeCurrentVnfPkgRequest required: true + VnfInstanceCancelModeRequest: + description: | + The POST request to this resource shall include a CancelMode structure in the message content to + choose between "graceful" and "forceful" cancellation. + content: + application/json: + schema: + $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelMode + VnfLcmSubscriptionRequest: description: | Details of the subscription to be created. @@ -1565,6 +1576,45 @@ components: schema: $ref: ./definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/VnfInstance + VnfInstances.Post.422: + description: | + 422 Unprocessable Content + + Shall be returned upon the following error: The content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [6], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNF package + referenced by the "vnfdId" attribute in the "CreateVnfRequest" structure is not in the "ENABLED" state + or does not exist. In this case, the "detail" attribute in the "ProblemDetails" structure shall convey + more information about the error. + headers: + WWW-Authenticate: + description: | + Challenge if the corresponding HTTP request has not provided authorization, or error details if the + corresponding HTTP request has provided an invalid authorization token. + style: simple + explode: false + schema: + type: string + Version: + description: Version of the API used in the response. + style: simple + explode: false + schema: + type: string + Content-Type: + description: | + The MIME type of the body of the response. Reference: IETF RFC 7231 + style: simple + explode: false + schema: + type: string + content: + application/json: + schema: + $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + IndividualVnfInstance.Get.200: description: | 200 OK @@ -2565,7 +2615,7 @@ components: description: | 202 ACCEPTED The request has been accepted for processing, but processing has not been completed. The response shall - have an empty payload body. + have an empty message content. headers: Version: description: The used API version. @@ -2629,7 +2679,7 @@ components: description: | 202 ACCEPTED The request has been accepted for processing, but processing has not been completed. The response shall have - an empty payload body. + an empty message content. headers: Version: description: The used API version. @@ -2766,7 +2816,7 @@ components: description: | 202 ACCEPTED The request has been accepted for processing, but processing has not been completed. The response shall - have an empty payload body. + have an empty message content. headers: Version: description: The used API version. @@ -2896,6 +2946,45 @@ components: schema: $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription + Subscriptions.Post.442: + description: | + 422 Unprocessable Content + + Shall be returned upon the following error: The content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [6], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has tested + the Notification endpoint as described in clause 5.4.20.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information about + the error. + headers: + WWW-Authenticate: + description: | + Challenge if the corresponding HTTP request has not provided authorization, or error details if the + corresponding HTTP request has provided an invalid authorization token. + style: simple + explode: false + schema: + type: string + Version: + description: Version of the API used in the response. + style: simple + explode: false + schema: + type: string + Content-Type: + description: | + The MIME type of the body of the response. Reference: IETF RFC 7231 + style: simple + explode: false + schema: + type: string + content: + application/json: + schema: + $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + IndividualSubscription.Get.200: description: | 200 OK @@ -3028,6 +3117,45 @@ components: schema: $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + VnfInstanceCreateSnapshot.Post.422: + description: | + 422 Unprocessable Content + + Shall be returned upon the following error: The content type of the message content is supported and the + message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [6], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the provided + identifier of the target "Individual VNF snapshot" resource for the VNF snapshot is invalid. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information + about the error. + headers: + WWW-Authenticate: + description: | + Challenge if the corresponding HTTP request has not provided authorization, or error details if the + corresponding HTTP request has provided an invalid authorization token. + style: simple + explode: false + schema: + type: string + Version: + description: Version of the API used in the response. + style: simple + explode: false + schema: + type: string + Content-Type: + description: | + The MIME type of the body of the response. Reference: IETF RFC 7231 + style: simple + explode: false + schema: + type: string + content: + application/json: + schema: + $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + VnfInstanceRevertToSnapshot.Post.202: description: | 202 ACCEPTED diff --git a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml index b82ce06a..6436153c 100644 --- a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml +++ b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml @@ -94,7 +94,7 @@ definitions: The declaration of configurable properties in the VNFD can optionally contain the specification of initial values. See note 2, note 3 and note 4. The VNFM shall reject requests to write configurable properties that are not declared in the - VNFD with a "422 Unprocessable entity" error response as defined in clause 6.4 of ETSI GS NFV SOL 013. + VNFD with a "422 Unprocessable Content" error response as defined in clause 6.4 of ETSI GS NFV SOL 013. These configurable properties include the following standard attributes, which are declared in the VNFD if auto-scaling and/or auto-healing are supported by the VNF: @@ -259,7 +259,7 @@ definitions: extension in the VNFD contains information on whether its presence is optional or required, and optionally can specify an initial value. See note 2 and note 4. The VNFM shall reject requests to write extension attributes that are not declared in the VNFD with a "422 Unprocessable - entity" error response as defined in clause 6.4 of ETSI GS NFV SOL 013. + Content" error response as defined in clause 6.4 of ETSI GS NFV SOL 013. Modifying the values of these attributes has no direct effect on the VNF instance; however, the modified attribute values can be considered during subsequent VNF lifecycle management operations, @@ -407,7 +407,7 @@ definitions: description: > Additional input parameters for the instantiation process, specific to the VNF being instantiated, as declared in the VNFD as part of - "InstantiateVnfOpConfig". + "InstantiateVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > @@ -466,9 +466,8 @@ definitions: $ref: "#/definitions/ExtManagedVirtualLinkData" additionalParams: description: > - Additional input parameters for the instantiation process, specific - to the VNF being instantiated, as declared in the VNFD as part of - "InstantiateVnfOpConfig". + Additional input parameters for the flavour change process, specific to the VNF being modified, as + declared in the VNFD as part of "ChangeVnfFlavourOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > @@ -515,12 +514,10 @@ definitions: the VNFM waits for the successful taking out of service of the VNF, no matter how long it takes, before shutting down the VNF and releasing the resources. type: integer - additionalParams: description: > - Additional parameters passed by the NFVO as input to the termination - process, specific to the VNF being terminated, as declared in the - VNFD as part of "TerminateVnfOpConfig". + Additional parameters passed by the EM as input to the termination process, specific to the VNF being terminated, + as declared in the VNFD as part of "TerminateVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" HealVnfRequest: @@ -540,9 +537,8 @@ definitions: type: string additionalParams: description: > - Additional parameters passed by the NFVO as input to the healing - process, specific to the VNF being healed, as declared in the VNFD - as part of "HealVnfOpConfig". + Additional parameters passed by the EM as input to the healing process, specific to the VNF being healed as + declared in the VNFD as part of "HealVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" healScript: description: > @@ -590,9 +586,8 @@ definitions: type: integer additionalParams: description: > - Additional parameters passed by the NFVO as input to the process, - specific to the VNF of which the operation status is changed, as - declared in the VNFD as part of "OperateVnfOpConfig". + Additional parameters passed by the EM as input to the process, specific to the VNF of which the operation + status is changed, as declared in the VNFD as part of "OperateVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" ChangeExtVnfConnectivityRequest: @@ -619,9 +614,9 @@ definitions: $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ExtVirtualLinkData" additionalParams: description: > - Additional input parameters for the instantiation process, specific - to the VNF being instantiated, as declared in the VNFD as part of - "ChangeExtVnfConnectivityOpConfig". + Additional parameters passed by the EM as input to the process, specific to the VNF of which the + external connectivity is changed, as declared in the VNFD as part of "ChangeExtVnfConnectivityOpConfig" + defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" ChangeCurrentVnfPkgRequest: @@ -664,7 +659,7 @@ definitions: additionalParams: description: > Additional parameters passed by the EM as input to the process, specific to the VNF of which the underlying - VNF package is changed, as declared in the VNFD as part of "ChangeCurrentVnfPkgOpConfig". + VNF package is changed, as declared in the VNFD as part of "ChangeCurrentVnfPkgOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" extensions: descriptions: > @@ -743,7 +738,7 @@ definitions: CreateVnfSnapshotRequest: description: > - This type represents request parameters for the "Create VNF Snapshot" operation. + This type represents request parameters for the "Create VNF Snapshot" LCM operation. type: object required: - vnfSnapshotResId @@ -761,7 +756,7 @@ definitions: additionalParams: description: > Additional input parameters for the snapshot creation process, specific for the VNF being “snapshotted”, - as declared in the VNFD as part of "CreateSnapshotVnfOpConfig". + as declared in the VNFD as part of "CreateSnapshotVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" userDefinedData: description: > @@ -790,7 +785,7 @@ definitions: additionalParams: description: > Additional input parameters for the revert to VNF snapshot process, specific for the VNF being “reverted”, - as declared in the VNFD as part of “RevertToSnapshotVnfOpConfig”. + as declared in the VNFD as part of “RevertToSnapshotVnfOpConfig” defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" CreateVnfSnapshotInfoRequest: @@ -1146,7 +1141,7 @@ definitions: Identifier of another VNFC CP instance that corresponds to the parent port of a trunk that the present VNFC CP instance participates in. Shall be provided if the present CP instance participates in a trunk as subport. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" metadata: description: > Metadata about this CP. diff --git a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml b/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml index ca61957a..14d81cff 100644 --- a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml +++ b/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml @@ -60,7 +60,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the scaling process, specific to the VNF being scaled, as declared in the VNFD - as part of "ScaleVnfOpConfig". + as part of "ScaleVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" ScaleVnfToLevelRequest: @@ -97,7 +97,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the scaling process, specific to the VNF being scaled, as declared in the - VNFD as part of "ScaleVnfToLevelOpConfig". + VNFD as part of "ScaleVnfToLevelOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" VnfInfoModificationRequest: @@ -923,8 +923,7 @@ definitions: $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" vduId: description: > - Reference to the applicable VDU information element in - the VNFD. + Reference to the applicable VDU in the VNFD. $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" vnfcResourceInfoId: description: > @@ -1088,7 +1087,7 @@ definitions: properties: cpInstanceId: description: > - Identifier of this VIP CP instance and of this VipCpInfo information element. + Identifier of this VIP CP instance and of this VipCpInfo. $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" cpdId: description: > -- GitLab From 5a6b3c0904e44272850204548e9155108bf9003c Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Tue, 25 Oct 2022 12:54:13 +0500 Subject: [PATCH 05/27] update SOL002VNFPerformanceManagement --- .../VNFPerformanceManagement.yaml | 167 +++++++++++++++++- 1 file changed, 162 insertions(+), 5 deletions(-) diff --git a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 46ddb1fd..a53c9c35 100644 --- a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -100,7 +100,7 @@ paths: "416": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/416 "422": - $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/422 + $ref: '#/components/responses/PmJobs.Post.422' "429": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/429 "500": @@ -209,7 +209,7 @@ paths: "416": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/416 "422": - $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/422 + $ref: '#/components/responses/IndividualPmJob.Patch.422' "429": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/429 "500": @@ -323,7 +323,7 @@ paths: "416": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/416 "422": - $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/422 + $ref: '#/components/responses/Thresholds.Post.422' "429": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/429 "500": @@ -434,7 +434,7 @@ paths: "416": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/416 "422": - $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/422 + $ref: '#/components/responses/IndividualThreshold.Patch.422' "429": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/429 "500": @@ -646,6 +646,45 @@ components: schema: $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJob + PmJobs.Post.422: + description: | + 422 Unprocessable Content + + Shall be returned upon the following error: The content type of the message content is supported and the + message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [6], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has + tested the Notification endpoint as described in clause 6.4.9.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information + about the error. + headers: + WWW-Authenticate: + description: | + Challenge if the corresponding HTTP request has not provided authorization, or error details if the + corresponding HTTP request has provided an invalid authorization token. + style: simple + explode: false + schema: + type: string + Version: + description: Version of the API used in the response. + style: simple + explode: false + schema: + type: string + Content-Type: + description: | + The MIME type of the body of the response. Reference: IETF RFC 7231 + style: simple + explode: false + schema: + type: string + content: + application/json: + schema: + $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + IndividualPmJob.Get.200: description: | 200 OK @@ -765,6 +804,45 @@ components: schema: $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJobModifications + IndividualPmJob.Patch.422: + description: | + 422 Unprocessable Content + + Shall be returned upon the following error: The content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [6], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has + tested the Notification endpoint as described in clause 6.4.9.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information + about the error. + headers: + WWW-Authenticate: + description: | + Challenge if the corresponding HTTP request has not provided authorization, or error details if the + corresponding HTTP request has provided an invalid authorization token. + style: simple + explode: false + schema: + type: string + Version: + description: Version of the API used in the response. + style: simple + explode: false + schema: + type: string + Content-Type: + description: | + The MIME type of the body of the response. Reference: IETF RFC 7231 + style: simple + explode: false + schema: + type: string + content: + application/json: + schema: + $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + IndividualPmJobReport.Get.200: description: | 200 OK @@ -880,6 +958,46 @@ components: schema: $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/Threshold + Thresholds.Post.422: + description: | + 422 Unprocessable Content + + Shall be returned upon the following error: The content type of the message content is supported and the + message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [6], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has + tested the Notification endpoint as described in clause 6.4.9.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information about + the error. + headers: + WWW-Authenticate: + description: | + Challenge if the corresponding HTTP request has not provided authorization, or error details if the + corresponding HTTP request has provided an invalid authorization token. + style: simple + explode: false + schema: + type: string + Version: + description: Version of the API used in the response. + style: simple + explode: false + schema: + type: string + Content-Type: + description: | + The MIME type of the body of the response. Reference: IETF RFC 7231 + style: simple + explode: false + schema: + type: string + content: + application/json: + schema: + $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + + IndividualThreshold.Get.200: description: | 200 OK @@ -991,4 +1109,43 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/ThresholdModifications \ No newline at end of file + $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/ThresholdModifications + + IndividualThreshold.Patch.422: + description: | + 422 Unprocessable Content + + Shall be returned upon the following error: The content type of the message content is supported + and the message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [6], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has + tested the Notification endpoint as described in clause 6.4.9.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information + about the error. + headers: + WWW-Authenticate: + description: | + Challenge if the corresponding HTTP request has not provided authorization, or error details if the + corresponding HTTP request has provided an invalid authorization token. + style: simple + explode: false + schema: + type: string + Version: + description: Version of the API used in the response. + style: simple + explode: false + schema: + type: string + Content-Type: + description: | + The MIME type of the body of the response. Reference: IETF RFC 7231 + style: simple + explode: false + schema: + type: string + content: + application/json: + schema: + $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" -- GitLab From a5c9a6b9e76cd6c06281f7de5ceb9e2a279f4b23 Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Tue, 25 Oct 2022 14:29:22 +0500 Subject: [PATCH 06/27] fix Location header in responses --- src/SOL003/VNFIndicator/VNFIndicator.yaml | 8 ------- .../VNFLifecycleManagement.yaml | 16 -------------- .../VNFLifecycleOperationGranting.yaml | 8 ------- .../VNFPerformanceManagement.yaml | 21 ------------------- 4 files changed, 53 deletions(-) diff --git a/src/SOL003/VNFIndicator/VNFIndicator.yaml b/src/SOL003/VNFIndicator/VNFIndicator.yaml index 48a0bfa1..b47f9edc 100644 --- a/src/SOL003/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL003/VNFIndicator/VNFIndicator.yaml @@ -623,14 +623,6 @@ components: for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause 5.4.2.3 of ETSI GS NFV-SOL 013. headers: - Location: - description: | - The resource URI of the created subscription resource. - style: simple - explode: false - schema: - type: string - format: url WWW-Authenticate: description: | Challenge if the corresponding HTTP request has not provided authorization, or error details if the diff --git a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml index b399e69d..d2f0a431 100644 --- a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -1622,14 +1622,6 @@ components: attribute in the "ProblemDetails" structure shall convey more information about the erro headers: - Location: - description: | - The resource URI of the created subscription resource. - style: simple - explode: false - schema: - type: string - format: url WWW-Authenticate: description: | Challenge if the corresponding HTTP request has not provided authorization, or error details if the @@ -3486,14 +3478,6 @@ components: "ProblemDetails" structure shall convey more information about the error headers: - Location: - description: | - The resource URI of the created subscription resource. - style: simple - explode: false - schema: - type: string - format: url WWW-Authenticate: description: | Challenge if the corresponding HTTP request has not provided authorization, or error details if the diff --git a/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml b/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml index 0e182b3b..3b038c32 100644 --- a/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml +++ b/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml @@ -219,14 +219,6 @@ components: response to provide more details about the rejection in the "details" attribute. headers: - Location: - description: | - The resource URI of the created subscription resource. - style: simple - explode: false - schema: - type: string - format: url WWW-Authenticate: description: | Challenge if the corresponding HTTP request has not provided authorization, or error details if the diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 30485f18..22a2e52d 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -563,13 +563,6 @@ components: In this case, the "detail" attribute in the "ProblemDetails" structure sh headers: - Location: - description: The resource URI of the created PM Job - style: simple - explode: false - schema: - type: string - format: url WWW-Authenticate: description: | Challenge if the corresponding HTTP request has not provided authorization, or error details if the @@ -906,13 +899,6 @@ components: "ProblemDetails" structure shall convey more information about the error headers: - Location: - description: TThe resource URI of the created VNF instance - style: simple - explode: false - schema: - type: string - format: url Content-Type: description: | The MIME type of the body of the response. Reference: IETF RFC 7231 @@ -952,13 +938,6 @@ components: for this resource, inclusion of the Link HTTP header in this response shall follow the provisions in clause 5.4.2.3 of ETSI GS NFV-SOL 013. headers: - Location: - description: The resource URI of the created VNF instance - style: simple - explode: false - schema: - type: string - format: url Content-Type: description: | The MIME type of the body of the response. Reference: IETF RFC 7231 -- GitLab From ae4624140f4aabf1ba620c3d18c50923faf828a7 Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Tue, 25 Oct 2022 14:59:07 +0500 Subject: [PATCH 07/27] update SOL002VNFFaultManagement --- .../VNFFaultManagement.yaml | 41 ++++++++++++++++++- .../SOL002VNFFaultManagement_def.yaml | 2 +- 2 files changed, 41 insertions(+), 2 deletions(-) diff --git a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml index 1e50b3d6..c8fd402d 100644 --- a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml @@ -259,7 +259,7 @@ paths: "416": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/416 "422": - $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/422 + $ref: '#/components/responses/Subscriptions.Post.422' "429": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/429 "500": @@ -699,6 +699,45 @@ components: schema: $ref: ../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/FmSubscription + Subscriptions.Post.422: + description: | + 422 Unprocessable Content + + Shall be returned upon the following error: The content type of the message content is supported + and the message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [6], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has tested + the Notification endpoint as described in clause 7.4.7.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information + about the error. + headers: + WWW-Authenticate: + description: | + Challenge if the corresponding HTTP request has not provided authorization, or error details if the + corresponding HTTP request has provided an invalid authorization token. + style: simple + explode: false + schema: + type: string + Version: + description: Version of the API used in the response. + style: simple + explode: false + schema: + type: string + Content-Type: + description: | + The MIME type of the body of the response. Reference: IETF RFC 7231 + style: simple + explode: false + schema: + type: string + content: + application/json: + schema: + $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + IndividualSubscription.Get.200: description: | 200 OK diff --git a/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml b/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml index 89777e08..a6f77a16 100644 --- a/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml +++ b/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml @@ -43,7 +43,7 @@ definitions: properties: id: description: > - Identifier of this Alarm information element. + Identifier of this Alarm. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" managedObjectId: description: > -- GitLab From 51a2622cce3a9f788df6b2bfee0d7917f35a0b8a Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Tue, 25 Oct 2022 15:30:34 +0500 Subject: [PATCH 08/27] update SOL002VNFIndicator --- src/SOL002/VNFIndicator/VNFIndicator.yaml | 47 +++++++++++++++++++++-- 1 file changed, 43 insertions(+), 4 deletions(-) diff --git a/src/SOL002/VNFIndicator/VNFIndicator.yaml b/src/SOL002/VNFIndicator/VNFIndicator.yaml index 6e793182..4bf1cefe 100644 --- a/src/SOL002/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL002/VNFIndicator/VNFIndicator.yaml @@ -211,7 +211,7 @@ paths: "416": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/416 "422": - $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/422 + $ref: '#/components/responses/VnfIndicatorSubscription.Post.422' "429": $ref: ../../responses/SOL002SOL003_resp.yaml#/components/responses/429 "500": @@ -365,9 +365,9 @@ components: in: path description: | Identifier of this subscription. NOTE: - This identifier can be retrieved from the resource referenced by the "Location" HTTP header - in the response to a POST request creating a new subscription resource. It can also be retrieved - from the "id" attribute in the payload body of that response. + This identifier can be retrieved from the resource referenced by the "Location" HTTP header + in the response to a POST request creating a new subscription resource. It can also be retrieved + from the "id" attribute in the payload body of that response. required: true style: simple explode: false @@ -562,6 +562,45 @@ components: items: $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription + VnfIndicatorSubscription.Post.422: + description: | + 422 Unprocessable Content + + Shall be returned upon the following error: The content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [6], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has tested + the Notification endpoint as described in clause 8.4.7.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information + about the error. + headers: + WWW-Authenticate: + description: | + Challenge if the corresponding HTTP request has not provided authorization, or error details if the + corresponding HTTP request has provided an invalid authorization token. + style: simple + explode: false + schema: + type: string + Version: + description: Version of the API used in the response. + style: simple + explode: false + schema: + type: string + Content-Type: + description: | + The MIME type of the body of the response. Reference: IETF RFC 7231 + style: simple + explode: false + schema: + type: string + content: + application/json: + schema: + $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + VnfIndicatorSubscription.Get.200: description: | 200 OK -- GitLab From 96a1ff7587f1c3f242b12e994c09862f6a83e022 Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Tue, 25 Oct 2022 15:54:52 +0500 Subject: [PATCH 09/27] update SOL002 to v3.7.1 --- .../definitions/SOL002VNFConfiguration_def.yaml | 10 ---------- .../VNFLifecycleCoordination.yaml | 2 +- 2 files changed, 1 insertion(+), 11 deletions(-) diff --git a/src/SOL002/VNFConfiguration/definitions/SOL002VNFConfiguration_def.yaml b/src/SOL002/VNFConfiguration/definitions/SOL002VNFConfiguration_def.yaml index 2eb1cdde..3354c655 100644 --- a/src/SOL002/VNFConfiguration/definitions/SOL002VNFConfiguration_def.yaml +++ b/src/SOL002/VNFConfiguration/definitions/SOL002VNFConfiguration_def.yaml @@ -86,11 +86,6 @@ definitions: type: array items: $ref: '#/definitions/CpConfiguration' - dhcpServer: - description: > - IP address of the DHCP server that the VNF instance can use to obtain - IP addresses to be assigned to its external CPs. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/IpAddress' vnfSpecificData: description: > Additional configurable properties of the VNF instance declared in the @@ -117,11 +112,6 @@ definitions: type: array items: $ref: '#/definitions/CpConfiguration' - dhcpServer: - description: > - IP address of the DHCP server that the VNF instance can use to obtain - IP addresses to be assigned to its external CPs. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/IpAddress' vnfcSpecificData: description: > Additional configurable properties of the VNFC instance declared in the diff --git a/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml b/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml index c3c39e95..c1bf5854 100644 --- a/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml +++ b/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml @@ -465,7 +465,7 @@ components: description: | 202 ACCEPTED Shall be returned when the cancellation request has been accepted for processing. - The response shall have an empty payload body. + The response shall have an empty message content. headers: Version: description: | -- GitLab From c7a0564850875d54e3f98700d0611c5398369ab2 Mon Sep 17 00:00:00 2001 From: Mubeena Ishaq Date: Wed, 26 Oct 2022 12:10:44 -0700 Subject: [PATCH 10/27] Updated SOL003 APIs --- .../VNFFaultManagement.yaml | 23 +++++--------- .../SOL003VNFFaultManagement_def.yaml | 2 +- .../VNFFaultManagementNotification.yaml | 4 +-- .../VNFLifecycleManagement.yaml | 30 +++++++++---------- .../SOL003VNFLifecycleManagement_def.yaml | 29 +++++++++--------- .../VNFLifecycleManagementNotification.yaml | 4 +-- .../VNFPackageManagement.yaml | 11 +++---- .../VNFPerformanceManagement.yaml | 24 +++++++-------- .../VNFPerformanceManagementNotification.yaml | 4 +-- .../VNFSnapshotPackageManagement.yaml | 6 ++-- ...OL002SOL003VNFLifecycleManagement_def.yaml | 6 ++-- src/definitions/SOL002SOL003_def.yaml | 10 +++---- 12 files changed, 71 insertions(+), 82 deletions(-) diff --git a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml index 9b59804c..ce853d4d 100644 --- a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml @@ -672,23 +672,16 @@ components: Subscriptions.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content - Shall be returned upon the following error: The - content type of the payload body is supported - and the payload body of a request contains - syntactically correct data but the data cannot be + Shall be returned upon the following error: The content type of the message content is supported + and the message content of a request contains syntactically correct data but the data cannot be processed. - The general cause for this error and its handling - is specified in clause 6.4 of ETSI - GS NFV-SOL 013 [8], including rules for the - presence of the response body. - Specifically in case of this resource, the response - code 422 shall also be returned if the VNFM has - tested the Notification endpoint as described in - clause 7.4.6.3.2 and the test has failed. - In this case, the "detail" attribute in the - "ProblemDetails" structure shall convey more + The general cause for this error and its handling is specified in clause 6.4 of ETSI + GS NFV-SOL 013 [8], including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has + tested the Notification endpoint as described in clause 7.4.6.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information about the error headers: Version: diff --git a/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml b/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml index d9ab6c94..7e649e07 100644 --- a/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml +++ b/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml @@ -38,7 +38,7 @@ definitions: properties: id: description: > - Identifier of this Alarm information element. + Identifier of this Alarm. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" managedObjectId: description: > diff --git a/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml b/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml index d097a371..7fa26e35 100644 --- a/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml +++ b/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml @@ -19,8 +19,8 @@ info: version: 1.4.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf servers: - url: http://127.0.0.1/callback/v1 diff --git a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml index d2f0a431..b3a4d091 100644 --- a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -1605,11 +1605,11 @@ components: VNFInstances.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: The content - type of the payload body is supported and the payload - body of a request contains syntactically correct data + type of the message content is supported and the message + content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], @@ -1620,7 +1620,7 @@ components: "CreateVnfRequest" structure is not in the "ENABLED" state or does not exist. In this case, the "detail" attribute in the "ProblemDetails" structure shall convey - more information about the erro + more information about the error. headers: WWW-Authenticate: description: | @@ -2916,7 +2916,7 @@ components: 202 ACCEPTED Shall be returned when the request has been accepted for processing. - The response shall have an empty payload body. + The response shall have an empty message content. headers: WWW-Authenticate: description: | @@ -3027,7 +3027,7 @@ components: 202 ACCEPTED Shall be returned when the request has been accepted for processing. - The response shall have an empty payload body. + The response shall have an empty message content. headers: WWW-Authenticate: description: | @@ -3264,7 +3264,7 @@ components: 202 ACCEPTED Shall be returned when the request has been accepted for processing. - The response shall have an empty payload body. + The response shall have an empty message content. headers: WWW-Authenticate: description: | @@ -3459,11 +3459,11 @@ components: Subscriptions.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: The - content type of the payload body is supported - and the payload body of a request contains + content type of the message content is supported + and the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling @@ -3730,11 +3730,11 @@ components: CreateVnfSnapshotTask.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: The - content type of the payload body is supported and - the payload body of a request contains syntactically + content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI @@ -4206,7 +4206,7 @@ components: Shall be returned when the whole content of the VNF state snapshot file has been read successfully. - The payload body shall contain a copy of the VNF state snapshot file and the "Content-Type" HTTP + The message content shall contain a copy of the VNF state snapshot file and the "Content-Type" HTTP header shall be set according to the content type of the VNF state snapshot file. If the VNF state snapshot content is encrypted, the header shall be set to the value "application/cms" (IETF RFC 7193). @@ -4250,7 +4250,7 @@ components: header shall be set according to the content type of the VNF state snapshot file. If the content type cannot be determined, the header shall be set to the value "application/octet-stream". - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. headers: WWW-Authenticate: description: | diff --git a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml index 0537c2e1..e5addf53 100644 --- a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml +++ b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml @@ -71,7 +71,7 @@ definitions: description: > Additional input parameters for the instantiation process, specific to the VNF being instantiated, as declared in the VNFD as part of - "InstantiateVnfOpConfig". + "InstantiateVnfOpConfig"." defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > @@ -203,9 +203,8 @@ definitions: $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VimConnectionInfo" additionalParams: description: > - Additional input parameters for the instantiation process, specific - to the VNF being instantiated, as declared in the VNFD as part of - "InstantiateVnfOpConfig". + Additional input parameters for the flavour change process, specific to the VNF being modified, as + declared in the VNFD as part of "ChangeVnfFlavourOpConfig"." defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > @@ -265,7 +264,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the termination process, specific to the VNF being terminated, as declared in the - VNFD as part of "TerminateVnfOpConfig". + VNFD as part of "TerminateVnfOpConfig"." defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" HealVnfRequest: @@ -279,7 +278,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the healing process, specific to the VNF being healed, as declared in the VNFD - as part of "HealVnfOpConfig". + as part of "HealVnfOpConfig"." defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" OperateVnfRequest: @@ -317,7 +316,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the process, specific to the VNF of which the operation status is changed, as - declared in the VNFD as part of "OperateVnfOpConfig". + declared in the VNFD as part of "OperateVnfOpConfig"." defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" ChangeExtVnfConnectivityRequest: @@ -357,9 +356,9 @@ definitions: $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VimConnectionInfo" additionalParams: description: > - Additional input parameters for the instantiation process, specific - to the VNF being instantiated, as declared in the VNFD as part of - "ChangeExtVnfConnectivityOpConfig".". + Additional parameters passed by the NFVO as input to the process, specific to the VNF of which the external + connectivity is changed, as declared in the VNFD as part of "ChangeExtVnfConnectivityOpConfig"." defined + in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" ChangeCurrentVnfPkgRequest: @@ -421,7 +420,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the process, specific to the VNF of which the underlying VNF package is changed, as declared in - the VNFD as part of "ChangeCurrentVnfPkgOpConfig". + the VNFD as part of "ChangeCurrentVnfPkgOpConfig"." defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > @@ -597,7 +596,7 @@ definitions: description: > Additional input parameters for the snapshot creation process, specific for the VNF being “snapshotted”, as declared in the VNFD as part of - “CreateSnapshotVnfOpConfig”. + “CreateSnapshotVnfOpConfig"." defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" userDefinedData: description: > @@ -639,7 +638,7 @@ definitions: additionalParams: description: > Additional input parameters for the revert to VNF snapshot process, specific for the VNF being - “reverted”, as declared in the VNFD as part of “RevertToSnapshotVnfOpConfig”. + “reverted”, as declared in the VNFD as part of “RevertToSnapshotVnfOpConfig"." defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" VnfSnapshotInfoModificationRequest: @@ -774,7 +773,7 @@ definitions: Configurable properties referred in these attributes are declared in the VNFD. The declaration of configurable properties in the VNFD can optionally contain the specification of initial values. See notes 2, 3 and 4. The VNFM shall reject requests to write configurable properties that are - not declared in the VNFD with a "422 Unprocessable entity" error response as defined in clause + not declared in the VNFD with a "422 Unprocessable Content" error response as defined in clause 6.4 of ETSI GS NFV SOL 013. These configurable properties include the following standard attributes, which are declared in @@ -940,7 +939,7 @@ definitions: All extensions that are allowed for the VNF are declared in the VNFD. The declaration of an extension in the VNFD contains information on whether its presence is optional or required, and optionally can specify an initial value. See notes 2 and 4. The VNFM shall reject requests to write extension attributes - that are not declared in the VNFD with a "422 Unprocessable entity" error response as defined in clause + that are not declared in the VNFD with a "422 Unprocessable Content" error response as defined in clause 6.4 of ETSI GS NFV-SOL 013. Modifying the values of these attributes has no direct effect on the VNF instance; however, the modified diff --git a/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml b/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml index 0c9e5d8b..fe3c53ff 100644 --- a/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml +++ b/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml @@ -19,8 +19,8 @@ info: version: "2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml index 6c4512fd..c2a9d871 100644 --- a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml +++ b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml @@ -1146,12 +1146,9 @@ components: 200 OK Shall be returned when the content of the VNFD has been read successfully. - The payload body shall contain a copy of the file representing the VNFD or - a ZIP file that contains the file or multiple files representing the VNFD, + The message content shall contain a ZIP archive that contains the files representing the VNFD, as specified above. - The "Content-Type" HTTP header shall be set according to the format of the - returned file, i.e. to "text/plain" for a YAML file or to "application/zip" - for a ZIP file. + The "Content-Type" HTTP header shall be set to "application/zip". headers: Content-Type: description: The MIME type of the body of the response. @@ -1225,7 +1222,7 @@ components: Shall be returned when the content of the manifest has been read successfully. If the "include_signatures" URI query parameter was absent in the request, or if the manifest file has all security-related information embedded - (i.e. there is no separate certificate file), the payload body shall contain + (i.e. there is no separate certificate file), the message content shall contain a copy of the manifest file of the VNF package and the "Content-Type" HTTP header shall be set to "text/plain". @@ -1233,7 +1230,7 @@ components: request and the manifest file does not have all the security-related information embedded (i.e. there is a separate certificate file), the "Content-Type" HTTP header shall be set to "application/zip and the - payload body shall contain a ZIP archive which includes: + message content shall contain a ZIP archive which includes: • a copy of the manifest file of the VNF package; • a copy of the related individual certificate file. headers: diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 22a2e52d..09076d6c 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -546,11 +546,11 @@ components: PmJobs.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: The - content type of the payload body is supported and - the payload body of a request contains syntactically + content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], @@ -736,11 +736,11 @@ components: IndividualPmJob.Patch.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: The - content type of the payload body is supported and the - payload body of a request contains syntactically + content type of the message content is supported and the + message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], @@ -880,11 +880,11 @@ components: Thresholds.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: The - content type of the payload body is supported and - the payload body of a request contains + content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is @@ -1078,11 +1078,11 @@ components: IndividualThreshold.Patch.422: description: | - 422 Unprocessable entity + 422 Unprocessable Content Shall be returned upon the following error: The - content type of the payload body is supported and - the payload body of a request contains + content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its handling is diff --git a/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml b/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml index ecae61f6..db435615 100644 --- a/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml +++ b/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml @@ -19,8 +19,8 @@ info: version: 2.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml b/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml index 5c9ca347..8aefd30c 100644 --- a/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml +++ b/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml @@ -408,7 +408,7 @@ components: from the content of the VNF snapshot package file has been read successfully according to the request. The response body shall contain the requested part of the VNF snapshot package file. The "Content-Range" - HTTP header shall be provided according to IETF RFC 7233. The "Content-Type" HTTP header shall be set as + HTTP header shall be provided according to IETF RFC 9110. The "Content-Type" HTTP header shall be set as defined above for the "200 OK" response. headers: Version: @@ -550,7 +550,7 @@ components: IndividualArtifact.Get.206: description: | - 2006 PARTIAL CONTENT + 206 PARTIAL CONTENT If the NFVO supports range requests, this response shall be returned when a single consecutive byte range from the content of the artifact file has been read successfully according to the request. @@ -561,7 +561,7 @@ components: The "Content-Type" HTTP header shall be set according to the content type of the artifact file. If the content type cannot be determined, the header shall be set to the value "application/octet-stream". - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. headers: Version: description: The used API version. diff --git a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml b/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml index 14d81cff..0b66a2b8 100644 --- a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml +++ b/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml @@ -60,7 +60,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the scaling process, specific to the VNF being scaled, as declared in the VNFD - as part of "ScaleVnfOpConfig" defined in ETSI GS NFV-IFA 011. + as part of "ScaleVnfOpConfig-" defined in ETSI GS NFV-IFA 011. $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" ScaleVnfToLevelRequest: @@ -97,7 +97,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the scaling process, specific to the VNF being scaled, as declared in the - VNFD as part of "ScaleVnfToLevelOpConfig" defined in ETSI GS NFV-IFA 011. + VNFD as part of "ScaleVnfToLevelOpConfig-" defined in ETSI GS NFV-IFA 011. $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" VnfInfoModificationRequest: @@ -1087,7 +1087,7 @@ definitions: properties: cpInstanceId: description: > - Identifier of this VIP CP instance and of this VipCpInfo. + Identifier of this VIP CP instance and of this VipCpInfo structure. $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" cpdId: description: > diff --git a/src/definitions/SOL002SOL003_def.yaml b/src/definitions/SOL002SOL003_def.yaml index c43f8190..246d12b5 100644 --- a/src/definitions/SOL002SOL003_def.yaml +++ b/src/definitions/SOL002SOL003_def.yaml @@ -239,10 +239,10 @@ definitions: resource groups (see note 1). The applicable keys are dependent on the content of vimType. If the VimConnectionInfo structure is part of an HTTP response - payload body, sensitive attributes that are children of this attributes + message content, sensitive attributes that are children of this attributes (such as passwords) shall not be included. - If the VimConnectionInfo structure is part of an HTTP request payload - body, sensitive attributes that are children of this attribute (such + If the VimConnectionInfo structure is part of an HTTP request message content, + sensitive attributes that are children of this attribute (such as passwords) shall be present if they have not been provisioned out of band. @@ -330,7 +330,7 @@ definitions: Map of instance data that need to be configured on the CP instances created from the respective CPD. The key of the map which identifies the individual VnfExtCpConfig entries is of type "IdentifierInVnf" - and is managed by the API consumer. + and is managed by the NFVO. The entries shall be applied by the VNFM according to the rules of JSON Merge Patch (see IETF RFC 7396). See notes 2, 3 and 4. type: object @@ -357,7 +357,7 @@ definitions: a pre created link port, and the VNFM can use means outside the scope of the present document to obtain the pre-configured address information for the connection point from the resource representing the link port. - 5) If both "cpProtocolData" and "linkportId" are provided, the API consumer shall ensure that the + 5) If both "cpProtocolData" and "linkportId" are provided, the NFVO shall ensure that the cpProtocolData can be used with the pre-created link port referenced by "linkPortId". anyOf: - required: -- GitLab From 3ced595fcec79b13b4fce9756cbb28bbd8c16c4b Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Thu, 27 Oct 2022 13:25:58 +0500 Subject: [PATCH 11/27] fix issues in SOL003 APIs --- Readme.md | 2 +- src/SOL003/APIVersion/APIVersion.yaml | 4 +- .../VNFFaultManagementNotification.yaml | 2 +- .../VNFIndicatorNotification.yaml | 6 +- .../VNFLifecycleManagement.yaml | 66 +++++--------- .../SOL003VNFLifecycleManagement_def.yaml | 23 +++-- .../VNFLifecycleManagementNotification.yaml | 2 +- .../VNFPackageManagement.yaml | 6 +- .../VNFPackageManagementNotification.yaml | 6 +- .../VNFPerformanceManagement.yaml | 90 +++++++------------ .../VNFPerformanceManagementNotification.yaml | 2 +- ...OL002SOL003VNFLifecycleManagement_def.yaml | 4 +- 12 files changed, 82 insertions(+), 131 deletions(-) diff --git a/Readme.md b/Readme.md index b91d223d..664b463e 100644 --- a/Readme.md +++ b/Readme.md @@ -1,7 +1,7 @@ # NFV SOL002 and SOL003 APIs This repository hosts the [OpenAPI](https://www.openapis.org/) specificatons and other documentation -for the APIs defined in ETSI NFV GSs SOL002 and SOL003 v3.6.1. +for the APIs defined in ETSI NFV GSs SOL002 and SOL003 v3.7.1. The APIs described in this repository are defined for the following reference points: diff --git a/src/SOL003/APIVersion/APIVersion.yaml b/src/SOL003/APIVersion/APIVersion.yaml index 8a6a30a5..48c60742 100644 --- a/src/SOL003/APIVersion/APIVersion.yaml +++ b/src/SOL003/APIVersion/APIVersion.yaml @@ -20,8 +20,8 @@ info: version: "1.0.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf paths: /vrqan/api_versions: diff --git a/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml b/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml index 7fa26e35..07bd0037 100644 --- a/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml +++ b/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml @@ -16,7 +16,7 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 1.4.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 1.5.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: description: ETSI GS NFV-SOL 003 V3.7.1 diff --git a/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml b/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml index 1a035fa7..60df450f 100644 --- a/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml +++ b/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "1.3.1-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "1.4.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf servers: - url: http://127.0.0.1/callback/v1 diff --git a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml index b3a4d091..82e69e67 100644 --- a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -1607,20 +1607,14 @@ components: description: | 422 Unprocessable Content - Shall be returned upon the following error: The content - type of the message content is supported and the message - content of a request contains syntactically correct data - but the data cannot be processed. - The general cause for this error and its handling is - specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], + Shall be returned upon the following error: The content type of the message content is supported and the + message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], including rules for the presence of the response body. - Specifically in case of this resource, the response - code 422 shall also be returned if the VNF package - referenced by the "vnfdId" attribute in the - "CreateVnfRequest" structure is not in the "ENABLED" - state or does not exist. In this case, the "detail" - attribute in the "ProblemDetails" structure shall convey - more information about the error. + Specifically in case of this resource, the response code 422 shall also be returned if the VNF package + referenced by the "vnfdId" attribute in the "CreateVnfRequest" structure is not in the "ENABLED" state or + does not exist. In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more + information about the error. headers: WWW-Authenticate: description: | @@ -3461,22 +3455,15 @@ components: description: | 422 Unprocessable Content - Shall be returned upon the following error: The - content type of the message content is supported - and the message content of a request contains - syntactically correct data but the data cannot be + Shall be returned upon the following error: The content type of the message content is supported + and the message content of a request contains syntactically correct data but the data cannot be processed. - The general cause for this error and its handling - is specified in clause 6.4 of ETSI - GS NFV-SOL 013 [8], including rules for the - presence of the response body. - Specifically in case of this resource, the response - code 422 shall also be returned if the VNFM has - tested the Notification endpoint as described in - clause 5.4.20.3.2 and the test has failed. - In this case, the "detail" attribute in the - "ProblemDetails" structure shall convey more - information about the error + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has + tested the Notification endpoint as described in clause 5.4.20.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information + about the error headers: WWW-Authenticate: description: | @@ -3732,21 +3719,14 @@ components: description: | 422 Unprocessable Content - Shall be returned upon the following error: The - content type of the message content is supported and - the message content of a request contains syntactically - correct data but the data cannot be processed. - The general cause for this error and its handling is - specified in clause 6.4 of ETSI - GS NFV-SOL 013 [8], including rules for the - presence of the response body. - Specifically in case of this resource, the response - code 422 shall also be returned if the provided - identifier of the target "Individual VNF snapshot" - resource for the VNF snapshot is invalid. - In this case, the "detail" attribute in the - "ProblemDetails" structure shall convey more - information about the error + Shall be returned upon the following error: The content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the provided identifier + of the target "Individual VNF snapshot" resource for the VNF snapshot is invalid. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information + about the error headers: WWW-Authenticate: description: | diff --git a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml index e5addf53..da66c3ba 100644 --- a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml +++ b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml @@ -61,7 +61,6 @@ definitions: type: object additionalProperties: $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VimConnectionInfo" - localizationLanguage: description: > Localization language of the VNF to be instantiated. The value shall @@ -71,7 +70,7 @@ definitions: description: > Additional input parameters for the instantiation process, specific to the VNF being instantiated, as declared in the VNFD as part of - "InstantiateVnfOpConfig"." defined in ETSI GS NFV-IFA 011. + "InstantiateVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > @@ -204,7 +203,7 @@ definitions: additionalParams: description: > Additional input parameters for the flavour change process, specific to the VNF being modified, as - declared in the VNFD as part of "ChangeVnfFlavourOpConfig"." defined in ETSI GS NFV-IFA 011. + declared in the VNFD as part of "ChangeVnfFlavourOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > @@ -264,7 +263,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the termination process, specific to the VNF being terminated, as declared in the - VNFD as part of "TerminateVnfOpConfig"." defined in ETSI GS NFV-IFA 011. + VNFD as part of "TerminateVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" HealVnfRequest: @@ -278,7 +277,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the healing process, specific to the VNF being healed, as declared in the VNFD - as part of "HealVnfOpConfig"." defined in ETSI GS NFV-IFA 011. + as part of "HealVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" OperateVnfRequest: @@ -316,7 +315,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the process, specific to the VNF of which the operation status is changed, as - declared in the VNFD as part of "OperateVnfOpConfig"." defined in ETSI GS NFV-IFA 011. + declared in the VNFD as part of "OperateVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" ChangeExtVnfConnectivityRequest: @@ -356,9 +355,9 @@ definitions: $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VimConnectionInfo" additionalParams: description: > - Additional parameters passed by the NFVO as input to the process, specific to the VNF of which the external - connectivity is changed, as declared in the VNFD as part of "ChangeExtVnfConnectivityOpConfig"." defined - in ETSI GS NFV-IFA 011. + Additional parameters passed by the NFVO as input to the process, specific to the VNF of which the external + connectivity is changed, as declared in the VNFD as part of "ChangeExtVnfConnectivityOpConfig" defined + in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" ChangeCurrentVnfPkgRequest: @@ -420,7 +419,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the process, specific to the VNF of which the underlying VNF package is changed, as declared in - the VNFD as part of "ChangeCurrentVnfPkgOpConfig"." defined in ETSI GS NFV-IFA 011. + the VNFD as part of "ChangeCurrentVnfPkgOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > @@ -596,7 +595,7 @@ definitions: description: > Additional input parameters for the snapshot creation process, specific for the VNF being “snapshotted”, as declared in the VNFD as part of - “CreateSnapshotVnfOpConfig"." defined in ETSI GS NFV-IFA 011. + “CreateSnapshotVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" userDefinedData: description: > @@ -638,7 +637,7 @@ definitions: additionalParams: description: > Additional input parameters for the revert to VNF snapshot process, specific for the VNF being - “reverted”, as declared in the VNFD as part of “RevertToSnapshotVnfOpConfig"." defined in ETSI GS NFV-IFA 011. + “reverted”, as declared in the VNFD as part of “RevertToSnapshotVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" VnfSnapshotInfoModificationRequest: diff --git a/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml b/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml index fe3c53ff..4c847a36 100644 --- a/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml +++ b/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml @@ -16,7 +16,7 @@ info: license: name: "ETSI Forge copyright notice" url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: "2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" + version: "2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1" externalDocs: description: ETSI GS NFV-SOL 003 V3.7.1 diff --git a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml index c2a9d871..cf67de59 100644 --- a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml +++ b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml @@ -1069,7 +1069,7 @@ components: 200 OK Shall be returned when the content of the VNFD has been read successfully. - The payload body shall contain a copy of the file representing the VNFD or + The message content shall contain a copy of the file representing the VNFD or a ZIP file that contains the file or multiple files representing the VNFD, as specified above. The "Content-Type" HTTP header shall be set according to the format of the @@ -1340,7 +1340,7 @@ components: Shall be returned when the content of the manifest has been read successfully. If the "include_signatures" URI query parameter was absent in the request, or if the manifest file has all security-related information embedded - (i.e. there is no separate certificate file), the payload body shall contain + (i.e. there is no separate certificate file), the messgae content shall contain a copy of the manifest file of the VNF package and the "Content-Type" HTTP header shall be set to "text/plain". @@ -1348,7 +1348,7 @@ components: request and the manifest file does not have all the security-related information embedded (i.e. there is a separate certificate file), the "Content-Type" HTTP header shall be set to "application/zip and the - payload body shall contain a ZIP archive which includes: + message content shall contain a ZIP archive which includes: • a copy of the manifest file of the VNF package; • a copy of the related individual certificate file. headers: diff --git a/src/SOL003/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml b/src/SOL003/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml index 0c97ab76..4f75222d 100644 --- a/src/SOL003/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml +++ b/src/SOL003/VNFPackageManagementNotification/VNFPackageManagementNotification.yaml @@ -16,11 +16,11 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.3.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.4.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: - description: ETSI GS NFV-SOL 003 V3.6.1 - url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.06.01_60/gs_NFV-SOL003v030601p.pdf + description: ETSI GS NFV-SOL 003 V3.7.1 + url: https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/003/03.07.01_60/gs_NFV-SOL003v030701p.pdf servers: - url: http://127.0.0.1/callback/v2 diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 09076d6c..f0137538 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -548,20 +548,14 @@ components: description: | 422 Unprocessable Content - Shall be returned upon the following error: The - content type of the message content is supported and - the message content of a request contains syntactically - correct data but the data cannot be processed. - The general cause for this error and its handling is - specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], - including rules for the presence of the response - body. - Specifically in case of this resource, the response - code 422 shall also be returned if the VNFM has - tested the Notification endpoint as described in - clause 6.4.9.3.2 and the test has failed. - In this case, the "detail" attribute in the - "ProblemDetails" structure sh + Shall be returned upon the following error: The content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has + tested the Notification endpoint as described in clause 6.4.9.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure structure shall convey more + information about the error. headers: WWW-Authenticate: description: | @@ -738,20 +732,14 @@ components: description: | 422 Unprocessable Content - Shall be returned upon the following error: The - content type of the message content is supported and the - message content of a request contains syntactically - correct data but the data cannot be processed. - The general cause for this error and its handling is - specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], + Shall be returned upon the following error: The content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], including rules for the presence of the response body. - Specifically in case of this resource, the response - code 422 shall also be returned if the VNFM has - tested the Notification endpoint as described in - clause 6.4.9.3.2 and the test has failed. - In this case, the "detail" attribute in the - "ProblemDetails" structure shall convey more - information about the error. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has + tested the Notification endpoint as described in clause 6.4.9.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information + about the error. headers: Content-Type: description: | @@ -882,22 +870,14 @@ components: description: | 422 Unprocessable Content - Shall be returned upon the following error: The - content type of the message content is supported and - the message content of a request contains - syntactically correct data but the data cannot be - processed. - The general cause for this error and its handling is - specified in clause 6.4 of ETSI - GS NFV-SOL 013 [8], including rules for the - presence of the response body. - Specifically in case of this resource, the response - code 422 shall also be returned if the VNFM has - tested the Notification endpoint as described in - clause 6.4.9.3.2 and the test has failed. - In this case, the "detail" attribute in the - "ProblemDetails" structure shall convey more - information about the error + Shall be returned upon the following error: The content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has + tested the Notification endpoint as described in clause 6.4.9.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information + about the error headers: Content-Type: description: | @@ -1080,22 +1060,14 @@ components: description: | 422 Unprocessable Content - Shall be returned upon the following error: The - content type of the message content is supported and - the message content of a request contains - syntactically correct data but the data cannot be - processed. - The general cause for this error and its handling is - specified in clause 6.4 of ETSI - GS NFV-SOL 013 [8], including rules for the - presence of the response body. - Specifically in case of this resource, the response - code 422 shall also be returned if the VNFM has - tested the Notification endpoint as described in - clause 6.4.9.3.2 and the test has failed. - In this case, the "detail" attribute in the - "ProblemDetails" structure shall convey more - information about the error + Shall be returned upon the following error: The content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], + including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has + tested the Notification endpoint as described in clause 6.4.9.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information + about the error headers: Content-Type: description: | diff --git a/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml b/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml index db435615..45643d96 100644 --- a/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml +++ b/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml @@ -16,7 +16,7 @@ info: license: name: ETSI Forge copyright notice url: https://forge.etsi.org/etsi-forge-copyright-notice.txt - version: 2.1.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 + version: 2.2.0-impl:etsi.org:ETSI_NFV_OpenAPI:1 externalDocs: description: ETSI GS NFV-SOL 003 V3.7.1 diff --git a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml b/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml index 0b66a2b8..09b17bdd 100644 --- a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml +++ b/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml @@ -60,7 +60,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the scaling process, specific to the VNF being scaled, as declared in the VNFD - as part of "ScaleVnfOpConfig-" defined in ETSI GS NFV-IFA 011. + as part of "ScaleVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" ScaleVnfToLevelRequest: @@ -97,7 +97,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the scaling process, specific to the VNF being scaled, as declared in the - VNFD as part of "ScaleVnfToLevelOpConfig-" defined in ETSI GS NFV-IFA 011. + VNFD as part of "ScaleVnfToLevelOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" VnfInfoModificationRequest: -- GitLab From 653f9ea39d7f5231fefca0c70c510ee684ab5362 Mon Sep 17 00:00:00 2001 From: "M. Hamza" Date: Thu, 27 Oct 2022 16:02:58 +0500 Subject: [PATCH 12/27] update refercing in VNFFaultMgmt interface Notification endpoint --- .../SOL002VNFFaultManagement_def.yaml | 54 ------------------ .../VNFFaultManagementNotification.yaml | 2 +- ...002VNFFaultManagementNotification_def.yaml | 57 +++++++++++++++++++ 3 files changed, 58 insertions(+), 55 deletions(-) create mode 100644 src/SOL002/VNFFaultManagementNotification/definitions/SOL002VNFFaultManagementNotification_def.yaml diff --git a/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml b/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml index a6f77a16..a91e57e9 100644 --- a/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml +++ b/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml @@ -159,60 +159,6 @@ definitions: instance information is accessible as a resource. $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" - AlarmNotification: - description: > - This type represents an alarm notification about VNF faults. - This notification shall be triggered by the VNFM when: - * An alarm has been created. - * An alarm has been updated, e.g. if the severity of the alarm has - changed. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - alarm - - _links - properties: - id: - description: > - Identifier of this notification. If a notification is sent multiple - times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "AlarmNotification" for this notification type. - type: string - enum: - - AlarmNotification - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" - alarm: - description: > - Information about an alarm including AlarmId, affected VNF - identifier, and FaultDetails. - $ref: "#/definitions/Alarm" - _links: - description: > - Links to resources related to this notification. - type: object - required: - - subscription - properties: - subscription: - description: > - Link to the related subscription. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink" - PerceivedSeverityRequest: description: > This type represents the escalated value of the perceived severity for an alarm. diff --git a/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml b/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml index 25b4bc83..0584de97 100644 --- a/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml +++ b/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml @@ -191,7 +191,7 @@ components: content: application/json: schema: - $ref: ../VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml#/definitions/AlarmNotification + $ref: definitions/SOL002VNFFaultManagementNotification_def.yaml#/definitions/AlarmNotification required: true AlarmClearedNotification: diff --git a/src/SOL002/VNFFaultManagementNotification/definitions/SOL002VNFFaultManagementNotification_def.yaml b/src/SOL002/VNFFaultManagementNotification/definitions/SOL002VNFFaultManagementNotification_def.yaml new file mode 100644 index 00000000..2fc01ea7 --- /dev/null +++ b/src/SOL002/VNFFaultManagementNotification/definitions/SOL002VNFFaultManagementNotification_def.yaml @@ -0,0 +1,57 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt + +definitions: + AlarmNotification: + description: > + This type represents an alarm notification about VNF faults. + This notification shall be triggered by the VNFM when: + * An alarm has been created. + * An alarm has been updated, e.g. if the severity of the alarm has + changed. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - alarm + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "AlarmNotification" for this notification type. + type: string + enum: + - AlarmNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + alarm: + description: > + Information about an alarm including AlarmId, affected VNF + identifier, and FaultDetails. + $ref: "../../VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml#/definitions/Alarm" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - subscription + properties: + subscription: + description: > + Link to the related subscription. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file -- GitLab From a8d1e23c56d202c2791c7da7294287a906e9ff7d Mon Sep 17 00:00:00 2001 From: Mubeena Ishaq Date: Thu, 27 Oct 2022 23:49:18 -0700 Subject: [PATCH 13/27] update SOL003VNFLifecycleManagement --- .../VNFLifecycleManagement.yaml | 6 +- src/SOL003/VNFIndicator/VNFIndicator.yaml | 20 +++---- .../VNFLifecycleManagement.yaml | 12 ++++ .../VNFPackageManagement.yaml | 56 +++++++++---------- .../SOL003VNFPackageManagement_def.yaml | 14 +++-- .../VNFPerformanceManagement.yaml | 9 +++ ...OL002SOL003VNFLifecycleManagement_def.yaml | 2 +- 7 files changed, 71 insertions(+), 48 deletions(-) diff --git a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 7c74c906..4eaf7ddd 100644 --- a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -791,7 +791,7 @@ paths: back, i.e. the related "Individual VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state. See clause 5.4.17.3.1. requestBody: - $ref: '#/components/requestBodies/VnfInstanceCancelModeRequest' + $ref: '#/components/requestBodies/CancelModeRequest' responses: "202": $ref: '#/components/responses/VnfLcmOpOccCancel.Post.202' @@ -1454,14 +1454,14 @@ components: $ref: ./definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/ChangeCurrentVnfPkgRequest required: true - VnfInstanceCancelModeRequest: + CancelModeRequest: description: | The POST request to this resource shall include a CancelMode structure in the message content to choose between "graceful" and "forceful" cancellation. content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelMode + $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelModeRequest VnfLcmSubscriptionRequest: description: | diff --git a/src/SOL003/VNFIndicator/VNFIndicator.yaml b/src/SOL003/VNFIndicator/VNFIndicator.yaml index b47f9edc..4647d505 100644 --- a/src/SOL003/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL003/VNFIndicator/VNFIndicator.yaml @@ -573,17 +573,17 @@ components: Subscriptions.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content + + Shall be returned upon the following error: The content type of the message content is supported and + the message content of a request contains syntactically correct data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013, including + rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has + tested the Notification endpoint as described in clause 8.4.7.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information + about the error. - Shall be returned when a subscription with - the same callback URI and the same filter - already exists and the policy of the VNFM - is to not create redundant subscriptions. - The HTTP response shall include a - "Location" HTTP header that contains the - resource URI of the existing "Individual - subscription" resource. - The response body shall be empty headers: WWW-Authenticate: description: | diff --git a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 82e69e67..248e82c0 100644 --- a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -777,6 +777,8 @@ paths: The POST method initiates cancelling an ongoing VNF lifecycle operation while it is being executed or rolled back, i.e. the related "Individual VNF LCM operation occurrence" resource is either in "STARTING" or "PROCESSING" or "ROLLING_BACK" state. See clause 5.4.17.3.1. + requestBody: + $ref: '#/components/requestBodies/CancelModeRequest' parameters: - $ref: ../../components/SOL003_params.yaml#/components/parameters/Authorization - $ref: ../../components/SOL003_params.yaml#/components/parameters/Version @@ -1429,6 +1431,16 @@ components: $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CreateVnfRequest" required: true + CancelModeRequest: + description: + The POST request to this resource shall include a CancelMode structure in the message content to choose between + "graceful" and "forceful" cancellation. + content: + application/json: + schema: + $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelModeRequest" + required: true + VnfInfoModificationRequest: description: | Parameters for the VNF modification, as defined in clause 5.5.2.12. diff --git a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml index cf67de59..08672ede 100644 --- a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml +++ b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml @@ -734,7 +734,7 @@ components: description: > Flag (i.e. parameter without value) that instructs the NFVO to exclude the set of additional MANO artifacts (i.e. those that are not images) - from the response payload body. + from the response message content. The NFVO shall support this parameter. The VNFM may supply this parameter. in: query @@ -746,7 +746,7 @@ components: name: exclude_all_non_mano_artifacts description: > Flag (i.e. parameter without value) that instructs the NFVO to exclude - the set of non-MANO artifacts from the response payload body. + the set of non-MANO artifacts from the response message content. The NFVO shall support this parameter. The VNFM may supply this parameter. in: query @@ -758,7 +758,7 @@ components: name: include_external_artifacts description: > Flag (i.e. parameter without value) that instructs the NFVO to include - external artifacts in the response payload body. It shall not be treated + external artifacts in the response message content. It shall not be treated as an error if this flag is provided but there is no external artifact to include in the result. If this parameter is missing, no external artifacts shall be included. @@ -1489,7 +1489,7 @@ components: a single consecutive byte range from the content of the VNF package file has been read successfully according to the request. The response body shall contain the requested part of the VNF package file. - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. The "Content-Type" HTTP header shall be set as defined above for the "200 OK" response. headers: Content-Range: @@ -1696,7 +1696,7 @@ components: been read successfully. If the "include_signatures" request URI parameter was not provided in - the related request, the payload body shall contain a copy of the artifact + the related request, the message content shall contain a copy of the artifact file from the VNF package, as defined by ETSI GS NFV-SOL 004 and the "Content-Type" HTTP header shall be set according to the content type of the artifact file. If the artifact is encrypted, the header shall be set to the value "application/cms" @@ -1704,7 +1704,7 @@ components: to the value "application/octet-stream". If the "include_signatures" request URI parameter was provided in the related request, - the "Content-Type" HTTP header shall be set to "application/zip and the payload body + the "Content-Type" HTTP header shall be set to "application/zip and the message content shall contain a ZIP archive which includes: • a copy of the artifact file from the VNF package, as defined by ETSI GS NFV SOL 004; • the related security information (individual signature file and optional related @@ -2052,7 +2052,7 @@ components: Shall be returned when the whole content of the archive containing the artifact files has been read successfully. - The payload body shall be a ZIP archive containing the requested + The message content shall be a ZIP archive containing the requested set of artifacts selected according to the provisions specified above in this clause, and, if the flag "include_signatures" was provided in the related request, the applicable signature files and, if available, @@ -2089,17 +2089,14 @@ components: description: | 206 PARTIAL CONTENT - If the NFVO supports range requests and the "include_signatures" request - URI parameter was not present in the related request, this response shall - be returned when a single consecutive byte range from the content of the - artifact file, if the NFVO supports range requests has been read successfully - according to the request. - The response body shall contain the requested part of the VNF - package file. - The "Content-Range" HTTP header shall be provided according to - IETF RFC 7233. - The "Content-Type" HTTP header shall be set as defined above for - the "200 OK" response. + If the NFVO supports range requests and the "include_signatures" request URI parameter was not + present in the related request, this response shall be returned when a single consecutive byte range from + the content of the artifact file has been read successfully according to the request. + The response body shall contain the requested part of the artifact file from the VNF package, as defined + by ETSI GS NFV-SOL 004. + The "Content-Type" HTTP header shall be set according to the content type of the artifact file. If the + content type cannot be determined, the header shall be set to the value "application/octet-stream". + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. headers: Content-Range: required : true @@ -2139,7 +2136,7 @@ components: successfully according to the request. The response body shall contain the requested part of the archive. The "Content-Type" HTTP header shall be set to "application/zip". - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. headers: Content-Range: required : true @@ -2432,16 +2429,17 @@ components: Subscriptions.Post.422: description: | - 422 Unprocessable Entity - - Shall be returned when a subscription with the - same callback URI and the same filter already - exists and the policy of the NFVO is to not create - redundant subscriptions. - The HTTP response shall include a "Location" - HTTP header that contains the resource URI of - the existing "Individual subscription" resource. - The response body shall be empty. + 422 Unprocessable Content + + Shall be returned upon the following error: The content type of the message content + is supported and the message content of a request contains syntactically correct + data but the data cannot be processed. + The general cause for this error and its handling is specified in clause 6.4 of ETSI + GS NFV-SOL 013, including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the NFVO has + tested the Notification endpoint as described in clause 10.4.9.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more + information about the error. headers: Content-Type: description: The MIME type of the body of the response. diff --git a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml index b65b2b57..bf14caf9 100644 --- a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml +++ b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml @@ -16,7 +16,6 @@ definitions: - id - operationalState - usageState - - vnfmInfo - _links properties: id: @@ -125,8 +124,11 @@ definitions: $ref: "#/definitions/PackageUsageStateType" vnfmInfo: description: > - Specifies VNFMs compatible with the VNF. This information is copied from the VNFD. See note 3. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + Specifies VNFMs compatible with the VNF. This information is copied from the VNFD of the on-boarded VNF package. See note 3. + It shall be present after the VNF package content has been on-boarded and absent otherwise. + type: array + items: + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" userDefinedData: description: > User defined data for the VNF package. @@ -379,6 +381,9 @@ definitions: description: > This type represents an artifact other than a software image which is contained in or external to a VNF package. + + NOTE : The attribute name "artifactURI" does not comply with the naming convention defined in clause 4.3 in ETSI GS + NFV-SOL 015. This is to maintain the backward compatibility. type: object required: - artifactPath @@ -412,8 +417,7 @@ definitions: artifactURI: description: > URI of the artifact as defined in the VNF package manifest. - Shall be present if the artifact is external to the package - and shall be absent otherwise. + Shall be present if the artifact is external to the package and shall be absent otherwise. EXAMPLE: https://example.com/m%40ster.sh type: array diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index f0137538..505c7ac3 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -1062,12 +1062,21 @@ components: Shall be returned upon the following error: The content type of the message content is supported and the message content of a request contains syntactically correct data but the data cannot be processed. +<<<<<<< Updated upstream The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], including rules for the presence of the response body. Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has tested the Notification endpoint as described in clause 6.4.9.3.2 and the test has failed. In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information about the error +======= + The general cause for this error and its handling is specified in clause 6.4 of ETSI + GS NFV-SOL 013, including rules for the presence of the response body. + Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has tested the + Notification endpoint as described in clause 6.4.9.3.2 and the test has failed. + In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more + information about the error +>>>>>>> Stashed changes headers: Content-Type: description: | diff --git a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml b/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml index 09b17bdd..43e46ec6 100644 --- a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml +++ b/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml @@ -171,7 +171,7 @@ definitions: items: $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - CancelMode: + CancelModeRequest: description: > This type represents a parameter to select the mode of cancelling an ongoing VNF LCM operation occurrence. -- GitLab From a7d220e290c7969821c08502d4ff04564fb53b7c Mon Sep 17 00:00:00 2001 From: "M. Hamza" Date: Fri, 28 Oct 2022 12:22:48 +0500 Subject: [PATCH 14/27] fix conflict in VNF performance Mgmt API of SOL003 --- .../VNFPerformanceManagement.yaml | 9 --------- 1 file changed, 9 deletions(-) diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 505c7ac3..8855ab8d 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -1062,21 +1062,12 @@ components: Shall be returned upon the following error: The content type of the message content is supported and the message content of a request contains syntactically correct data but the data cannot be processed. -<<<<<<< Updated upstream - The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], - including rules for the presence of the response body. - Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has - tested the Notification endpoint as described in clause 6.4.9.3.2 and the test has failed. - In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information - about the error -======= The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013, including rules for the presence of the response body. Specifically in case of this resource, the response code 422 shall also be returned if the VNFM has tested the Notification endpoint as described in clause 6.4.9.3.2 and the test has failed. In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information about the error ->>>>>>> Stashed changes headers: Content-Type: description: | -- GitLab From 6d4c05ed6e6a2a5afce7bc79effea1b824e4cd80 Mon Sep 17 00:00:00 2001 From: Mubeena Ishaq Date: Fri, 28 Oct 2022 00:40:38 -0700 Subject: [PATCH 15/27] update SOL003 --- .../VNFLifecycleManagement/VNFLifecycleManagement.yaml | 6 +++--- .../VNFLifecycleManagement/VNFLifecycleManagement.yaml | 3 +-- src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml | 2 +- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 4eaf7ddd..7c74c906 100644 --- a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -791,7 +791,7 @@ paths: back, i.e. the related "Individual VNF LCM operation occurrence" is either in "PROCESSING" or "ROLLING_BACK" state. See clause 5.4.17.3.1. requestBody: - $ref: '#/components/requestBodies/CancelModeRequest' + $ref: '#/components/requestBodies/VnfInstanceCancelModeRequest' responses: "202": $ref: '#/components/responses/VnfLcmOpOccCancel.Post.202' @@ -1454,14 +1454,14 @@ components: $ref: ./definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/ChangeCurrentVnfPkgRequest required: true - CancelModeRequest: + VnfInstanceCancelModeRequest: description: | The POST request to this resource shall include a CancelMode structure in the message content to choose between "graceful" and "forceful" cancellation. content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelModeRequest + $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelMode VnfLcmSubscriptionRequest: description: | diff --git a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 248e82c0..75922832 100644 --- a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -1438,8 +1438,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelModeRequest" - required: true + $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelMode" VnfInfoModificationRequest: description: | diff --git a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml b/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml index 43e46ec6..09b17bdd 100644 --- a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml +++ b/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml @@ -171,7 +171,7 @@ definitions: items: $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - CancelModeRequest: + CancelMode: description: > This type represents a parameter to select the mode of cancelling an ongoing VNF LCM operation occurrence. -- GitLab From 02761802638c1b8413bbe79a1fee82384d4ec6ba Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Fri, 28 Oct 2022 12:57:16 +0500 Subject: [PATCH 16/27] Separate common SOL002 LCM definitions --- .../General_Definitions/SOL002_def.yaml | 1017 ++++++++++++ .../VNFLifecycleManagement.yaml | 62 +- .../SOL002VNFLifecycleManagement_def.yaml | 1412 ++++++++++++++--- 3 files changed, 2271 insertions(+), 220 deletions(-) create mode 100644 src/SOL002/General_Definitions/SOL002_def.yaml diff --git a/src/SOL002/General_Definitions/SOL002_def.yaml b/src/SOL002/General_Definitions/SOL002_def.yaml new file mode 100644 index 00000000..87d054d8 --- /dev/null +++ b/src/SOL002/General_Definitions/SOL002_def.yaml @@ -0,0 +1,1017 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt + +definitions: + Link: + description: > + This type represents a link to a resource using an absolute URI. + type: object + required: + - href + properties: + href: + description: > + URI of another resource referenced from a resource. + Shall be an absolute URI (i.e. a UTI that contains {apiRoot}). + $ref: "#/definitions/Uri" + + NotificationLink: + description: > + This type represents a link to a resource in a notification, using an absolute or relative URI. + type: object + required: + - href + properties: + href: + description: > + URI of a resource referenced from a notification. + Should be an absolute URI (i.e. a URI that contains + {apiRoot}), however, may be a relative URI (i.e. a URI + where the {apiRoot} part is omitted) if the {apiRoot} + information is not available. + $ref: "#/definitions/Uri" + + KeyValuePairs: + description: > + This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, + a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 + of IETF RFC 8259. In the following example, a list of key-value pairs with four keys ("aString", "aNumber", + "anArray" and "anObject") is provided to illustrate that the values associated with different keys can be of + different type. + type: object + + ApiVersionInformation: + description: > + This type represents API version information. + type: object + required: + - uriPrefix + - apiVersions + properties: + uriPrefix: + description: > + Specifies the URI prefix for the API, in the following + form {apiRoot}/{apiName}/{apiMajorVersion}/. + type: string + apiVersions: + description: > + Version(s) supported for the API signaled by the + uriPrefix attribute. + type: array + items: + type: object + required: + - version + properties: + version: + description: > + Identifies a supported version. The value of the + version attribute shall be a version identifier as + specified in clause 9.1 (SOL013). + type: string + isDeprecated: + description: > + If such information is available, this attribute indicates + whether use of the version signaled by the version + attribute is deprecated (true) or not (false). + + A deprecated version is still supported by the API producer but is recommended + not to be used any longer. + When a version is no longer supported, it does not appear in the response body. + type: boolean + retirementDate: + description: > + The date and time after which the API version will no + longer be supported. + This attribute may be included if the value of the + isDeprecated attribute is set to true and shall be + absent otherwise. + $ref: "#/definitions/DateTime" + + VnfInstanceSubscriptionFilter: + description: > + This type represents subscription filter criteria to match VNF + instances. + * NOTE 1: The attributes "vnfdIds" and "vnfProductsFromProviders" are alternatives to reference to VNF instances + that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, + but one alternative should be chosen. + NOTE 2: The attributes "vnfInstanceIds" and "vnfInstanceNames" are alternatives to reference to particular VNF + instances in a filter. They should not be used both in the same filter instance, but one alternative + should be chosen. + type: object + anyOf: + - oneOf: + - required: + - vnfdId + - required: + - vnfProductsFromProviders + - oneOf: + - required: + - vnfInstanceIds + - required: + - vnfInstanceNames + properties: + vnfdIds: + description: > + If present, match VNF instances that were created based on a VNFD + identified by one of the vnfdId values listed in this attribute. See note 1. + type: array + items: + $ref: "#/definitions/Identifier" + vnfProductsFromProviders: + description: > + If present, match VNF instances that belong to VNF products from + certain providers. See note 1. + type: array + items: + type: object + required: + - vnfProvider + properties: + vnfProvider: + description: > + Name of the VNF provider to match. + type: string + vnfProducts: + description: > + If present, match VNF instances that belong to VNF products + with certain product names, from one particular provider. + type: array + items: + type: object + required: + - vnfProductName + properties: + vnfProductName: + description: > + Name of the VNF product to match. + type: string + versions: + description: > + If present, match VNF instances that belong to VNF + products with certain versions and a certain product + name, from one particular provider. + type: array + items: + type: object + required: + - vnfSoftwareVersion + properties: + vnfSoftwareVersion: + description: > + Software version to match. + $ref: "#/definitions/Version" + vnfdVersions: + description: > + If present, match VNF instances that belong to VNF + products with certain VNFD versions, a certain + software version and a certain product name, from + one particular provider. + type: array + items: + $ref: "#/definitions/Version" + vnfInstanceIds: + description: > + If present, match VNF instances with an instance identifier listed + in this attribute. See note 2. + type: array + items: + $ref: "#/definitions/Identifier" + vnfInstanceNames: + description: > + If present, match VNF instances with a VNF Instance Name listed in + this attribute. See note 2. + type: array + items: + type: string + + VimConnectionInfo: + description: > + This type represents parameters to connect to a VIM, a CISM, a CIR or a MCIOP repository for managing + the resources of a VNF instance. + + This structure is used to convey VIM-related, CISM-related, CIR-related, or MCIOP-repository-relate + dparameters over the Or-Vnfm interface. Additional parameters for a VIM, a CISM, a CIR or a MCIOP + repository may be configured into the VNFM by means outside the scope of the present document and + bound to the identifier of that VIM. + + * NOTE 1: If applicable, this attribute also provides information about the resourceGroupIds + that are accessible using a particular set of credentials. See definition of + "resourceGroupId" in clause 9.5.3.3. + * NOTE 2: Once the connectivity between VNFM and VIM, CISM, CIR or MCIOP repository is provided + through a secure connection over HTTP Secure (HTTP over SSL/TLS), and the connection might also be + established through a VPN (for example TLS-based VPN tunnelling) for site-to-site connection, the + "accessInfo" JSON data structure, and the sensitive data related information ("username"/"password" as + required properties for authentication purpose), will be transmitted as plain text through a TLS tunnel + without additional encoding/encryption before transmitting it, making the sensitive data visible to the + endpoint. The base64 encoded certificates are only used by the VNFM to verify the authenticity of the + interface endpoint of the VIM., CISM, CIR or MCIOP repository. + type: object + required: + - vimType + properties: + vimId: + description: > + The identifier of the VIM, CISM, CIR or MCIOP repository + instance. This identifier is managed by the NFVO. + Shall be present to address additional information about + the VIM, CISM, CIR or MCIOP repository if such + information has been configured into the VNFM by + means outside the scope of the present document and + should be absent otherwise. + $ref: "#/definitions/Identifier" + vimType: + description: > + Discriminator for the different types of the VIM + information. + The value of this attribute determines the structure of the + "interfaceInfo" and "accessInfo" attributes, based on the + type of the VIM., CISM, CIR or MCIOP repository. + The set of permitted values is expected to change over + time as new types or versions of VIMs become available. + The ETSI NFV registry of VIM-related information [i.3] + provides access to information about VimConnectionInfo + definitions for various VIM, CISM, CIR or MCIOP + repository types. The structure of the registry is defined in + annex C. + type: string + interfaceInfo: + description: > + Information about the interface or interfaces to the VIM, + CISM, CIR or MCIOP repository, if applicable, such as + the URI of an interface endpoint to communicate with the + VIM, CISM, CIR or MCIOP repository. The applicable + keys are dependent on the content of vimType. + Alternatively, such information may have been configured + into the VNFM and bound to the vimId. + $ref: "#/definitions/KeyValuePairs" + accessInfo: + description: > + Authentication credentials for accessing the VIM, CISM, + CIR or MCIOP repository and other access-related + information such as tenants or infrastructure resource + groups (see note 1). The applicable keys are dependent + on the content of vimType. + If the VimConnectionInfo structure is part of an HTTP + response payload body, sensitive attributes that are + children of this attributes (such as passwords) shall not + be included. + If the VimConnectionInfo structure is part of an HTTP + request payload body, sensitive attributes that are + children of this attribute (such as passwords) shall be + present if they have not been provisioned out of band. + See note 2. + $ref: "#/definitions/KeyValuePairs" + extra: + description: > + VIM, CISM, CIR or MCIOP repository type specific + additional information. The applicable structure, and + whether or not this attribute is available, is dependent on + the content of vimType. + $ref: "#/definitions/KeyValuePairs" + + ResourceHandle: + required: + - resourceId + type: object + description: > + This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. + Information about the resource is available from the VIM. + + * NOTE 1: The information about the VIM connection referenced by the VIM connection id is known to the VNFM. Moreover, + the identifier of the VIM connection provides scope to the resourceId. + + * NOTE 2: The value set of the "vimLevelResourceType" attribute is within the scope of the VIM or the resource provider + and can be used as information that complements the ResourceHandle. + + properties: + vimConnectionId: + description: > + Identifier of the VIM connection to manage the resource. + This attribute shall only be supported and present if VNF-related resource management in direct mode is applicable. + See note 1. + $ref: "#/definitions/Identifier" + resourceProviderId: + description: > + Identifier of the entity responsible for the management of the + resource. This attribute shall only be supported and present when + VNF-related resource management in indirect mode is applicable. The + identification scheme is outside the scope of the present document. + $ref: "#/definitions/Identifier" + resourceId: + description: > + Identifier of the resource in the scope of the VIM or the resource provider. + $ref: "#/definitions/IdentifierInVim" + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or the resource provider. See note 2. + type: string + + VnfExtCpData: + description: > + This type represents configuration information for external CPs created. + * NOTE 1: In case this identifier refers to a CPD with trunking enabled, the external CP instances created + from this CPD will represent ports in a trunk. + * NOTE 2: Within one VNF instance, all VNFC instances created from a particular VDU have the same external + connectivity. Thus, given a particular value of the "cpdId" attribute, there shall be one + "cpConfig" entry for each VNFC instance that has been or can be created from a VDU which includes + a CPD identified by the "cpdId" attribute. If the cpConfig represents a subport in a trunk, + all "cpConfig" entries in this list shall have the same segmentationId, which means they are + connected to the same set of external VLs via the trunk. + * NOTE 3: The map entry value shall be set to "null" in order to delete a "VnfExtCpConfig" entry identified + by a particular key value from the map, i.e. for the disconnection of an existing external + CP instance addressed by cpInstanceId in the deleted map entry from a particular external + virtual link, and deletion of that instance in case it represents a subport. Deleting the + last key from the map removes the affected instance of the "VnfExtCpData" structure from + its parent data structure. + * NOTE 4: If, as defined by the input parameters of a "ChangeVnfFlavour", "ChangeExtVnfConnectivity" or + "ChangeCurrentVnfPkg" operation, a cpConfig map entry identified by a particular map key value + is moved into another "ExtVirtualLinkData" or "VnfExtCpData" structure, this particular cpConfig + map entry may be used by an external CP instance different than the one that has used it before the + operation, or by no external CP instance at all. Renaming a CPD identifier during the "changeCurrentVnfPkg" + operation does not count as moving the related "cpConfig" map entries to a new "extCpData" structure. + + type: object + required: + - cpdId + properties: + cpdId: + description: > + The identifier of the CPD in the VNFD. See note 1. + $ref: "#/definitions/IdentifierInVnfd" + cpConfig: + description: > + Map of instance data that need to be configured on the CP instances + created from the respective CPD. + The key of the map which identifies the individual VnfExtCpConfig entries is of type "IdentifierInVnf" + and is managed by the NFVO. + The entries shall be applied by the VNFM according to the rules of JSON Merge Patch (see IETF RFC 7396). + See notes 2, 3 and 4. + type: object + additionalProperties: + $ref: "#/definitions/VnfExtCpConfig" + + VnfExtCpConfig: + description: > + This type represents an externally provided link port or network address information per instance of an + external connection point. In case a link port is provided, the VNFM shall use that link port when + connecting the external CP to the external VL. In case a link port is not provided, the VNFM shall create + a link port on the external VL, and use that link port to connect the external CP to the external VL. + + * NOTE : The following conditions apply to the attributes "linkPortId" and "cpProtocolData": + 1) Void. + 2) At least one of the "linkPortId" and "cpProtocolData" attributes shall be present for an external CP instance + representing a subport that is to be created, or an external CP instance that is to be created by creating the + corresponding VNFC or VNF instance during the current or a subsequent LCM operation, or for an existing + external CP instance that is to be re-configured or added to a particular external virtual link. + 3) If the "linkPortId" attribute is absent, the VNFM shall create a link port. + 4) If the "cpProtocolData" attribute is absent, the "linkPortId" attribute shall be provided referencing a + precreated link port, and the VNFM can use means outside the scope of the present document to obtain the + pre-configured address information for the connection point from the resource representing the link port. + 5) If both "cpProtocolData" and "linkportId" are provided, the NFVO shall ensure that the + cpProtocolData can be used with the pre-created link port referenced by "linkPortId". + + anyOf: + - required: + - linkPortId + - required: + - cpProtocolData + - required: + - netAttDefResourceId + type: object + properties: + parentCpConfigId: + description: > + Value of the key that identifies the "VnfExtCpConfig" map entry which corresponds to the parent port of the + trunk. Reference to the "VnfExtCpConfig" entry that corresponds to the parent port of the trunk. Only present + in "VnfExtCpConfig" structures that provide configuration information for a CP which represents a sub-port in + a trunk, and if parent ports are supported. + $ref: "#/definitions/IdentifierInVnf" + + linkPortId: + description: > + Identifier of a pre-configured link port to which the external CP + will be associated. See notes 1 and 4. + $ref: "#/definitions/Identifier" + + createExtLinkPort: + description: > + Indicates to the VNFM the need to create a dedicated link port for the external CP. + If set to True, the VNFM shall create a link port. + If set to False, the VNFM shall not create a link port. + This attribute is only applicable for external CP instances without a floating IP address that expose a VIP CP + instance for which a dedicated IP address is allocated. It shall be present in that case and shall be absent otherwise. + type: boolean + + cpProtocolData: + description: > + Parameters for configuring the network protocols on the link port that connects the + CP to a VL. See note. + type: array + items: + $ref: "#/definitions/CpProtocolData" + + CpProtocolData: + description: > + This type represents network protocol data. + * NOTE: This attribute allows to signal the addition of further types of layer and protocol + in future versions of the present document in a backwards-compatible way. In the current + version of the present document, only IP over Ethernet is supported. + type: object + required: + - layerProtocol + properties: + layerProtocol: + description: > + Identifier of layer(s) and protocol(s). Permitted values: IP_OVER_ETHERNET See note. + type: string + enum: + - IP_OVER_ETHERNET + - IP_FOR_VIRTUAL_CP + ipOverEthernet: + description: > + Network address data for IP over Ethernet to assign to the extCP instance. Shall be + present if layerProtocol is equal to "IP_OVER_ETHERNET", and shall be absent otherwise. + $ref: "#/definitions/IpOverEthernetAddressData" + + IpOverEthernetAddressData: + description: > + This type represents network address data for IP over Ethernet. + * NOTE 1: At least one of "macAddress" or "ipAddresses" shall be present. + * NOTE 2: Exactly one of "fixedAddresses", "numDynamicAddresses" or "ipAddressRange" shall be present. + * NOTE 3: If the CP instance represents a subport in a trunk, segmentationId shall be present. + Otherwise it shall not be present. + * NOTE 4: Depending on the NFVI networking infrastructure, the segmentationId may indicate the actual + network segment value (e.g. vlan Id, Vxlan segmentation id, etc.) used in the transport header + of the packets or it may be an identifier used between the application and the NFVI networking + infrastructure to identify the network sub-interface of the trunk port in question. In the latter + case the NFVI infrastructure will map this local segmentationId to whatever segmentationId is + actually used by the NFVI's transport technology. + type: object + anyOf: + - required: + - macAddress + - required: + - ipAddresses + oneOf: + - required: + - fixedAddresses + - required: + - numDynamicAddresses + - required: + - ipAddressRange + properties: + macAddress: + description: > + MAC address. If this attribute is not present, it shall be chosen by + the VIM. See note 1. + $ref: "#/definitions/MacAddress" + segmentationType: + description: > + Specifies the encapsulation type for the traffics coming in and out of the trunk subport. + Permitted values: + - VLAN: the subport uses VLAN as encapsulation type. + - INHERIT: the subport gets it is segmentation type from the network it’s connected to. + This attribute may be present for CP instances that represent subports in a trunk and shall be + absent otherwise. If this attribute is not present for a subport CP instance, default value VLAN shall be used. + type: string + enum: + - VLAN + - INHERIT + segmentationId: + description: > + Identification of the network segment to which the CP instance connects to. See note 3 and note 4. + type: string + ipAddresses: + description: > + List of IP addresses to assign to the CP instance. Each entry + represents IP address data for fixed or dynamic IP address + assignment per subnet. + If this attribute is not present, no IP address shall be assigned. See note 1. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. + Permitted values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + fixedAddresses: + description: > + Fixed addresses to assign (from the subnet defined by + "subnetId" if provided). See note 2. + type: array + items: + $ref: "#/definitions/IpAddress" + numDynamicAddresses: + description: > + Number of dynamic addresses to assign (from the subnet defined + by "subnetId" if provided). See note 2. + type: integer + addressRange: + description: > + An IP address range to be used, e.g. in case of egress + connections. + In case this attribute is present, IP addresses from the range + will be used. See note 2. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + Lowest IP address belonging to the range. + $ref: "#/definitions/IpAddress" + maxAddress: + description: > + Highest IP address belonging to the range. + $ref: "#/definitions/IpAddress" + subnetId: + description: > + Subnet defined by the identifier of the subnet resource in the + VIM. + In case this attribute is present, IP addresses from that + subnet will be assigned; otherwise, IP addresses not bound to + a subnet will be assigned. + $ref: "#/definitions/IdentifierInVim" + + ExtVirtualLinkData: + description: > + This type represents an external VL. + * NOTE 1: The information about the VIM connection referenced by the VIM connection id is known to the VNFM. + Moreover, the identifier of the VIM connection provides scope to the resourceId. + + * NOTE 2: A link port is not needed for an external CP instance that exposes a VIP CP in the following cases: + 1) For a VIP CP directly exposed as an extCP: + 1.1) No dedicated IP address is allocated as VIP address, as indicated in the VNFD. + 1.2) A dedicated IP address is allocated as VIP address, but the NFVO indicates that no port is needed + (createExtLinkPort in VnfExtCpConfig set to false). + 2) For a VIP CP exposed as an extCP via a floating IP address: + 2.1) No dedicated IP address is allocated as VIP address, as indicated in the VNFD, and the VNFC CP + associated to the VIP CP is also exposed via a floating IP address. + + type: object + required: + - id + - resourceId + - extCps + properties: + id: + description: > + The identifier of the external VL instance. The identifier is + assigned by the NFV-MANO entity that manages this VL instance. + $ref: "#/definitions/Identifier" + vimConnectionId: + description: > + Identifier of the VIM connection to manage this resource. This + attribute shall only be supported and present if VNF-related + resource management in direct mode is applicable. See note 1. + $ref: "#/definitions/Identifier" + resourceProviderId: + description: > + Identifies the entity responsible for the management of this + resource. This attribute shall only be supported and present + if VNF-related resource management in indirect mode is applicable. + The identification scheme is outside the scope of the present + document. + $ref: "#/definitions/Identifier" + resourceId: + description: > + The identifier of the resource in the scope of the VIM or the + resource provider. + $ref: "#/definitions/IdentifierInVim" + extCps: + description: > + External CPs of the VNF to be connected to this external VL. Entries in the list of external + CP data that are unchanged need not be supplied if the ExtVirtualLinkData structure is part + of a request or response that modifies the external connectivity. + type: array + items: + $ref: "#/definitions/VnfExtCpData" + extLinkPorts: + description: > + Externally provided link ports to be used to connect external connection points to this external + VL. If this attribute is not present, the VNFM shall create the link ports on the external VL + unless the extCp exposes a VIP CP and a link port is not needed for it based on the conditions + defined below. See note 2. + type: array + items: + $ref: "#/definitions/ExtLinkPortData" + + ScaleInfo: + description: > + This type represents the scale level of a VNF instance related to a scaling aspect. + type: object + required: + - aspectId + - scaleLevel + properties: + aspectId: + description: > + Identifier of the scaling aspect. + $ref: "#/definitions/IdentifierInVnfd" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case the value differs from the vnfdId + attribute of the VnfInstance (e.g. during a "Change + current VNF package" operation or due to its final + failure). + $ref: "#/definitions/IdentifierInVnfd" + scaleToLevel: + description: > + Indicates the scale level. The minimum value shall be 0 + and the maximum value shall be ≤ maxScaleLevel as + described in the VNFD. + $ref: "#/definitions/Identifier" + + Identifier: + description: > + An identifier with the intention of being globally unique. + type: string + + DateTime: + description: > + Date-time stamp. + Representation: String formatted according to IETF RFC 3339. + type: string + format: date-time + + Uri: + description: > + String formatted according to IETF RFC 3986. + type: string + + Boolean: + description: > + The Boolean is a data type having two values (true and false). + type: boolean + + MacAddress: + description: > + A MAC address. Representation: string that consists of groups of two hexadecimal digits, + separated by hyphens or colons. + type: string + format: MAC + + IpAddress: + description: > + An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal + integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that + consists of groups of zero to four hexadecimal digits, separated by colons. + type: string + format: IP + + Version: + description: > + A version. + type: string + + String: + description: > + A string defined in IETF RFC 8259. + type: string + + Number: + description: > + A number defined in IETF RFC 8259. + type: number + + UnsignedInt: + description: > + Unsigned integer number + type: integer + minimum: 0 + + IdentifierInVnfd: + description: > + An identifier that is unique within a VNF descriptor. + type: string + + IdentifierInVim: + description: > + An identifier maintained by the VIM or the CISM or other resource provider. It is + expected to be unique within the VIM instance. + type: string + + IdentifierInVnf: + description: > + An identifier that is unique for the respective type within a VNF + instance, but may not be globally unique. + type: string + + IdentifierLocal: + description: > + An identifier that is unique within a limited local scope other than above listed identifiers, + such as within a complex data structure or within a request-response pair. + Representation: string of variable length. + type: string + + Checksum: #no definition found + description: > + Cheksum description + type: string + +######################################################################################################################## +# TO CHECK IF INCLUDE THESE DATA TYPES IN ANOTHER DEF FILES + + VnfLinkPortData: + description: > + This type represents an externally provided link port to be used to connect a VNFC connection point + to an exernally managed VL. + type: object + required: + - vnfLinkPortId + - resourceHandle + properties: + vnfLinkPortId: + description: > + Identifier of this link port as provided by the entity that has created the link port. + $ref: "#/definitions/Identifier" + resourceHandle: + description: > + Resource handle of the virtualised resource that realizes the link port. + $ref: "#/definitions/ResourceHandle" + + ExtLinkPortData: + description: > + This type represents an externally provided link port to be used to + connect an external connection point to an external VL. + * NOTE: The value of "trunkResourceId" is scoped by the value of "vimConnectionId" in the "resourceHandle" attribute. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + Identifier of this link port as provided by the entity that has + created the link port. + $ref: "#/definitions/Identifier" + resourceHandle: + description: > + Reference to the virtualised resource realizing this link port. + $ref: "#/definitions/ResourceHandle" + + trunkResourceId: + description: > + Identifier of the trunk resource in the VIM. + Shall be present if the present link port corresponds to the parent + port that the trunk resource is associated with. See note. + $ref: "#/definitions/IdentifierInVim" + + GrantedLcmOperationType: + description: > + The enumeration GrantedLcmOperationType defines the permitted values + to represent VNF lifecycle operation types in grant requests. + Value | Description + ------|------------ + INSTANTIATE | Represents the "Instantiate VNF" LCM operation. + SCALE | Represents the "Scale VNF" LCM operation. + SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM operation. + CHANGE_FLAVOUR | Represents the "Change VNF Flavour" LCM operation. + TERMINATE | Represents the "Terminate VNF" LCM operation. + HEAL | Represents the "Heal VNF" LCM operation. + OPERATE | Represents the "Operate VNF" LCM operation. + CHANGE_EXT_CONN | Represents the "Change external VNF connectivity" LCM operation. + CHANGE_VNFPKG | Represents the "Change current VNF package" LCM operation. + CREATE_SNAPSHOT | Represents the "Create VNF snapshot" LCM operation. + REVERT_TO_SNAPSHOT | Represents the "Revert to VNF snapshot" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - SCALE_TO_LEVEL + - CHANGE_FLAVOUR + - TERMINATE + - HEAL + - OPERATE + - CHANGE_EXT_CONN + - CHANGE_VNFPKG + - CREATE_SNAPSHOT + - REVERT_TO_SNAPSHOT + + LcmOperationType: + description: > + The enumeration LcmOpType defines the permitted values to represent + VNF lifecycle operation types in VNF lifecycle management operation + occurrence resources and VNF lifecycle management operation occurrence + notifications. + + Value | Description + ------|------------ + INSTANTIATE | Represents the "Instantiate VNF" LCM operation. + SCALE | Represents the "Scale VNF" LCM operation. + SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM operation. + CHANGE_FLAVOUR | Represents the "Change VNF Flavour" LCM operation. + TERMINATE | Represents the "Terminate VNF" LCM operation. + HEAL | Represents the "Heal VNF" LCM operation. + OPERATE | Represents the "Operate VNF" LCM operation. + CHANGE_EXT_CONN | Represents the "Change external VNF connectivity" LCM operation. + MODIFY_INFO | Represents the "Modify VNF Information" LCM operation. + CREATE_SNAPSHOT | Represents the "Create VNF Snapshot" LCM operation. + REVERT_TO_SNAPSHOT | Represents the “Revert-To VNF Snapshot" LCM operation. + CHANGE_VNFPKG | Represents the "Change current VNF package" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - SCALE_TO_LEVEL + - CHANGE_FLAVOUR + - TERMINATE + - HEAL + - OPERATE + - CHANGE_EXT_CONN + - MODIFY_INFO + - CREATE_SNAPSHOT + - REVERT_TO_SNAPSHOT + - CHANGE_VNFPKG + + ProblemDetails: + #SOL003 location: 4.3.5.3 + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807, the "status" and + "detail" attributes are mandated to be included by the present document, + to ensure that the response contains additional textual information about + an error. IETF RFC 7807 foresees extensibility of the + "ProblemDetails" type. It is possible that particular APIs in the present + document, or particular implementations, define extensions to define + additional attributes that provide more information about the error. + The description column only provides some explanation of the meaning to + Facilitate understanding of the design. For a full description, see + IETF RFC 7807. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 that identifies the + problem type. It is encouraged that the URI provides human-readable + documentation for the problem (e.g. using HTML) when dereferenced. + When this member is not present, its value is assumed to be + "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should not + change from occurrence to occurrence of the problem, except for + purposes of localization. If type is given and other than + "about:blank", this attribute shall also be provided. + A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of the + problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. + The HTTP status code ([RFC7231], Section 6) generated by the origin + server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of the + problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + #TODO: How to express "any additional attributes"? + + SubscriptionAuthentication: + description: > + * NOTE: The clientId and clientPassword passed in a subscription shall not be the same as the clientId and + clientPassword that are used to obtain authorization for API requests. Client credentials may differ between + subscriptions. The value of clientPassword should be generated by a random process + type: object + required: + - authType + properties: + authType: + description: > + Defines the types of Authentication / Authorization which the API + consumer is willing to accept when receiving a notification. + Permitted values: + * BASIC: In every HTTP request to the notification endpoint, use + HTTP Basic authentication with the client credentials. + * OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the + notification endpoint, use an OAuth 2.0 Bearer token, obtained + using the client credentials grant type. + * TLS_CERT: Every HTTP request to the notification endpoint is sent + over a mutually authenticated TLS session, i.e. not only the + server is authenticated, but also the client is authenticated + during the TLS tunnel setup. + type: array + items: + type: string + enum: + - BASIC + - OAUTH2_CLIENT_CREDENTIALS + - TLS_CERT + paramsBasic: + description: > + Parameters for authentication/authorization using BASIC. + Shall be present if authType is "BASIC" and the contained + information has not been provisioned out of band. + Shall be absent otherwise. + type: object + properties: + userName: + description: > + Username to be used in HTTP Basic authentication. Shall be + present if it has not been provisioned out of band. + type: string + password: + description: > + Password to be used in HTTP Basic authentication. Shall be + present if it has not been provisioned out of band. + type: string + paramsOauth2ClientCredentials: + description: > + Parameters for authentication/authorization using + OAUTH2_CLIENT_CREDENTIALS. + Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the + contained information has not been provisioned out of band. + Shall be absent otherwise. + type: object + properties: + clientId: + description: > + Client identifier to be used in the access token request of the + OAuth 2.0 client credentials grant type. + Shall be present if it has not been provisioned out of band. See note. + type: string + clientPassword: + description: > + Client password to be used in the access token request of the + OAuth 2.0 client credentials grant type. + Shall be present if it has not been provisioned out of band. See note. + type: string + tokenEndpoint: + description: > + The token endpoint from which the access token can be obtained. + Shall be present if it has not been provisioned out of band. + $ref: "#/definitions/Uri" + LcmCoordResultType: + description: > + The enumeration LcmCoordResultType defines the permitted values + to represent the result of executing an LCM coordination action. + The coordination result also implies the action to be performed by + the VNFM as the follow-up to this coordination. + Value | Description + ------|------------ + CONTINUE | The related LCM operation shall be continued, staying in the state "PROCESSING". + ABORT | The related LCM operation shall be aborted by transitioning into the state "FAILED_TEMP". + CANCELLED | The coordination action has been cancelled upon request of the API consumer, i.e. the VNFM. + The related LCM operation shall be aborted by transitioning into the state "FAILED_TEMP". + type: string + enum: + - CONTINUE + - ABORT + - CANCELLED + + LcmOperationForCoordType: + description: > + The enumeration LcmOperationForCoordType defines the permitted values to + represent VNF lifecycle operation types in VNF LCM operation coordination actions. + * INSTANTIATE: Represents the "Instantiate VNF" LCM operation. + * SCALE: Represents the "Scale VNF" LCM operation. + * SCALE_TO_LEVEL: Represents the "Scale VNF to Level" LCM operation. + * CHANGE_FLAVOUR: Represents the "Change VNF Flavour" LCM operation. + * TERMINATE: Represents the "Terminate VNF" LCM operation. + * HEAL: Represents the "Heal VNF" LCM operation. + * OPERATE: Represents the "Operate VNF" LCM operation. + * CHANGE_EXT_CONN: Represents the "Change external VNF connectivity" LCM operation. + * MODIFY_INFO: Represents the "Modify VNF Information" LCM operation. + * CREATE_SNAPSHOT: Represents the "Create VNF Snapshot" LCM operation. + * REVERT_TO_SNAPSHOT: Represents the "Revert To VNF Snapshot" LCM operation. + * CHANGE_VNFPKG: Represents the "Change current VNF package" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - SCALE_TO_LEVEL + - CHANGE_FLAVOUR + - TERMINATE + - HEAL + - OPERATE + - CHANGE_EXT_CONN + - MODIFY_INFO + - CREATE_SNAPSHOT + - REVERT_TO_SNAPSHOT + - CHANGE_VNFPKG \ No newline at end of file diff --git a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 7c74c906..8f5a0857 100644 --- a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -1369,7 +1369,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CreateVnfRequest + $ref: "definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/CreateVnfRequest" required: true VnfInstanceModificationRequest: @@ -1377,7 +1377,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfInfoModificationRequest + $ref: definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/VnfInfoModificationRequest required: true VnfInstanceInstantiationRequest: @@ -1393,7 +1393,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ScaleVnfRequest + $ref: "definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/ScaleVnfRequest" required: true VnfInstanceScaleToLevelRequest: @@ -1401,7 +1401,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ScaleVnfToLevelRequest + $ref: "definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/ScaleVnfToLevelRequest" required: true VnfInstanceChangeFlavourRequest: @@ -1461,7 +1461,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelMode + $ref: "definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/CancelMode" VnfLcmSubscriptionRequest: description: | @@ -1469,7 +1469,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscriptionRequest + $ref: "definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/LccnSubscriptionRequest" required: true VnfInstanceCreateSnapshotRequest: @@ -1613,7 +1613,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" IndividualVnfInstance.Get.200: description: | @@ -1684,7 +1684,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfIdentifierDeletionNotification + $ref: "definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/VnfIdentifierDeletionNotification" IndividualVnfInstance.Delete.409: description: | @@ -1723,7 +1723,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" IndividualVnfInstance.Patch.202: description: | @@ -1802,7 +1802,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" InstantiateVnfInstance.Post.202: description: | @@ -1882,7 +1882,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" ScaleVnfInstance.Post.202: description: | @@ -1963,7 +1963,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" ScaleVnfInstanceToLevel.Post.202: description: | @@ -2045,7 +2045,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" VnfInstanceChangeFlavour.Post.202: description: | @@ -2129,7 +2129,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" TerminateVnfInstance.Post.202: description: | @@ -2211,7 +2211,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" HealVnfInstance.Post.202: description: | @@ -2293,7 +2293,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" OperateVnfInstance.Post.202: description: | @@ -2375,7 +2375,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" VnfInstanceChangeExtConn.Post.202: description: | @@ -2456,7 +2456,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" VnfInstanceChangeVnfPkg.Post.202: description: | @@ -2536,7 +2536,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" VnfLcmOpOccs.Get.200: description: | @@ -2673,7 +2673,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" VnfLcmOpOccRollback.Post.202: description: | @@ -2737,7 +2737,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" VnfLcmOpOccFail.Post.200: description: | @@ -2810,7 +2810,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" VnfLcmOpOccCancel.Post.202: description: | @@ -2873,7 +2873,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" Subscriptions.Get.200: description: | @@ -2905,7 +2905,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription + $ref: "definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription" Subscriptions.Post.201: description: | @@ -2944,7 +2944,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription + $ref: "definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription" Subscriptions.Post.442: description: | @@ -2983,7 +2983,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" IndividualSubscription.Get.200: description: | @@ -3014,7 +3014,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription + $ref: "definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription" IndividualSubscription.Delete.204: description: | @@ -3115,7 +3115,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" VnfInstanceCreateSnapshot.Post.422: description: | @@ -3154,7 +3154,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" VnfInstanceRevertToSnapshot.Post.202: description: | @@ -3234,7 +3234,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" VnfSnapshots.Post.201: description: | @@ -3415,4 +3415,4 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" \ No newline at end of file + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" \ No newline at end of file diff --git a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml index 6436153c..4627272a 100644 --- a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml +++ b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml @@ -46,7 +46,7 @@ definitions: id: description: > Identifier of the VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfInstanceName: description: > Name of the VNF instance. @@ -60,7 +60,7 @@ definitions: vnfdId: description: > Identifier of the VNFD on which the VNF instance is based. See note 1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfProvider: description: > Provider of the VNF and the VNFD. The value is copied from the VNFD. @@ -72,11 +72,11 @@ definitions: vnfSoftwareVersion: description: > Software version of the VNF. The value is copied from the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Version" vnfdVersion: description: > Identifies the version of the VNFD. The value is copied from the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Version" vnfConfigurableProperties: description: > Additional VNF-specific attributes that provide the current values @@ -109,7 +109,7 @@ definitions: LCM operations, such as the InstantiateVnfRequest structure. Further, these configurable properties can be created, modified or deleted with the PATCH method. In addition, the provisions in clause 5.7 shall apply. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" instantiationState: description: > The instantiation state of the VNF. @@ -131,11 +131,11 @@ definitions: flavourId: description: > Identifier of the VNF deployment flavour applied to this VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" vnfState: description: > The state of the VNF instance. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfOperationalStateType" + $ref: "#/definitions/VnfOperationalStateType" scaleStatus: description: > Scale status of the VNF, one entry per aspect. Represents for every @@ -144,14 +144,14 @@ definitions: See clause B.2 for an explanation of VNF scaling. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ScaleInfo" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ScaleInfo" maxScaleLevels: description: > Maximum allowed scale levels of the VNF, one entry per aspect. This attribute shall be present if the VNF supports scaling. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ScaleInfo" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ScaleInfo" extCpInfo: description: > Information about the external CPs exposed by the VNF instance. When trunking is enabled, the list of @@ -160,7 +160,7 @@ definitions: type: array minItems: 1 items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfExtCpInfo" + $ref: "#/definitions/VnfExtCpInfo" vipCpInfo: description: > VIP CPs that are part of the VNF instance. Shall be present when that particular VIP @@ -169,13 +169,13 @@ definitions: May be present otherwise. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VipCpInfo" + $ref: "#/definitions/VipCpInfo" extVirtualLinkInfo: description: > Information about the external VLs the VNF instance is connected to. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ExtVirtualLinkInfo" + $ref: "#/definitions/ExtVirtualLinkInfo" extManagedVirtualLinkInfo: description: > Information about the externally managed internal VLs of the VNF instance. See note 5 and note 6. @@ -193,7 +193,7 @@ definitions: Active monitoring parameters. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/MonitoringParameter" + $ref: "#/definitions/MonitoringParameter" localizationLanguage: description: > Information about localization language of the VNF (includes e.g. @@ -229,7 +229,7 @@ definitions: Information about the VNFC instances. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfcInfo" + $ref: "#/definitions/VnfcInfo" metadata: description: > Additional VNF-specific attributes that provide metadata describing the VNF instance. @@ -247,7 +247,7 @@ definitions: passed in the CreateVnfRequest structure (see clause 5.5.2.3). These attributes can be created, modified or removed with the PATCH method. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" extensions: description: > Additional VNF specific attributes that affect the lifecycle management of this VNF instance. @@ -273,7 +273,7 @@ definitions: Further, these attributes can be created, modified or deleted with the PATCH method. In addition, the provisions in clause 5.7 shall apply. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" _links: description: > Links to resources related to this resource. @@ -283,81 +283,81 @@ definitions: properties: self: description: URI of this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" indicators: description: Indicators related to this VNF instance, if applicable. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" instantiate: description: > Link to the "Instantiate VNF task" resource, if the related operation is possible based on the current status of this VNF instance resource (i.e. VNF instance in NOT_INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" terminate: description: > Link to the "Terminate VNF task" resource, if the related operation is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" scale: description: > Link to the "Scale VNF task" resource, if the related operation is supported for this VNF instance, and is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" scaleToLevel: description: > Link to the "Scale VNF to Level task" resource, if the related operation is supported for this VNF instance, and is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" changeFlavour: description: > Link to the "Change VNF flavour task" resource, if the related operation is supported for this VNF instance, and is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" heal: description: > Link to the "Heal VNF task" resource, if the related operation is supported for this VNF instance, and is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" operate: description: > Link to the "Operate VNF task" resource, if the related operation is supported for this VNF instance, and is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" changeExtConn: description: > Link to the "Change external VNF connectivity task" resource, if the related operation is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" createSnapshot: description: > Link to the "Create VNF snapshot task" resource, if the related operation is supported for this VNF instance and is possible based on the current status of this VNF instance resource (i.e., VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" revertToSnapshot: description: > Link to the "Revert to VNF snapshot task" resource, if the related operation is supported for this VNF instance and is possible based on the current status of this VNF instance resource (i.e., VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" changeCurrentVnfPkg: description: > Link to the "Change current VNF package task" resource, if the related operation is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" InstantiateVnfRequest: description: > @@ -374,13 +374,12 @@ definitions: flavourId: description: > Identifier of the VNF deployment flavour to be instantiated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" instantiationLevelId: description: > - Identifier of the instantiation level of the deployment flavour to be - instantiated. If not present, the default instantiation level as - declared in the VNFD is instantiated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + Identifier of the instantiation level of the deployment flavour to be instantiated. If not present, + the default instantiation level as declared in the VNFD is instantiated. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" extVirtualLinks: description: > Information about external VLs to connect the VNF to, including configuration information @@ -391,7 +390,7 @@ definitions: aspects, to the external VLs. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ExtVirtualLinkData" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ExtVirtualLinkData" extManagedVirtualLinks: description: > Information about external VLs to connect the VNF to. See note. @@ -408,19 +407,19 @@ definitions: Additional input parameters for the instantiation process, specific to the VNF being instantiated, as declared in the VNFD as part of "InstantiateVnfOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" extensions: description: > If present, this attribute provides modifications to the default values, as obtained from the VNFD, of the "extensions" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling extensions during the operation are defined in clause 5.4.4.3.1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" vnfConfigurableProperties: description: > If present, this attribute provides modifications to the default values, as obtained from the VNFD, of the "vnfConfigurableProperties" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling configurable properties during the operation are defined in clause 5.4.4.3.1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" ChangeVnfFlavourRequest: description: > @@ -437,13 +436,13 @@ definitions: newFlavourId: description: > Identifier of the VNF deployment flavour to be instantiated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" instantiationLevelId: description: > Identifier of the instantiation level of the deployment flavour to be instantiated. If not present, the default instantiation level as declared in the VNFD is instantiated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" extVirtualLinks: description: > Information about external VLs to connect the VNF to, including configuration information @@ -457,7 +456,7 @@ definitions: instance, fully scaled out in all scaling aspects, to the external VLs. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ExtVirtualLinkData" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ExtVirtualLinkData" extManagedVirtualLinks: description: > Information about external VLs to connect the VNF to. See note. @@ -468,19 +467,19 @@ definitions: description: > Additional input parameters for the flavour change process, specific to the VNF being modified, as declared in the VNFD as part of "ChangeVnfFlavourOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" extensions: description: > If present, this attribute provides modifications to the values of the "extensions" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling extensions during the operation, are defined in clause 5.4.7.3.1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" vnfConfigurableProperties: description: > If present, this attribute provides modifications to the values of the “vnfConfigurableProperties” attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling VNF configurable properties during the operation, are defined in clause 5.4.7.3.1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" TerminateVnfRequest: description: > @@ -518,7 +517,7 @@ definitions: description: > Additional parameters passed by the EM as input to the termination process, specific to the VNF being terminated, as declared in the VNFD as part of "TerminateVnfOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" HealVnfRequest: type: object @@ -530,7 +529,7 @@ definitions: whole VNF and not a specific VNFC instance. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" cause: description: > Indicates the reason why a healing procedure is required. @@ -539,7 +538,7 @@ definitions: description: > Additional parameters passed by the EM as input to the healing process, specific to the VNF being healed as declared in the VNFD as part of "HealVnfOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" healScript: description: > Provides link to a script that should be executed as part @@ -566,12 +565,12 @@ definitions: Cardinality can be "0" to denote that the request applies to the whole VNF and not a specific VNFC instance. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" changeStateTo: description: > The desired operational state (i.e. started or stopped) to change the VNF to. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfOperationalStateType" + $ref: "#/definitions/VnfOperationalStateType" stopType: description: > It signals whether forceful or graceful stop is requested. See note @@ -588,7 +587,7 @@ definitions: description: > Additional parameters passed by the EM as input to the process, specific to the VNF of which the operation status is changed, as declared in the VNFD as part of "OperateVnfOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" ChangeExtVnfConnectivityRequest: description: > @@ -611,13 +610,13 @@ definitions: external VLs. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ExtVirtualLinkData" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ExtVirtualLinkData" additionalParams: description: > Additional parameters passed by the EM as input to the process, specific to the VNF of which the external connectivity is changed, as declared in the VNFD as part of "ChangeExtVnfConnectivityOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" ChangeCurrentVnfPkgRequest: description: > @@ -635,7 +634,7 @@ definitions: vnfdId: description: > Identifier of the VNFD which defines the destination VNF Package for the change. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" extVirtualLinks: description: > Information about external VLs to connect the VNF to, including configuration information for @@ -649,7 +648,7 @@ definitions: external VLs. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ExtVirtualLinkData" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ExtVirtualLinkData" extManagedVirtualLinks: description: > Information about internal VLs that are managed by other entities than the VNFM. See note. @@ -660,19 +659,19 @@ definitions: description: > Additional parameters passed by the EM as input to the process, specific to the VNF of which the underlying VNF package is changed, as declared in the VNFD as part of "ChangeCurrentVnfPkgOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" extensions: - descriptions: > + description: > If present, this attribute provides modifications to the values of the "extensions" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling extensions during the operation, and needed passed parameter values in case of conflicts, are defined in clause 5.4.11a.3.1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" vnfConfigurableProperties: description: > If present, this attribute provides modifications to the values of the “vnfConfigurableProperties” attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling VNF configurable properties during the operation, and needed passed parameter values in case of conflicts, are defined in clause 5.4.11a.3.1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" VnfInfoModificationRequest: description: > @@ -693,25 +692,25 @@ definitions: vnfdId: description: > New value of the "vnfdId" attribute in "VnfInstance". The value "null" is not permitted. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfConfigurableProperties: description: > Modifications of the "vnfConfigurableProperties" attribute in "VnfInstance". If present, these modifications shall be applied according to the rules of JSON Merge PATCH (see IETF RFC 7396 [15]). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" metadata: description: > Modifications of the "metadattametadata" attribute in "VnfInstance". If present, these modifications shall be applied according to the rules of JSON Merge PATCH (see IETF RFC 7396 [15]). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" extensions: description: > Modifications of the "extensions" attribute in "VnfInstance". If present, these modifications shall be applied according to the rules of JSON Merge PATCH (see IETF RFC 7396 [15]). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" vnfcInfoModifications: description: > Modifications of certain entries in the "vnfcInfo" attribute array in the @@ -734,7 +733,7 @@ definitions: the data type of "newEntry (refer to clause 5.5.3.24 for the data type "VnfcInfoModifications"). type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfcInfoModifications" + $ref: "#/definitions/VnfcInfoModifications" CreateVnfSnapshotRequest: description: > @@ -746,22 +745,22 @@ definitions: vnfSnapshotInfoId: description: > Identifier of the individual VNF snapshot resource to which the VNF Snapshot is to be associated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfcInstanceId: description: > Identifier of the VNFC instance to be snapshotted. Each identifier references the "id" attribute in a "VnfcInfo" structure. If this attribute is provided, only a snapshot of the referred VNFC instance shall be created. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" additionalParams: description: > Additional input parameters for the snapshot creation process, specific for the VNF being “snapshotted”, as declared in the VNFD as part of "CreateSnapshotVnfOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" userDefinedData: description: > User defined data for the VNF snapshot. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" RevertToVnfSnapshotRequest: description: > @@ -771,22 +770,22 @@ definitions: vnfSnapshotInfoId: description: > Identifier of the “individual VNF snapshot” resource with the information of the VNF snapshot to be reverted to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfcInstanceId: description: > List of identifiers of the VNFC instance to be reverted. Each identifier references the "id" attribute in a "VnfcInfo" structure. Shall be present if the request is for reverting a specific VNFC instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfcSnapshotInfoId: description: > Identifier of the VNFC snapshot information with the information of the VNFC snapshot to be reverted to. Shall only be present if the "vnfcInstanceId" is present. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" additionalParams: description: > Additional input parameters for the revert to VNF snapshot process, specific for the VNF being “reverted”, as declared in the VNFD as part of “RevertToSnapshotVnfOpConfig” defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" CreateVnfSnapshotInfoRequest: description: | @@ -800,7 +799,7 @@ definitions: vnfSnapshotPkgId: description: | Identifier of the VNF snapshot package information held by the NFVO. See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" VnfSnapshotInfo: description: > @@ -812,12 +811,12 @@ definitions: id: description: > Identifier of the individual VNF snapshot resource. This identifier is allocated by the VNFM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfSnapshotPkgId: description: | Identifier of the VNF snapshot package information held by the EM. Shall be present when the “Individual VNF snapshot" resource is created from a VNF snapshot package extraction. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfSnapshot: description: > Information about the VNF snapshot, content and/or references to its content. Shall be present when the @@ -834,13 +833,13 @@ definitions: self: description: > URI of this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" takenFrom: description: > Link to the VNF instance from which this snapshot was taken. Shall be present when the "Individual VNF snapshot" resource is associated to a VNF snapshot created via the corresponding "Create VNF snapshot" task resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" VnfSnapshot: description: > @@ -857,24 +856,24 @@ definitions: id: description: > Identifier of the VNF Snapshot. This identifier is allocated by the VNFM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfInstanceId: description: > Identifier of the snapshotted VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" creationStartedAt: description: > Timestamp indicating when the VNF snapshot creation has been started by the VNFM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" creationFinishedAt: description: > Timestamp indicating when the VNF snapshot has been completed by the VNFM. Shall be present once the VNF snapshot creation has been completed. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" vnfdId: description: > Identifier of the VNFD in use at the time the snapshot of the VNF instance has been created. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfInstance: description: > VNF Instance information of the snapshotted VNF instance. This is a copy of the individual VNF instance resource. @@ -888,7 +887,7 @@ definitions: userDefinedData: description: > User defined data for the VNF snapshot. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" VnfcSnapshotInfo: description: > @@ -914,31 +913,31 @@ definitions: the VNFM and is unique within the scope of a VNF snapshot. The attribute also identifies the compute snapshot image associated to this VNFC snapshot within the context of a referred VNF snapshot. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfcInstanceId: description: > Identifier of the snapshotted VNFC instance. The identifier references the "id" attribute in a "VnfcInfo" structure. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" creationStartedAt: description: > Timestamp indicating when the VNF snapshot creation has been started by the VNFM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" creationFinishedAt: description: > Timestamp indicating when the VNFC snapshot has been completed. Shall be present once the VNFC snapshot creation has been completed by the VNFM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" vnfcResourceInfoId: description: > Reference to the "VnfcResourceInfo" structure in the "VnfInstance" structure that represents the resources of the snapshotted VNFC instance. A snapshot of that structure is available in the "vnfInstance" attribute of the "VnfSnapshot" structure. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfcInfo" + $ref: "#/definitions/VnfcInfo" computeSnapshotResource: description: > Reference to a compute snapshot resource. See note 1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" storageSnapshotResources: description: > Mapping of the storage resources associated to the VNFC with the storage snapshot resources. @@ -951,15 +950,15 @@ definitions: Reference to the "VirtualStorageResourceInfo" structure in the "VnfInstance" structure that represents the virtual storage resource. The attribute also identifies the storage snapshot image associated to this VNFC snapshot within the context of a referred VNF snapshot - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" storageSnapshotResource: description: > Reference to a storage snapshot resource. See note 2. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" userDefinedData: description: > User defined data for the VNF snapshot. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" StopType: description: > @@ -989,29 +988,29 @@ definitions: The identifier of the externally-managed internal VL instance. The identifier is assigned by the NFV-MANO entity that manages this VL instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfVirtualLinkDescId: description: > The identifier of the VLD in the VNFD for this VL. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" vimConnectionId: description: > Identifier of the VIM connection to manage this resource. This attribute shall only be supported and present if VNF-related resource management in direct mode is applicable. See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" resourceProviderId: description: > Identifies the entity responsible for the management of this resource. This attribute shall only be supported and present if VNF-related resource management in indirect mode is applicable. The identification scheme is outside the scope of the present document. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" resourceId: description: > The identifier of the resource in the scope of the VIM or the resource provider. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVim" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVim" ExtManagedVirtualLinkInfo: type: object @@ -1026,27 +1025,27 @@ definitions: externally-managed VL information instance. The identifier is assigned by the NFV-MANO entity that manages this VL instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfVirtualLinkDescId: description: > Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" vnfdId: description: > Identifier of the VNFD. Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change current VNF package" operation or due to its final failure). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" networkResource: description: > Reference to the VirtualNetwork resource providing this VL. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" vnfLinkPorts: description: > Link ports of this VL. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLinkPortInfo" + $ref: "#/definitions/VnfLinkPortInfo" VnfcResourceInfo: description: > @@ -1070,33 +1069,33 @@ definitions: id: description: > Identifier of this VnfcResourceInfo instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" vduId: description: > Reference to the applicable VDU in the VNFD. See note 1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" vnfdId: description: > Identifier of the VNFD. Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change current VNF package" operation or due to its final failure). See note 4. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" computeResource: description: > Reference to the VirtualCompute resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" storageResourceIds: description: > References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" reservationId: description: > The reservation identifier applicable to the resource. It shall be present when an applicable reservation exists. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfcCpInfo: description: > All the CPs of the VNFC instance. @@ -1111,16 +1110,16 @@ definitions: description: > Identifier of this VNFC CP instance and the associated array entry. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" cpdId: description: > Identifier of the VDU CPD, cpdId, in the VNFD. See note 1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" vnfExtCpId: description: > Identifier of the related external CP. Shall be present when the VNFC CP is exposed as an external CP of the VNF instance or connected to an external CP of the VNF instance (see note 2) and shall be absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" cpProtocolInfo: description: > Network protocol information for this CP. May be omitted if the VNFC CP is exposed as an external CP. @@ -1128,28 +1127,28 @@ definitions: See note 3. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CpProtocolInfo" + $ref: "#/definitions/CpProtocolInfo" vnfLinkPortId: description: > Identifier of the "VnfLinkPortInfo" structure in the "VnfVirtualLinkResourceInfo" or "ExtManagedVirtualLinkInfo" structure. Shall be present if the CP is associated to a link port on an internal VL (including externally-managed internal VL) of the VNF instance and shall be absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" parentCpId: description: > Identifier of another VNFC CP instance that corresponds to the parent port of a trunk that the present VNFC CP instance participates in. Shall be provided if the present CP instance participates in a trunk as subport. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" metadata: description: > Metadata about this CP. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" metadata: description: > Metadata about this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" VnfVirtualLinkResourceInfo: description: > @@ -1169,26 +1168,26 @@ definitions: id: description: > Identifier of this VnfVirtualLinkResourceInfo instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" vnfVirtualLinkDescId: description: > Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" vnfdId: description: > Identifier of the VNFD. Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change current VNF package" operation or due to its final failure). See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" networkResource: description: > Reference to the VirtualNetwork resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" reservationId: description: > The reservation identifier applicable to the resource. It shall be present when an applicable reservation exists. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfLinkPorts: description: > Links ports of this VL. @@ -1197,11 +1196,11 @@ definitions: May be present otherwise. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLinkPortInfo" + $ref: "#/definitions/VnfLinkPortInfo" metadata: description: > Metadata about this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" VirtualStorageResourceInfo: description: > @@ -1221,30 +1220,30 @@ definitions: id: description: > Identifier of this VirtualStorageResourceInfo instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" virtualStorageDescId: description: > Identifier of the VirtualStorageDesc in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" vnfdId: description: > Identifier of the VNFD. Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change current VNF package" operation or due to its final failure). See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" storageResource: description: > Reference to the VirtualStorage resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" reservationId: description: > The reservation identifier applicable to the resource. It shall be present when an applicable reservation exists. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" metadata: description: > Metadata about this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" AffectedVnfc: description: > @@ -1261,17 +1260,17 @@ definitions: description: > Identifier of the Vnfc instance, identifying the applicable "vnfcResourceInfo" entry in the "VnfInstance" data type. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" vduId: description: > Identifier of the related VDU in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" vnfdId: description: > Identifier of the VNFD. Shall be present in case of a "change current VNF Package" to identify whether the affected VNFC instance is associated to a VDU which is referred from the source or destination VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" changeType: description: > Signals the type of change. Permitted values: @@ -1292,13 +1291,13 @@ definitions: Reference to the VirtualCompute resource. Detailed information is (for new and modified resources) or has been (for removed resources) available from the VIM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" metadata: description: > Metadata about this resource. The content of this attribute shall be a copy of the content of the "metadata" attribute of the VnfcResourceInfo structure. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" affectedVnfcCpIds: description: > Identifiers of CP(s) of the VNFC instance that were affected by the @@ -1308,7 +1307,7 @@ definitions: May be present for further affected CPs of the VNFC instance. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" addedStorageResourceIds: description: > References to VirtualStorage resources that have been added. Each @@ -1317,7 +1316,7 @@ definitions: least one storage resource was added to the VNFC. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" removedStorageResourceIds: description: > References to VirtualStorage resources that have been removed. @@ -1328,7 +1327,7 @@ definitions: from the VNFC. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" AffectedVirtualLink: description: > @@ -1350,17 +1349,17 @@ definitions: description: > Identifier of the virtual link instance, identifying the applicable "vnfVirtualLinkResourceInfo" or "extManagedVirtualLinkInfo" entry in the "VnfInstance" data type. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" vnfVirtualLinkDescId: description: > Identifier of the related VLD in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" vnfdId: description: > Identifier of the VNFD. Shall be present in case of a "change current VNF Package" to identify whether the affected VL instance is associated to a VLD which is referred from the source or destination VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" changeType: description: > Signals the type of change. Permitted values: @@ -1389,7 +1388,7 @@ definitions: Reference to the VirtualNetwork resource. Detailed information is (for new and modified resources) or has been (for removed resources) available from the VIM. See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" vnfLinkPortIds: description: > Identifiers of the link ports of the affected VL related to the change. Each identifier references a @@ -1402,14 +1401,14 @@ definitions: See note. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" metadata: description: > Metadata about this resource. The content of this attribute shall be a copy of the content of the "metadata" attribute of the applicable "VnfVirtualLinkResourceInfo" structure if such structure is referenced by the "id" attribute and it has metadata. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" AffectedVirtualStorage: description: > @@ -1426,17 +1425,17 @@ definitions: description: > Identifier of the storage instance, identifying the applicable "virtualStorageResourceInfo" entry in the "VnfInstance" data type. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" virtualStorageDescId: description: > Identifier of the related VirtualStorage descriptor in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" vnfdId: description: > Identifier of the VNFD. Shall be present in case of a "change current VNF Package" to identify whether the affected virtual storage instance is associated to a VirtualStorage descriptor which is referred from the source or destination VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" changeType: description: > Signals the type of change. Permitted values: @@ -1457,13 +1456,13 @@ definitions: Reference to the VirtualStorage resource. Detailed information is (for new and modified resources) or has been (for removed resources) available from the VIM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" metadata: description: > Metadata about this resource. The content of this attribute shall be a copy of the content of the "metadata" attribute of the VirtualStorageResourceInfo structure. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" VnfLcmOpOcc: description: > @@ -1504,42 +1503,42 @@ definitions: id: description: > Identifier of this VNF lifecycle management operation occurrence. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" operationState: description: > The state of the LCM operation. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LcmOperationStateType" + $ref: "#/definitions/LcmOperationStateType" stateEnteredTime: description: > Date-time when the current state has been entered. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" startTime: description: > Date-time of the start of the operation. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" vnfInstanceId: description: > Identifier of the VNF instance to which the operation applies - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" grantId: description: > Identifier of the grant related to this VNF LCM operation occurrence. Shall be set to the value of the "id" attribute in the "Grant" representing the associated "Individual Grant", if such grant exists. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" operation: description: > Type of the actual LCM operation represented by this VNF LCM operation occurrence. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/LcmOperationType" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/LcmOperationType" isAutomaticInvocation: description: > Set to true if this VNF LCM operation occurrence has been triggered by an automated procedure inside the VNFM (i.e. ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf triggered by auto-heal). Set to false otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Boolean" operationParams: description: > Input parameters of the LCM operation. This attribute shall be @@ -1564,12 +1563,12 @@ definitions: If the VNF LCM operation occurrence is in "STARTING", "PROCESSING" or "ROLLING_BACK" state and the operation is being cancelled, this attribute shall be set to true. Otherwise, it shall be set to false. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Boolean" cancelMode: description: > The mode of an ongoing cancellation. Shall be present when isCancelPending=true, and shall be absent otherwise. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelModeType" + $ref: "#/definitions/CancelModeType" error: description: > If "operationState" is "FAILED_TEMP" or "FAILED" or "operationState" @@ -1577,7 +1576,7 @@ definitions: "operationState" was "FAILED_TEMP", this attribute shall be present and contain error information, unless it has been requested to be excluded via an attribute selector. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" resourceChanges: description: > This attribute contains information about the cumulative changes to @@ -1624,24 +1623,24 @@ definitions: the execution of the lifecycle management operation. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedVipCp" + $ref: "#/definitions/AffectedVipCp" changedExtConnectivity: description: > Information about changed external connectivity, if applicable. See note 1. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ExtVirtualLinkInfo" + $ref: "#/definitions/ExtVirtualLinkInfo" modificationsTriggeredByVnfPkgChange: description: > Information about performed changes of "VnfInstance" attributes triggered by changing the current VNF package, if applicable. Shall be absent if the "operation" attribute is different from "CHANGE_VNFPKG". See note 1 and note 2. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ModificationsTriggeredByVnfPkgChange" + $ref: "#/definitions/ModificationsTriggeredByVnfPkgChange" vnfSnapshotInfoId: description: > Identifier of the "individual VNF snapshot" resource. Shall be present if applicable to the type of LCM operation, i.e., if the value of the "operation" attribute is either "CREATE_SNAPSHOT" or "REVERT_TO_SNAPSHOT". - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" lcmCoordinations: description: > Information about LCM coordination actions (see clause 10) related to this LCM operation occurrence. @@ -1660,27 +1659,27 @@ definitions: this attribute refers to the {coordinationId} URI variable in the "Location" header of the "202 Accepted" HTTP response to the POST request that has initiated the coordination action (see clause 10.4.2.3.1). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" coordinationActionName: description: > Indicator of the actual coordination action. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" coordinationResult: description: > The result of executing the coordination action which also implies the action to be performed by the VNFM as the result of this coordination. See note 4. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/LcmCoordResultType" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/LcmCoordResultType" startTime: description: > The time when the VNFM has received the confirmation that the coordination action has been started. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" endTime: description: > The end time when the VNFM has received the confirmation that the coordination action has finished or has been cancelled, or the time when a coordination action has timed out. Shall be present for a coordination action that has finished or timed out (see note 4) and shall be absent if the coordination is ongoing. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" endpointType: description: > The endpoint type used by this coordination action. @@ -1696,7 +1695,7 @@ definitions: The end of the delay period. This attribute shall be present if the last known HTTP response related to this coordination has contained a "Retry-After" header, and shall be absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" rejectedLcmCoordinations: description: > Information about LCM coordination actions (see clause 10) that were rejected by 503 error which @@ -1711,11 +1710,11 @@ definitions: coordinationActionName: description: > Indicator of the actual coordination action. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" rejectionTime: description: > The time when the VNFM has received the 503 response that rejects the actual coordination. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" endpointType: description: > The endpoint type used by this coordination action. @@ -1729,7 +1728,7 @@ definitions: delay: description: > The end of the delay period, as calculated from the startTime and "Retry-After" header. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" warnings: description: > Warning messages that were generated while the operation was executing. @@ -1750,44 +1749,44 @@ definitions: self: description: > URI of this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" vnfInstance: description: > Link to the VNF instance that the operation applies to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" grant: description: > Link to the grant for this operation, if one exists. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" cancel: description: > Link to the task resource that represents the "cancel" operation for this VNF LCM operation occurrence, if cancelling is currently allowed. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" retry: description: > Link to the task resource that represents the "retry" operation for this VNF LCM operation occurrence, if retrying is currently allowed. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" rollback: description: > Link to the task resource that represents the "rollback" operation for this VNF LCM operation occurrence, if rolling back is currently allowed. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" fail: description: > Link to the task resource that represents the "fail" operation for this VNF LCM operation occurrence, if declaring as failed is currently allowed. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" vnfSnapshot: description: > Link to the VNF snapshot resource, if the VNF LCM operation occurrence is related to a VNF snapshot. Shall be present if operation="CREATE_SNAPSHOT" or operation="REVERT_TO_SNAPSHOT". - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" AffectedExtLinkPort: description: > @@ -1803,7 +1802,7 @@ definitions: description: > Identifier of the link port, identifying the applicable "extLinkPorts" entry in the "ExtVirtualLinkInfo" data type (see clause 5.5.3.2). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" changeType: description: > Signals the type of change. @@ -1818,12 +1817,12 @@ definitions: extCpInstanceId: description: > Identifier of the related external CP instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" resourceHandle: description: > Reference to the link port resource. Detailed information is (for added resources) or has been (for removed resources) available from the VIM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" VnfInfoModifications: description: > @@ -1854,23 +1853,23 @@ definitions: If present, this attribute signals modifications of the "vnfConfigurableProperties" attribute in "VnfInstance" as defined in clause 5.5.2.12. In addition, the provisions in clause 5.7 shall apply.. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" metadata: description: > If present, this attribute signals modifications of the "metadata" attribute in "VnfInstance" , as defined in clause 5.5.2.12.. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" extensions: description: > If present, this attribute signals modifications of the "extensions" attribute in "VnfInstance", as defined in clause 5.5.2.12. In addition, the provisions in clause 5.7 shall apply.. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" vnfdId: description: > If present, this attribute signals modifications of the "vnfdId" attribute in "VnfInstance", as defined in clause 5.5.2.12.. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfProvider: description: > If present, this attribute signals modifications of the @@ -1885,12 +1884,12 @@ definitions: description: > If present, this attribute signals modifications of the "vnfSoftwareVersion" attribute in "VnfInstance". See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Version" vnfdVersion: description: > If present, this attribute signals modifications of the "vnfdVersion" attribute in "VnfInstance". See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Version" vnfcInfoModifications: description: > If present, this attribute signals modifications of certain @@ -1899,4 +1898,1039 @@ definitions: in clause 5.5.2.12. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfcInfoModifications" \ No newline at end of file + $ref: "#/definitions/VnfcInfoModifications" + + CreateVnfRequest: + type: object + required: + - vnfdId + properties: + vnfdId: + description: > + Identifier that identifies the VNFD which defines the VNF instance to + be created. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + vnfInstanceName: + description: > + Human-readable name of the VNF instance to be created. + type: string + vnfInstanceDescription: + description: > + Human-readable description of the VNF instance to be created. + type: string + metadata: + description: > + If present, this attribute provides additional initial values, overriding those obtained from the VNFD, for + the "metadata" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling metadata + during the operation are defined in clause 5.4.2.3.1. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" + + ScaleVnfRequest: + description: > + This type represents request parameters for the "Scale VNF" operation. It shall comply with the provisions defined in + table 5.5.2.5-1. See clause B.2 in annex B for an explanation of VNF scaling. + type: object + required: + - type + - aspectId + properties: + type: + description: > + Indicates the type of the scale operation requested. + Permitted values: + * SCALE_OUT: adding additional VNFC instances to the VNF to increase + capacity + * SCALE_IN: removing VNFC instances from the VNF in order to release + unused capacity. + type: string + enum: + - SCALE_OUT + - SCALE_IN + aspectId: + description: > + Identifier of the scaling aspect. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" + numberOfSteps: + description: > + Number of scaling steps to be executed as part of this Scale VNF + operation. It shall be a positive number and the default value + shall be 1. + type: integer + default: 1 + additionalParams: + description: > + Additional parameters passed by the NFVO as input to the scaling + process, specific to the VNF being scaled, as declared in the VNFD + as part of "ScaleVnfOpConfig" defined in ETSI GS NFV-IFA 011 [7]. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" + + ScaleVnfToLevelRequest: + description: > + This type represents request parameters for the "Scale VNF to Level" operation. + It shall comply with the provisions defined in table 5.5.2.6-1. See clause B.2 + for an explanation of VNF scaling. + + NOTE: Either the instantiationLevelId attribute or the scaleInfo attribute shall + be included. + type: object + anyOf: + - oneOf: + - required: + - instantiationLevelId + - required: + - scaleInfo + properties: + instantiationLevelId: + description: > + Identifier of the target instantiation level of the current + deployment flavour to which the VNF is requested to be scaled. + See note. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" + scaleInfo: + description: > + For each scaling aspect of the current deployment flavour, indicates + the target scale level to which the VNF is to be scaled. + See note. + type: array + items: + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ScaleInfo" + additionalParams: + description: > + Additional parameters passed by the NFVO as input to the scaling + process, specific to the VNF being scaled, as declared in the + VNFD as part of "ScaleVnfToLevelOpConfig" defined in ETSI GS NFV-IFA 011 [7]. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" + + CancelMode: + description: > + This type represents a parameter to select the mode of cancelling an + ongoing VNF LCM operation occurrence. + type: object + required: + - cancelMode + properties: + cancelMode: + description: > + Cancellation mode to apply. + $ref: "#/definitions/CancelModeType" + + LccnSubscriptionRequest: + description: > + This type represents a subscription request related to notifications + about VNF lifecycle changes. + type: object + required: + - callbackUri + properties: + filter: + description: > + Filter settings for this subscription, to define the subset of all + notifications this subscription relates to. A particular + notification is sent to the subscriber if the filter matches, or if + there is no filter. + $ref: "#/definitions/LifecycleChangeNotificationsFilter" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Uri" + authentication: + description: > + Authentication parameters to configure the use of Authorization when + sending notifications corresponding to this subscription, as defined + in clause 8.3.4 of ETSI GS NFV-SOL 013. + This attribute shall only be present if the subscriber requires + authorization of notifications. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/SubscriptionAuthentication" + verbosity: + description: > + This attribute signals the requested verbosity of LCM operation occurrence notifications. If it is not present, + it shall default to the value "FULL". + $ref: "#/definitions/LcmOpOccNotificationVerbosityType" + + LccnSubscription: + description: > + This type represents a subscription related to notifications about VNF + lifecycle changes. + type: object + required: + - id + - callbackUri + - verbosity + - _links + properties: + id: + description: > + Identifier of this subscription resource. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + filter: + description: > + Filter settings for this subscription, to define the subset of all + notifications this subscription relates to. A particular + notification is sent to the subscriber if the filter matches, or if + there is no filter. + $ref: "#/definitions/LifecycleChangeNotificationsFilter" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Uri" + verbosity: + description: > + This attribute signals the verbosity of LCM operation occurrence notifications. + $ref: "#/definitions/LcmOpOccNotificationVerbosityType" + _links: + description: > + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: > + URI of this resource. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" + + ExtVirtualLinkInfo: + description: > + This type represents information about an external VL. It shall comply with the provisions defined in table 5.5.3.2-1. + + NOTE: This attribute reflects the current configuration information that has resulted from merging into this attribute + the "VnfExtCpData" information which was passed as part of the "ExtVirtualLinkData" structure in the input of the + most recent VNF LCM operation such as "InstantiateVnfRequest", "ChangeExtVnfConnectivityRequest", "ChangeVnfFlavourRequest" + or "ChangeCurrentVnfPkgRequest", or in the Grant response. If applying such change results in an empty list of + "currentVnfExtCpData" structure instances, the affected instance of "ExtVirtualLinkInfo" shall be removed from its + parent data structure. + type: object + required: + - id + - resourceHandle + - currentVnfExtCpData + properties: + id: + description: > + Identifier of the external VL and the related external VL + information instance. + The identifier is assigned by the NFV-MANO entity that manages this + VL instance. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + resourceHandle: + description: > + Reference to the resource realizing this VL. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" + extLinkPorts: + description: > + Link ports of this VL. + type: array + items: + $ref: "#/definitions/ExtLinkPortInfo" + currentVnfExtCpData: + description: > + Allows the API consumer to read the current CP configuration information for the connection of external CPs + to the external virtual link. See note. + type: array + items: + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/VnfExtCpData" + + VnfLinkPortInfo: + description: > + This type represents a link port of an internal VL of a VNF. It shall comply with the provisions + defined in table 5.5.3.8 1. + + NOTE 1: Either cpInstanceId with cpInstanceType set to "EXT_CP" or any combination of cpInstanceId + with cpInstanceType set to "VNFC_CP" and vipCpInstanceId (i.e. one or both of them) shall be + present for a VnfLinkPortInfo. In case both cpInstanceId with cpInstanceType set to "VNFC_CP" + and vipCpInstanceId are present, the two different CP instances share the linkport. + NOTE 2: Annex A.4 of ETSI GS NFV-IFA 007 provides examples for configurations where both vipCpInstanceId + and vnfcCpInstanceId are present (UC#5 and UC#5-b), only vnfcCpInstanceId is present (UC#2), or + only vipCpInstanceId is present (UC6 and UC#6-b). + NOTE 3: The value of "trunkResourceId" is scoped by the value of "vimConnectionId" in the "resourceHandle" + attribute. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + Identifier of this link port as provided by the entity that has created the link port. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + resourceHandle: + description: > + Reference to the virtualised resource realizing this link + port. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" + cpInstanceId: + description: > + When the link port is used for external connectivity by the VNF, this attribute represents the + identifier of the external CP associated with this link port. + + When the link port is used for internal connectivity in the VNF, this attribute represents the + identifier of the VNFC CP to be connected to this link port. + + Shall be present when the link port is used for external connectivity by the VNF. + May be present if used to reference a VNFC CP instance. + There shall be at most one link port associated with any external connection point instance or + internal connection point (i.e. VNFC CP) instance. + The value refers to an "extCpInfo" item in the VnfInstance or a "vnfcCpInfo" item of a "vnfcResourceInfo" + item in the VnfInstance. See note 1. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + cpInstanceType: + description: > + Type of the CP instance that is identified by cpInstanceId. + Shall be present if "cpInstanceId" is present and shall be absent otherwise. + + Permitted values: + - VNFC_CP: The link port is connected to a VNFC CP. + - EXT_CP: The link port is associated to an external CP. + See note 1. + type: string + enum: + - VNFC_CP + - EXT_CP + vipCpInstanceId: + description: > + VIP CP instance of the VNF connected to this link port. May be present. + See notes 1, and 2. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + trunkResourceId: + description: > + Identifier of the trunk resource in the VIM. + Shall be present if the present link port corresponds to the parent port that the trunk resource is associated with. + See note 3. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVim" + + ExtLinkPortInfo: + description: > + This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to + an NS VL. It shall comply with the provisions defined in table 5.5.3.9-1. + + NOTE 1: The use cases UC#4 and UC#5 in clause A.4 of ETSI GS NFV-IFA 007 provide examples for such a configuration. + NOTE 2: The value of "trunkResourceId" is scoped by the value of "vimConnectionId" in the "resourceHandle" attribute. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + Identifier of this link port as provided by the entity that has + created the link port. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + resourceHandle: + description: > + Reference to the virtualised resource realizing this link + port. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" + cpInstanceId: + description: > + Identifier of the external CP of the VNF connected to this link + port. There shall be at most one link port associated with any + external connection point instance. The value refers to an + "extCpInfo" item in the VnfInstance. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + secondaryCpInstanceId: + description: > + Additional external CP of the VNF connected to this link port. + If present, this attribute shall refer to a "secondary" ExtCpInfo item in the VNF instance that exposes a virtual + IP CP instance which shares this linkport with the external CP instance referenced by the "cpInstanceId" attribute. + See note 1. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + trunkResourceId: + description: > + Identifier of the trunk resource in the VIM. + Shall be present if the present link port corresponds to the parent port that the trunk resource is associated with. + See note 2. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVim" + + CpProtocolInfo: + description: > + This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses. + It shall comply with the provisions defined in table 5.5.3.9b-1. + + NOTE: This attribute allows to signal the addition of further types of layer and protocol in future versions of the + present document in a backwards-compatible way. In the current version of the present document, only IP over + Ethernet is supported. + type: object + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and protocol(s) associated to the network address information. Permitted values: + IP_OVER_ETHERNET. + See note. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + IP addresses over Ethernet to assign to the extCP instance. Shall be + present if layerProtocol is equal to " IP_OVER_ETHERNET", and shall + be absent otherwise. + $ref: "#/definitions/IpOverEthernetAddressInfo" + + IpOverEthernetAddressInfo: + description: > + This type represents information about a network address that has been assigned. + It shall comply with the provisions defined in table 5.5.3.10-1. + + NOTE 1: At least one of "macAddress" or "ipAddresses" shall be present. + NOTE 2: Exactly one of "addresses" or "addressRange" shall be present. + NOTE 3: If the Cp instance represents a subport in a trunk, segmentationId shall be present. + Otherwise it shall not be present. + NOTE 4: Depending on the NFVI networking infrastructure, the segmentationId may indicate the + actual network segment value (e.g. vlan Id, Vxlan segmentation id, etc.) used in the + transport header of the packets or it may be an identifier used between the application + and the NFVI networking infrastructure to identify the network sub-interface of the trunk + port in question. In the latter case the NFVI infrastructure will map this local segmentationId + to whatever segmentationId is actually used by the NFVI’s transport technology. + type: object + anyOf: + - required: + - macAddress + - required: + - ipAddresses + oneOf: + - required: + - addresses + - required: + - addressRange + properties: + macAddress: + description: > + MAC address, if assigned. See note 1. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/MacAddress" + segmentationId: + description: > + Identification of the network segment to which the Cp instance connects to. See notes 3 and 4. + type: string + ipAddresses: + description: > + Addresses assigned to the CP instance. Each entry represents IP addresses assigned by fixed or + dynamic IP address assignment per subnet. See note 1. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. + Permitted values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the subnet defined by "subnetId" if provided). See note 2. + type: array + items: + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IpAddress" + isDynamic: + description: > + Indicates whether this set of addresses was assigned + dynamically (true) or based on address information provided as + input from the API consumer (false). Shall be present if + "addresses" is present and shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g. in case of egress connections. See note 2. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + Lowest IP address belonging to the range. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IpAddress" + maxAddress: + description: > + Highest IP address belonging to the range + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IpAddress" + subnetId: + description: > + Subnet defined by the identifier of the subnet resource in + the VIM. + In case this attribute is present, IP addresses are bound + to that subnet. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVim" + + MonitoringParameter: + type: object + required: + - id + - performanceMetric + properties: + id: + description: > + Identifier of the monitoring parameter defined in the VNFD. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change + current VNF package" operation or due to its final failure). + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + name: + description: > + Human readable name of the monitoring parameter, as defined in the + VNFD. + type: string + performanceMetric: + description: > + Performance metric that is monitored. This attribute shall contain the + related "Measurement Name" value as defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + + LifecycleChangeNotificationsFilter: + description: > + This type represents a subscription filter related to notifications about VNF lifecycle changes. + It shall comply with the provisions defined in table 5.5.3.12-1. + At a particular nesting level in the filter structure, the following applies: All attributes shall + match in order for the filter to match (logical "and" between different filter attributes). + If an attribute is an array, the attribute shall match if at least one of the values in the array + matches (logical "or" between the values of one filter attribute). + + NOTE: The permitted values of the "notificationTypes" attribute are spelled exactly as the names of + the notification types to facilitate automated code generation systems. + type: object + properties: + vnfInstanceSubscriptionFilter: + description: > + Filter criteria to select VNF instances about which to notify. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/VnfInstanceSubscriptionFilter" + notificationTypes: + description: > + Match particular notification types. + + Permitted values: + - VnfLcmOperationOccurrenceNotification + - VnfIdentifierCreationNotification + - VnfIdentifierDeletionNotification + See note. + type: array + items: + type: string + enum: + - VnfLcmOperationOccurrenceNotification + - VnfIdentifierCreationNotification + - VnfIdentifierDeletionNotification + operationTypes: + description: > + Match particular VNF lifecycle operation types for the notification + of type VnfLcmOperationOccurrenceNotification. + May be present if the "notificationTypes" attribute contains the + value "VnfLcmOperationOccurrenceNotification", and shall be absent + otherwise. + type: array + items: + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/LcmOperationType" + operationStates: + description: > + Match particular LCM operation state values as reported in + notifications of type VnfLcmOperationOccurrenceNotification. + May be present if the "notificationTypes" attribute contains the + value "VnfLcmOperationOccurrenceNotification", and shall be absent + otherwise. + type: array + items: + $ref: "#/definitions/LcmOperationStateType" + + LccnLinks: + description: > + This type represents the links to resources that a notification can + contain. + type: object + required: + - vnfInstance + - subscription + properties: + vnfInstance: + description: > + Link to the resource representing the VNF instance to which the + notified change applies. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" + subscription: + description: > + Link to the related subscription. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" + vnfLcmOpOcc: + description: > + Link to the VNF lifecycle management operation occurrence that this + notification is related to. Shall be present if there is a related + lifecycle operation occurrence. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" + + VnfExtCpInfo: + description: > + This type represents information about an external CP of a VNF. + It shall comply with the provisions defined in table 5.5.3.17 1. + + NOTE 1: The attributes "associatedVnfcCpId", "associatedVipCpId" and "associatedVnfVirtualLinkId" + are mutually exclusive. Exactly one shall be present. + NOTE 2: An external CP instance is not associated to a link port in the cases indicated for the + “extLinkPorts” attribute in clause 4.4.1.11. + type: object + required: + - id + - cpdId + - cpConfigId + - cpProtocolInfo + oneOf: + - required: + - associatedVnfcCpId + - required: + - associatedVipCpId + - required: + - associatedVnfVirtualLinkId + properties: + id: + description: > + Identifier of the external CP instance and the related information instance. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + cpdId: + description: > + Identifier of the external CPD, VnfExtCpd, in the VNFD. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" + cpConfigId: + description: > + Identifier that references the applied "VnfExtCpConfig" entry in the "cpConfig" map of the "currentVnfExtCpData" + in the "ExtVirtualLinkInfo" structure. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change + current VNF package" operation or due to its final failure). + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + cpProtocolInfo: + description: > + Network protocol information for this CP. + type: array + items: + $ref: "#/definitions/CpProtocolInfo" + extLinkPortId: + description: > + Identifier of the "ExtLinkPortInfo" structure inside the "ExtVirtualLinkInfo" structure. + Shall be present if the CP is associated to a link port. See note 2. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + metadata: + description: > + Metadata about this external CP. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" + associatedVnfcCpId: + description: > + Identifier of the "vnfcCpInfo" structure in "VnfcResourceInfo" structure that represents the VNFC CP + which is exposed by this external CP instance, either directly or via a floating IP address. + Shall be present in case this CP instance maps to a VNFC CP. See note 1. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + associatedVipCpId: + description: > + Identifier of the VIP CP instance that is exposed as this VnfExtCp instance, either directly or via a + floating IP address, and the related "VipCpInfo" structure in "VnfInstance". Shall be present if the + cpdId of this VnfExtCp has a vipCpd attribute. See note 1. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + associatedVnfVirtualLinkId: + description: > + Identifier of the "VnfVirtualLinkResourceInfo" structure that represents the internal VL or of the + "ExtManagedVirtualLinkInfo" structure that represents the externally-managed internal VL which is + exposed by this external CP instance. Shall be present in case this CP instance maps to an internal + VL (including externally-managed internal VL). See note 1. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + + VnfOperationalStateType: + description: > + STARTED: The VNF instance is up and running. + STOPPED: The VNF instance has been shut down. + type: string + enum: + - STARTED + - STOPPED + + LcmOperationStateType: + description: > + STARTING: The LCM operation is starting. + PROCESSING: The LCM operation is currently in execution. + COMPLETED: The LCM operation has been completed successfully. + FAILED_TEMP: The LCM operation has failed and execution has stopped, + but the execution of the operation is not considered to be closed. + FAILED: The LCM operation has failed and it cannot be retried or rolled back, + as it is determined that such action won't succeed. + ROLLING_BACK: The LCM operation is currently being rolled back. + ROLLED_BACK: The LCM operation has been successfully rolled back, + i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible. + type: string + enum: + - STARTING + - PROCESSING + - COMPLETED + - FAILED_TEMP + - FAILED + - ROLLING_BACK + - ROLLED_BACK + + CancelModeType: + description: > + Cancellation mode. + GRACEFUL: If the VNF LCM operation occurrence is in "PROCESSING" or + "ROLLING_BACK" state, the VNFM shall not start any new resource + management operation and shall wait for the ongoing resource management + operations in the underlying system, typically the VIM, to finish + execution or to time out. After that, the VNFM shall put the operation + occurrence into the FAILED_TEMP state. + If the VNF LCM operation occurrence is in "STARTING" state, the VNFM + shall not start any resource management operation and shall wait for + the granting request to finish execution or time out. After that, the + VNFM shall put the operation occurrence into the ROLLED_BACK state. + FORCEFUL: If the VNF LCM operation occurrence is in "PROCESSING" or + "ROLLING_BACK" state, the VNFM shall not start any new resource + management operation, shall cancel the ongoing resource management + operations in the underlying system, typically the VIM, and shall wait + for the cancellation to finish or to time out. After that, the VNFM + shall put the operation occurrence into the FAILED_TEMP state. + If the VNF LCM operation occurrence is in "STARTING" state, the VNFM + shall not start any resource management operation and put the operation + occurrence into the ROLLED_BACK state. + type: string + enum: + - GRACEFUL + - FORCEFUL + +######################################################################################################################## + VnfIdentifierCreationNotification: + description: > + This type represents a VNF identifier creation notification, which + informs the receiver of the creation of a new "Individual VNF instance" resource and + the associated VNF instance identifier. + This notification shall be triggered by the VNFM when it has created an + "Individual VNF instance" resource and the associated VNF instance identifier. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - vnfInstanceId + - _links + properties: + id: + description: > + Identifier of the VNF instance. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "VnfIdentifierCreationNotification" for this notification type. + type: string + enum: + - VnfIdentifierCreationNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" + vnfInstanceId: + description: > + The created VNF instance identifier. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + _links: + description: > + Links to resources related to this notification. + $ref: "#/definitions/LccnLinks" + + VnfIdentifierDeletionNotification: + description: > + This type represents a VNF identifier deletion notification, which + informs the receiver of the deletion of a new "Individual VNF instance" resource and + the associated VNF instance identifier. + This notification shall be triggered by the VNFM when it has deleted an + "Individual VNF instance" resource and the associated VNF instance identifier. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - vnfInstanceId + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "VnfIdentifierDeletionNotification" for this notification type. + type: string + enum: + - VnfIdentifierDeletionNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" + vnfInstanceId: + description: > + The deleted VNF instance identifier. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + _links: + description: > + Links to resources related to this notification. + $ref: "#/definitions/LccnLinks" + + VnfcInfoModifications: + description: > + This type represents modifications of an entry in an array of "VnfcInfo" objects. + * NOTE: The attribute "id" in this data type represents the same identifier as the attribute + "vnfcInstanceId" in other related data types in the present document. For reasons of backward + compatibility, this misalignment is not corrected. + type: object + required: + - id + - vnfcConfigurableProperties + properties: + id: + description: > + Identifier of the VNFC instance of which the information is to be modified. + The identifier references the "id" attribute in a "VnfcInfo" structure. See note. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + vnfcConfigurableProperties: + description: > + Changes of the configurable properties of the VNFC instance. + When this structure is part of a request, the modifications signalled in this attribute + shall be applied according to the rules of JSON Merge Patch (see IETF RFC 7396). + In addition, the provisions in clause 5.7 shall apply. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" + + VnfcInfo: + description: > + This type represents the information about a VNFC instance that is part of a VNF instance. + * NOTE: This allows to represent the error condition that a VNFC instance has lost its resources. + type: object + required: + - id + - vduId + - vnfcState + properties: + id: + description: > + Identifier of the VNFC instance. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + vduId: + description: > + Reference to the applicable VDU in the VNFD. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + vnfcResourceInfoId: + description: > + Identifier of the VnfcResourceInfo instance representing + the virtualised resources used by this VNFC instance. See note. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + vnfcState: + description: > + Identifier of the VnfcResourceInfo instance representing + the virtualised resources used by this VNFC instance. + State of the VNFC instance. + Permitted values: + • STARTED: The VNFC instance is up and + running. + • STOPPED: The VNFC instance has been shut down + type: string + enum: + - STARTED + - STOPPED + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + vnfcConfigurableProperties: + description: > + Current values of the configurable properties of the + VNFC instance. + Configurable properties referred in this attribute are + declared in the VNFD. + This attribute can be modified with the PATCH method. + In addition, the provisions in clause 5.7 shall apply. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" + + ModificationsTriggeredByVnfPkgChange: + description: > + This type represents attribute modifications that were performed on an "Individual VNF instance" resource + when changing the current VNF package. The attributes that can be included consist of those requested to + be modified explicitly in the "ChangeCurrentVnfPkgRequest" data structure, and additional attributes of the + "VnfInstance" data structure that were modified implicitly during the operation. + The "ModificationsTriggeredByVnfPkgChange" data type shall comply with the provisions defined in table 5.5.3.21-1. + + NOTE 1: This attribute represents the delta (semantics as per IETF RFC 7396, JSON Merge Patch) between the value + of the attribute at the start of the "Change current VNF package" operation and the value of the attribute + at its completion. + NOTE 2: If present, this attribute (which depends on the value of the "vnfdId" attribute) was modified implicitly + during the related operation and contains a copy of the value of the related attribute from the VNFD in the + VNF Package identified by the "vnfdId" attribute. + type: object + properties: + vnfConfigurableProperties: + description: > + This attribute signals the modifications of the "vnfConfigurableProperties" attribute in "VnfInstance" performed + by the operation and shall be present if that attribute was modified during the operation. See note 1. + In addition, the provisions in clause 5.7 shall apply. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" + metadata: + description: > + This attribute signals the modifications of the "metadata" attribute in "VnfInstance" performed by the operation and + shall be present if that attribute was modified during the operation. See note 1. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" + extensions: + description: > + This attribute signals the modifications of the "extensions" attribute in "VnfInstance" performed by the operation and + shall be present if that attribute was modified during the operation. See note 1. + In addition, the provisions in clause 5.7 shall apply. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" + vnfdId: + description: > + If present, this attribute signals the new value of the "vnfdId" attribute in "VnfInstance". + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + vnfProvider: + description: > + If present, this attribute signals the new value of the "vnfProvider" attribute in "VnfInstance". See note 2. + type: string + vnfProductName: + description: > + If present, this attribute signals the new value of the "vnfProductName" attribute in "VnfInstance". See note 2. + type: string + vnfSoftwareVersion: + description: > + If present, this attribute signals the new value of the "vnfSoftwareVersion" attribute in "VnfInstance". See note 2. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Version" + vnfdVersion: + description: > + If present, this attribute signals the new value of the "vnfdVersion" attribute in "VnfInstance". See note 2. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Version" + vimConnectionInfo: + description: > + If present, this attribute signals the changes to VIM connection info that were passed in the related + "ChangeCurrentVnfPkgRequest" structure. The provisions for sensitive information defined in clause + 4.4.1.6 apply. + type: object + additionalProperties: + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/VimConnectionInfo" + + LcmOpOccNotificationVerbosityType: + description: > + The enumeration LcmOpOccNotificationVerbosityType provides values to control the verbosity of LCM operation + occurrence notifications. + * FULL: This signals a full notification which contains all change details. + * SHORT: This signals a short notification which omits large-volume change details to reduce the size of data to + be sent via the notification mechanism. + type: string + enum: + - FULL + - SHORT + + AffectedVipCp: + description: > + This type provides information about added, deleted and modified virtual IP CP instances. + type: object + required: + - cpInstanceId + - cpdId + - changeType + properties: + cpInstanceId: + description: > + Identifier of the virtual IP CP instance and the related "VipCpInfo" structure in "VnfInstance". + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + + cpdId: + description: > + Identifier of the VipCpd in the VNFD. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" + + vnfdId: + description: > + Reference to the VNFD. + Shall be present in case of a "change current VNF Package" to + identify whether the affected virtual CP instance is associated + to a VipCpd which is referred from the source or destination VNFD. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + + changeType: + description: > + Signals the type of change. + Permitted values: + - ADDED + - REMOVED + - MODIFIED + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + + VipCpInfo: + description: > + This type provides information related to virtual IP (VIP) CP. It shall comply with the provisions + defined in table 5.5.3.28-1. + + NOTE 1: It is possible that there is no associated VnfcCp because the VIP CP is available but not + associated yet. + NOTE 2: If only the value or the presence of this attribute is changed in the "VipCpInfo" structure + by an LCM operation occurrence, this does not represent a change that requires including a related + "AffectedVipCp" structure in the VNF LCM operation occurrence notifications or the "VnfLcmOpOcc" + structure related to this LCM operation occurrence. + type: object + required: + - cpInstanceId + - cpdId + properties: + cpInstanceId: + description: > + Identifier of this VIP CP instance and of this VipCpInfo. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + cpdId: + description: > + Identifier of the VIP Connection Point Descriptor, VipCpd, in the VNFD. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case the value differs from the vnfdId attribute of the VnfInstance + (e.g. during a "Change current VNF package" operation or due to its final failure). See note 2. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + vnfExtCpId: + description: > + When the VIP CP is exposed as external CP of the VNF, the identifier of this external VNF CP instance. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + cpProtocolInfo: + description: > + Protocol information for this CP. There shall be one cpProtocolInfo for layer 3. + There may be one cpProtocolInfo for layer 2. + type: array + items: + $ref: "#/definitions/CpProtocolInfo" + associatedVnfcCpIds: + description: > + Identifiers of the VnfcCps that share the virtual IP addresse allocated to the VIP CP instance. See note. + type: array + items: + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + vnfLinkPortId: + description: > + Identifier of the "VnfLinkPortInfo" structure in the "VnfVirtualLinkResourceInfo" or + "ExtManagedVirtualLinkInfo" structure. Shall be present if the CP is associated to a + link port on an internal VL (including externally-managed internal VL). + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + metadata: + description: > + Metadata about this VIP CP. + type: array + items: + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" \ No newline at end of file -- GitLab From 8f5657967aa0e2e858d8686c3e7dabe1d3d5397e Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Mon, 31 Oct 2022 11:54:37 +0500 Subject: [PATCH 17/27] Separate common SOL003 LCM definitions --- .../General_Definitions/SOL003_def.yaml | 993 ++++++++++++ .../VNFLifecycleManagement.yaml | 110 +- .../SOL003VNFLifecycleManagement_def.yaml | 1340 ++++++++++++++--- 3 files changed, 2147 insertions(+), 296 deletions(-) create mode 100644 src/SOL003/General_Definitions/SOL003_def.yaml diff --git a/src/SOL003/General_Definitions/SOL003_def.yaml b/src/SOL003/General_Definitions/SOL003_def.yaml new file mode 100644 index 00000000..e20b1a6d --- /dev/null +++ b/src/SOL003/General_Definitions/SOL003_def.yaml @@ -0,0 +1,993 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt + +definitions: + Link: + description: > + This type represents a link to a resource using an absolute URI. + type: object + required: + - href + properties: + href: + description: > + URI of another resource referenced from a resource. + Shall be an absolute URI (i.e. a UTI that contains {apiRoot}). + $ref: "#/definitions/Uri" + + NotificationLink: + description: > + This type represents a link to a resource in a notification, using an absolute or relative URI. + type: object + required: + - href + properties: + href: + description: > + URI of a resource referenced from a notification. + Should be an absolute URI (i.e. a URI that contains + {apiRoot}), however, may be a relative URI (i.e. a URI + where the {apiRoot} part is omitted) if the {apiRoot} + information is not available. + $ref: "#/definitions/Uri" + + KeyValuePairs: + description: > + This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, + a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 + of IETF RFC 8259. In the following example, a list of key-value pairs with four keys ("aString", "aNumber", + "anArray" and "anObject") is provided to illustrate that the values associated with different keys can be of + different type. + type: object + + ApiVersionInformation: + description: > + This type represents API version information. + type: object + required: + - uriPrefix + - apiVersions + properties: + uriPrefix: + description: > + Specifies the URI prefix for the API, in the following + form {apiRoot}/{apiName}/{apiMajorVersion}/. + type: string + apiVersions: + description: > + Version(s) supported for the API signaled by the + uriPrefix attribute. + type: array + items: + type: object + required: + - version + properties: + version: + description: > + Identifies a supported version. The value of the + version attribute shall be a version identifier as + specified in clause 9.1 (SOL013). + type: string + isDeprecated: + description: > + If such information is available, this attribute indicates + whether use of the version signaled by the version + attribute is deprecated (true) or not (false). + + A deprecated version is still supported by the API producer but is recommended + not to be used any longer. + When a version is no longer supported, it does not appear in the response body. + type: boolean + retirementDate: + description: > + The date and time after which the API version will no + longer be supported. + This attribute may be included if the value of the + isDeprecated attribute is set to true and shall be + absent otherwise. + $ref: "#/definitions/DateTime" + + VnfInstanceSubscriptionFilter: + description: > + This type represents subscription filter criteria to match VNF + instances. + * NOTE 1: The attributes "vnfdIds" and "vnfProductsFromProviders" are alternatives to reference to VNF instances + that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, + but one alternative should be chosen. + NOTE 2: The attributes "vnfInstanceIds" and "vnfInstanceNames" are alternatives to reference to particular VNF + instances in a filter. They should not be used both in the same filter instance, but one alternative + should be chosen. + type: object + anyOf: + - oneOf: + - required: + - vnfdId + - required: + - vnfProductsFromProviders + - oneOf: + - required: + - vnfInstanceIds + - required: + - vnfInstanceNames + properties: + vnfdIds: + description: > + If present, match VNF instances that were created based on a VNFD + identified by one of the vnfdId values listed in this attribute. See note 1. + type: array + items: + $ref: "#/definitions/Identifier" + vnfProductsFromProviders: + description: > + If present, match VNF instances that belong to VNF products from + certain providers. See note 1. + type: array + items: + type: object + required: + - vnfProvider + properties: + vnfProvider: + description: > + Name of the VNF provider to match. + type: string + vnfProducts: + description: > + If present, match VNF instances that belong to VNF products + with certain product names, from one particular provider. + type: array + items: + type: object + required: + - vnfProductName + properties: + vnfProductName: + description: > + Name of the VNF product to match. + type: string + versions: + description: > + If present, match VNF instances that belong to VNF + products with certain versions and a certain product + name, from one particular provider. + type: array + items: + type: object + required: + - vnfSoftwareVersion + properties: + vnfSoftwareVersion: + description: > + Software version to match. + $ref: "#/definitions/Version" + vnfdVersions: + description: > + If present, match VNF instances that belong to VNF + products with certain VNFD versions, a certain + software version and a certain product name, from + one particular provider. + type: array + items: + $ref: "#/definitions/Version" + vnfInstanceIds: + description: > + If present, match VNF instances with an instance identifier listed + in this attribute. See note 2. + type: array + items: + $ref: "#/definitions/Identifier" + vnfInstanceNames: + description: > + If present, match VNF instances with a VNF Instance Name listed in + this attribute. See note 2. + type: array + items: + type: string + + VimConnectionInfo: + description: > + This type represents parameters to connect to a VIM for managing the resources of a VNF instance. + + This structure is used to convey VIM-related parameters over the Or-Vnfm interface. Additional parameters + for a VIM may be configured into the VNFM by means outside the scope of the present document and bound to + the identifier of that VIM. + + * NOTE 1: If applicable, this attribute also provides information about the resourceGroupIds + that are accessible using a particular set of credentials. See definition of "resourceGroupId" + in clause 9.5.3.3. + * NOTE 2: Once the connectivity between VNFM and VIM is provided through a secure connection over HTTP + Secure (HTTP over SSL/TLS), and the connection might also be established through a VPN + (for example TLS-based VPN tunnelling) for site-to-site connection, the "accessInfo" JSON data + structure, and the sensitive data related information ("username"/"password" as required properties + for authentication purpose), will be transmitted as plain text through a TLS tunnel without additional + encoding/encryption before transmitting it, making the sensitive data visible to the endpoint. The + base64 encoded certificates are only used by the VNFM to verify the authenticity of the interface + endpoint of the VIM. + type: object + required: + - vimType + properties: + vimId: + description: > + The identifier of the VIM instance. This identifier is managed by the NFVO. + Shall be present to address additional information about the VIM if such information has been configured + into the VNFM by means outside the scope of the present document and should be absent otherwise. + $ref: "#/definitions/Identifier" + vimType: + description: > + Discriminator for the different types of the VIM information. + The value of this attribute determines the structure of the "interfaceInfo" and "accessInfo" + attributes, based on the type of the VIM. + The set of permitted values is expected to change over time as new types or versions of VIMs become + available. + The ETSI NFV registry of VIM-related information [i.3] provides access to information about + VimConnectionInfo definitions for various VIM types. The structure of the registry is defined in + annex C. + type: string + interfaceInfo: + description: > + Information about the interface or interfaces to the VIM, if applicable, such as the URI of an + interface endpoint to communicate with the VIM. The applicable keys are dependent on the content of + vimType. + Alternatively, such information may have been configured into the VNFM and bound to the vimId. + $ref: "#/definitions/KeyValuePairs" + accessInfo: + description: > + Authentication credentials for accessing the VIM and other access-related information such as tenants + or infrastructure resource groups (see note 1). The applicable keys are dependent on the content of + vimType. + If the VimConnectionInfo structure is part of an HTTP response message content, sensitive attributes + that are children of this attributes (such as passwords) shall not be included. + If the VimConnectionInfo structure is part of an HTTP request message content, sensitive attributes + that are children of this attribute (such as passwords) shall be present if they have not been + provisioned out of band. + See note 2. + $ref: "#/definitions/KeyValuePairs" + extra: + description: > + VIM type specific additional information. The applicable structure, and whether or not this attribute + is available, is dependent on the content of vimType. + $ref: "#/definitions/KeyValuePairs" + + ResourceHandle: + required: + - resourceId + type: object + description: > + This type represents the information that allows addressing a virtualised resource that is used by a VNF instance. + Information about the resource is available from the VIM. + + * NOTE: The value set of the "vimLevelResourceType" attribute is within the scope of the VIM or the resource + provider and can be used as information that complements the ResourceHandle. This value set is different from + the value set of the "type" attribute in the ResourceDefinition (refer to clause 9.5.3.2). + + properties: + vimConnectionId: + description: > + Identifier of the VIM connection to manage the resource. + This attribute shall only be supported and present if VNF-related resource management in direct mode is applicable. + The applicable "VimConnectionInfo" structure, which is referenced by vimConnectionId, can be obtained from the + "vimConnectionInfo" attribute of the "VnfInstance" structure. + $ref: "#/definitions/Identifier" + resourceProviderId: + description: > + Identifier of the entity responsible for the management of the + resource. This attribute shall only be supported and present when + VNF-related resource management in indirect mode is applicable. The + identification scheme is outside the scope of the present document. + $ref: "#/definitions/Identifier" + resourceId: + description: > + Identifier of the resource in the scope of the VIM or the resource provider. + $ref: "#/definitions/IdentifierInVim" + vimLevelResourceType: + description: > + Type of the resource in the scope of the VIM or the resource provider. See note. + type: string + + VnfExtCpData: + description: > + This type represents configuration information for external CPs created. + * NOTE 1: In case this identifier refers to a CPD with trunking enabled, the external CP instances created + from this CPD will represent ports in a trunk. + * NOTE 2: Within one VNF instance, all VNFC instances created from a particular VDU have the same external + connectivity. Thus, given a particular value of the "cpdId" attribute, there shall be one + "cpConfig" entry for each VNFC instance that has been or can be created from a VDU which includes + a CPD identified by the "cpdId" attribute. If the cpConfig represents a subport in a trunk, + all "cpConfig" entries in this list shall have the same segmentationId, which means they are + connected to the same set of external VLs via the trunk. + * NOTE 3: The map entry value shall be set to "null" in order to delete a "VnfExtCpConfig" entry identified + by a particular key value from the map, i.e. for the disconnection of an existing external + CP instance addressed by cpInstanceId in the deleted map entry from a particular external + virtual link, and deletion of that instance in case it represents a subport. Deleting the + last key from the map removes the affected instance of the "VnfExtCpData" structure from + its parent data structure. + * NOTE 4: If, as defined by the input parameters of a "ChangeVnfFlavour", "ChangeExtVnfConnectivity" or + "ChangeCurrentVnfPkg" operation or as part of the Grant response for any of these operations, a cpConfig + map entry identified by a particular map key value is moved into another "ExtVirtualLinkData" or + "VnfExtCpData" structure, this particular cpConfig map entry may be used by an external CP instance + different than the one that has used it before the operation, or by no external CP instance at all. + Renaming a CPD identifier during the "changeCurrentVnfPkg" operation does not count as moving the related + "cpConfig" map entries to a new "extCpData" structure. + type: object + required: + - cpdId + properties: + cpdId: + description: > + The identifier of the CPD in the VNFD. See note 1. + $ref: "#/definitions/IdentifierInVnfd" + cpConfig: + description: > + Map of instance data that need to be configured on the CP instances + created from the respective CPD. + The key of the map which identifies the individual VnfExtCpConfig entries is of type "IdentifierInVnf" + and is managed by the NFVO. + The entries shall be applied by the VNFM according to the rules of JSON Merge Patch (see IETF RFC 7396). + See notes 2, 3 and 4. + type: object + additionalProperties: + $ref: "#/definitions/VnfExtCpConfig" + + VnfExtCpConfig: + description: > + This type represents an externally provided link port or network address information per instance of an external connection + point. In case a link port is provided, the VNFM shall use that link port when connecting the external CP to the external + VL. In case a link port is not provided, the VNFM shall create a link port on the external VL and use that link port to connect + the external CP to the external VL. + + * NOTE: The following conditions apply to the attributes "linkPortId" and "cpProtocolData": + 1) Void. + 2) At least one of the "linkPortId" and "cpProtocolData" attributes shall be present for an external CP instance + representing a subport that is to be created, or an external CP instance that is to be created by creating the + corresponding VNFC or VNF instance during the current or a subsequent LCM operation, or for an existing + external CP instance that is to be re-configured or added to a particular external virtual link. + 3) If the "linkPortId" attribute is absent, the VNFM shall create a link port. + 4) If the "cpProtocolData" attribute is absent, the "linkPortId" attribute shall be provided referencing a + precreated link port, and the VNFM can use means outside the scope of the present document to obtain the + pre-configured address information for the connection point from the resource representing the link port. + 5) If both "cpProtocolData" and "linkportId" are provided, the NFVO shall ensure that the + cpProtocolData can be used with the pre-created link port referenced by "linkPortId". + + anyOf: + - required: + - linkPortId + - required: + - cpProtocolData + - required: + - netAttDefResourceId + type: object + properties: + parentCpConfigId: + description: > + Value of the key that identifies the "VnfExtCpConfig" map entry which corresponds to the parent port of the + trunk. Reference to the "VnfExtCpConfig" entry that corresponds to the parent port of the trunk. Only present + in "VnfExtCpConfig" structures that provide configuration information for a CP which represents a sub-port in + a trunk, and if parent ports are supported. + $ref: "#/definitions/IdentifierInVnf" + + linkPortId: + description: > + Identifier of a pre-configured link port to which the external CP + will be associated. See notes. + $ref: "#/definitions/Identifier" + + createExtLinkPort: + description: > + Indicates to the VNFM the need to create a dedicated link port for the external CP. + If set to True, the VNFM shall create a link port. + If set to False, the VNFM shall not create a link port. + This attribute is only applicable for external CP instances without a floating IP address that expose a VIP CP + instance for which a dedicated IP address is allocated. It shall be present in that case and shall be absent otherwise. + type: boolean + + cpProtocolData: + description: > + Parameters for configuring the network protocols on the link port that connects the CP to a VL. See note. + type: array + items: + $ref: "#/definitions/CpProtocolData" + + CpProtocolData: + description: > + This type represents network protocol data. + * NOTE: This attribute allows to signal the addition of further types of layer and protocol + in future versions of the present document in a backwards-compatible way. In the current + version of the present document, only IP over Ethernet is supported. + type: object + required: + - layerProtocol + properties: + layerProtocol: + description: > + Identifier of layer(s) and protocol(s). + Permitted values: IP_OVER_ETHERNET. + See note + type: string + enum: + - IP_OVER_ETHERNET + - IP_FOR_VIRTUAL_CP + ipOverEthernet: + description: > + Network address data for IP over Ethernet to assign to the external CP + instance. Shall be present if layerProtocol is equal to + "IP_OVER_ETHERNET", and shall be absent otherwise. + $ref: "#/definitions/IpOverEthernetAddressData" + + IpOverEthernetAddressData: + description: > + This type represents network address data for IP over Ethernet. + * NOTE 1: At least one of "macAddress" or "ipAddresses" shall be present. + * NOTE 2: Exactly one of "fixedAddresses", "numDynamicAddresses" or "ipAddressRange" shall be present. + * NOTE 3: If the CP instance represents a subport in a trunk, segmentationId shall be present. + Otherwise it shall not be present. + * NOTE 4: Depending on the NFVI networking infrastructure, the segmentationId may indicate the actual + network segment value (e.g. vlan Id, Vxlan segmentation id, etc.) used in the transport header + of the packets or it may be an identifier used between the application and the NFVI networking + infrastructure to identify the network sub-interface of the trunk port in question. In the latter + case the NFVI infrastructure will map this local segmentationId to whatever segmentationId is + actually used by the NFVI’s transport technology. + type: object + anyOf: + - required: + - macAddress + - required: + - ipAddresses + oneOf: + - required: + - fixedAddresses + - required: + - numDynamicAddresses + - required: + - ipAddressRange + properties: + macAddress: + description: > + MAC address. If this attribute is not present, it shall be chosen by + the VIM. See note 1. + $ref: "#/definitions/MacAddress" + segmentationType: + description: > + Specifies the encapsulation type for the traffics coming in and out of the trunk subport. + Permitted values: + - VLAN: the subport uses VLAN as encapsulation type. + - INHERIT: the subport gets its segmentation type from the network it’s connected to. + This attribute may be present for CP instances that represent subports in a trunk and shall be + absent otherwise. If this attribute is not present for a subport CP instance, default value VLAN shall be used. + type: string + enum: + - VLAN + - INHERIT + + segmentationId: + description: > + Identification of the network segment to which the CP instance connects to. See note 3 and note 4. + type: string + ipAddresses: + description: > + List of IP addresses to assign to the CP instance. Each entry + represents IP address data for fixed or dynamic IP address + assignment per subnet. + If this attribute is not present, no IP address shall be assigned. See note 1. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. + Permitted values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + fixedAddresses: + description: > + Fixed addresses to assign (from the subnet defined by + "subnetId" if provided). See note 2. + type: array + items: + $ref: "#/definitions/IpAddress" + numDynamicAddresses: + description: > + Number of dynamic addresses to assign (from the subnet defined + by "subnetId" if provided). See note 2. + type: integer + addressRange: + description: > + An IP address range to be used, e.g. in case of egress + connections. + In case this attribute is present, IP addresses from the range + will be used. See note 2. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + Lowest IP address belonging to the range. + $ref: "#/definitions/IpAddress" + maxAddress: + description: > + Highest IP address belonging to the range. + $ref: "#/definitions/IpAddress" + subnetId: + description: > + Subnet defined by the identifier of the subnet resource in the + VIM. + In case this attribute is present, IP addresses from that + subnet will be assigned; otherwise, IP addresses not bound to + a subnet will be assigned. + $ref: "#/definitions/IdentifierInVim" + + ExtVirtualLinkData: + description: > + This type represents an external VL. + + * NOTE 1: A link port is not needed for an external CP instance that exposes a VIP CP in the following cases: + 1) For a VIP CP directly exposed as an extCP: + 1.1) No dedicated IP address is allocated as VIP address, as indicated in the VNFD. + 1.2) A dedicated IP address is allocated as VIP address, but the NFVO indicates that no port is needed + (createExtLinkPort in VnfExtCpConfig set to false). + 2) For a VIP CP exposed as an extCP via a floating IP address: + 2.1) No dedicated IP address is allocated as VIP address, as indicated in the VNFD, and the VNFC CP + associated to the VIP CP is also exposed via a floating IP address. + type: object + required: + - id + - resourceId + - extCps + properties: + id: + description: > + The identifier of the external VL instance. The identifier is + assigned by the NFV-MANO entity that manages this VL instance. + $ref: "#/definitions/Identifier" + vimConnectionId: + description: > + Identifier of the VIM connection to manage this resource. This + attribute shall only be supported and present if VNF-related + resource management in direct mode is applicable. See note 1. + $ref: "#/definitions/Identifier" + resourceProviderId: + description: > + Identifies the entity responsible for the management of this + resource. This attribute shall only be supported and present + if VNF-related resource management in indirect mode is applicable. + The identification scheme is outside the scope of the present + document. + $ref: "#/definitions/Identifier" + resourceId: + description: > + The identifier of the resource in the scope of the VIM or the + resource provider. + $ref: "#/definitions/IdentifierInVim" + extCps: + description: > + External CPs of the VNF to be connected to this external VL. Entries in the list of external + CP data that are unchanged need not be supplied if the ExtVirtualLinkData structure is part + of a request or response that modifies the external connectivity. + type: array + items: + $ref: "#/definitions/VnfExtCpData" + extLinkPorts: + description: > + Externally provided link ports to be used to connect external connection points to this external VL. If this attribute is + not present, the VNFM shall create the link ports on the external VL unless the extCp exposes a VIP CP and a link port is + not needed for it based on the conditions defined below. See note. + type: array + items: + $ref: "#/definitions/ExtLinkPortData" + + ScaleInfo: + description: > + This type represents the scale level of a VNF instance related to a scaling aspect. + type: object + required: + - aspectId + - scaleLevel + properties: + aspectId: + description: > + Identifier of the scaling aspect. + $ref: "#/definitions/IdentifierInVnfd" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case the value differs from the vnfdId + attribute of the VnfInstance (e.g. during a "Change + current VNF package" operation or due to its final + failure). + $ref: "#/definitions/Identifier" + scaleToLevel: + description: > + Indicates the scale level. The minimum value shall be 0 + and the maximum value shall be ≤ maxScaleLevel as + described in the VNFD. + $ref: "#/definitions/Identifier" + + Identifier: + description: > + An identifier with the intention of being globally unique. + type: string + + DateTime: + description: > + Date-time stamp. + Representation: String formatted according to IETF RFC 3339. + type: string + format: date-time + + Uri: + description: > + String formatted according to IETF RFC 3986. + type: string + + Boolean: + description: > + The Boolean is a data type having two values (true and false). + type: boolean + + MacAddress: + description: > + A MAC address. Representation: string that consists of groups of two hexadecimal digits, + separated by hyphens or colons. + type: string + format: MAC + + IpAddress: + description: > + An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal + integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that + consists of groups of zero to four hexadecimal digits, separated by colons. + type: string + format: IP + + Version: + description: > + A version. + type: string + + String: + description: > + A string defined in IETF RFC 8259. + type: string + + Number: + description: > + A number defined in IETF RFC 8259. + type: number + + UnsignedInt: + description: > + Unsigned integer number + type: integer + minimum: 0 + + IdentifierInVnfd: + description: > + An identifier that is unique within a VNF descriptor. + type: string + + IdentifierInVim: + description: > + An identifier maintained by the VIM or the CISM or other resource provider. It is + expected to be unique within the VIM instance. + type: string + + IdentifierInVnf: + description: > + An identifier that is unique for the respective type within a VNF + instance, but may not be globally unique. + type: string + + IdentifierLocal: + description: > + An identifier that is unique within a limited local scope other than above listed identifiers, + such as within a complex data structure or within a request-response pair. + Representation: string of variable length. + type: string + + Checksum: #no definition found + description: > + Cheksum description + type: string + + VnfLinkPortData: + description: > + This type represents an externally provided link port to be used to connect a VNFC connection point + to an exernally managed VL. + type: object + required: + - vnfLinkPortId + - resourceHandle + properties: + vnfLinkPortId: + description: > + Identifier of this link port as provided by the entity that has created the link port. + $ref: "#/definitions/Identifier" + resourceHandle: + description: > + Resource handle of the virtualised resource that realizes the link port. + $ref: "#/definitions/ResourceHandle" + + ExtLinkPortData: + description: > + This type represents an externally provided link port to be used to + connect an external connection point to an external VL. + * NOTE: The value of "trunkResourceId" is scoped by the value of "vimConnectionId" in the "resourceHandle" attribute. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + Identifier of this link port as provided by the entity that has + created the link port. + $ref: "#/definitions/Identifier" + resourceHandle: + description: > + Reference to the virtualised resource realizing this link port. + $ref: "#/definitions/ResourceHandle" + + trunkResourceId: + description: > + Identifier of the trunk resource in the VIM. + Shall be present if the present link port corresponds to the parent + port that the trunk resource is associated with. See note. + $ref: "#/definitions/IdentifierInVim" + + GrantedLcmOperationType: + description: > + The enumeration GrantedLcmOperationType defines the permitted values + to represent VNF lifecycle operation types in grant requests. + Value | Description + ------|------------ + INSTANTIATE | Represents the "Instantiate VNF" LCM operation. + SCALE | Represents the "Scale VNF" LCM operation. + SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM operation. + CHANGE_FLAVOUR | Represents the "Change VNF Flavour" LCM operation. + TERMINATE | Represents the "Terminate VNF" LCM operation. + HEAL | Represents the "Heal VNF" LCM operation. + OPERATE | Represents the "Operate VNF" LCM operation. + CHANGE_EXT_CONN | Represents the "Change external VNF connectivity" LCM operation. + CHANGE_VNFPKG | Represents the "Change current VNF package" LCM operation. + CREATE_SNAPSHOT | Represents the "Create VNF snapshot" LCM operation. + REVERT_TO_SNAPSHOT | Represents the "Revert to VNF snapshot" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - SCALE_TO_LEVEL + - CHANGE_FLAVOUR + - TERMINATE + - HEAL + - OPERATE + - CHANGE_EXT_CONN + - CHANGE_VNFPKG + - CREATE_SNAPSHOT + - REVERT_TO_SNAPSHOT + + LcmOperationType: + description: > + The enumeration LcmOpType defines the permitted values to represent + VNF lifecycle operation types in VNF lifecycle management operation + occurrence resources and VNF lifecycle management operation occurrence + notifications. + + Value | Description + ------|------------ + INSTANTIATE | Represents the "Instantiate VNF" LCM operation. + SCALE | Represents the "Scale VNF" LCM operation. + SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM operation. + CHANGE_FLAVOUR | Represents the "Change VNF Flavour" LCM operation. + TERMINATE | Represents the "Terminate VNF" LCM operation. + HEAL | Represents the "Heal VNF" LCM operation. + OPERATE | Represents the "Operate VNF" LCM operation. + CHANGE_EXT_CONN | Represents the "Change external VNF connectivity" LCM operation. + MODIFY_INFO | Represents the "Modify VNF Information" LCM operation. + CREATE_SNAPSHOT | Represents the "Create VNF Snapshot" LCM operation. + REVERT_TO_SNAPSHOT | Represents the “Revert-To VNF Snapshot" LCM operation. + CHANGE_VNFPKG | Represents the "Change current VNF package" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - SCALE_TO_LEVEL + - CHANGE_FLAVOUR + - TERMINATE + - HEAL + - OPERATE + - CHANGE_EXT_CONN + - MODIFY_INFO + - CREATE_SNAPSHOT + - REVERT_TO_SNAPSHOT + - CHANGE_VNFPKG + + ProblemDetails: + #SOL003 location: 4.3.5.3 + description: > + The definition of the general "ProblemDetails" data structure from + IETF RFC 7807 is reproduced inthis structure. Compared to the + general framework defined in IETF RFC 7807, the "status" and + "detail" attributes are mandated to be included by the present document, + to ensure that the response contains additional textual information about + an error. IETF RFC 7807 foresees extensibility of the + "ProblemDetails" type. It is possible that particular APIs in the present + document, or particular implementations, define extensions to define + additional attributes that provide more information about the error. + The description column only provides some explanation of the meaning to + Facilitate understanding of the design. For a full description, see + IETF RFC 7807. + type: object + required: + - status + - detail + properties: + type: + description: > + A URI reference according to IETF RFC 3986 that identifies the + problem type. It is encouraged that the URI provides human-readable + documentation for the problem (e.g. using HTML) when dereferenced. + When this member is not present, its value is assumed to be + "about:blank". + type: string + format: URI + title: + description: > + A short, human-readable summary of the problem type. It should not + change from occurrence to occurrence of the problem, except for + purposes of localization. If type is given and other than + "about:blank", this attribute shall also be provided. + A short, human-readable summary of the problem + type. It SHOULD NOT change from occurrence to occurrence of the + problem, except for purposes of localization (e.g., using + proactive content negotiation; see [RFC7231], Section 3.4). + type: string + status: + description: > + The HTTP status code for this occurrence of the problem. + The HTTP status code ([RFC7231], Section 6) generated by the origin + server for this occurrence of the problem. + type: integer + detail: + description: > + A human-readable explanation specific to this occurrence of the + problem. + type: string + instance: + description: > + A URI reference that identifies the specific occurrence of the + problem. It may yield further information if dereferenced. + type: string + format: URI + #TODO: How to express "any additional attributes"? + + SubscriptionAuthentication: + description: > + * NOTE: The clientId and clientPassword passed in a subscription shall not be the same as the clientId and + clientPassword that are used to obtain authorization for API requests. Client credentials may differ between + subscriptions. The value of clientPassword should be generated by a random process + type: object + required: + - authType + properties: + authType: + description: > + Defines the types of Authentication / Authorization which the API + consumer is willing to accept when receiving a notification. + Permitted values: + * BASIC: In every HTTP request to the notification endpoint, use + HTTP Basic authentication with the client credentials. + * OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the + notification endpoint, use an OAuth 2.0 Bearer token, obtained + using the client credentials grant type. + * TLS_CERT: Every HTTP request to the notification endpoint is sent + over a mutually authenticated TLS session, i.e. not only the + server is authenticated, but also the client is authenticated + during the TLS tunnel setup. + type: array + items: + type: string + enum: + - BASIC + - OAUTH2_CLIENT_CREDENTIALS + - TLS_CERT + paramsBasic: + description: > + Parameters for authentication/authorization using BASIC. + Shall be present if authType is "BASIC" and the contained + information has not been provisioned out of band. + Shall be absent otherwise. + type: object + properties: + userName: + description: > + Username to be used in HTTP Basic authentication. Shall be + present if it has not been provisioned out of band. + type: string + password: + description: > + Password to be used in HTTP Basic authentication. Shall be + present if it has not been provisioned out of band. + type: string + paramsOauth2ClientCredentials: + description: > + Parameters for authentication/authorization using + OAUTH2_CLIENT_CREDENTIALS. + Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the + contained information has not been provisioned out of band. + Shall be absent otherwise. + type: object + properties: + clientId: + description: > + Client identifier to be used in the access token request of the + OAuth 2.0 client credentials grant type. + Shall be present if it has not been provisioned out of band. See note. + type: string + clientPassword: + description: > + Client password to be used in the access token request of the + OAuth 2.0 client credentials grant type. + Shall be present if it has not been provisioned out of band. See note. + type: string + tokenEndpoint: + description: > + The token endpoint from which the access token can be obtained. + Shall be present if it has not been provisioned out of band. + $ref: "#/definitions/Uri" + + LcmCoordResultType: + description: > + The enumeration LcmCoordResultType defines the permitted values + to represent the result of executing an LCM coordination action. + The coordination result also implies the action to be performed by + the VNFM as the follow-up to this coordination. + Value | Description + ------|------------ + CONTINUE | The related LCM operation shall be continued, staying in the state "PROCESSING". + ABORT | The related LCM operation shall be aborted by transitioning into the state "FAILED_TEMP". + CANCELLED | The coordination action has been cancelled upon request of the API consumer, i.e. the VNFM. + The related LCM operation shall be aborted by transitioning into the state "FAILED_TEMP". + type: string + enum: + - CONTINUE + - ABORT + - CANCELLED + + LcmOperationForCoordType: + description: > + The enumeration LcmOperationForCoordType defines the permitted values to + represent VNF lifecycle operation types in VNF LCM operation coordination actions. + * INSTANTIATE: Represents the "Instantiate VNF" LCM operation. + * SCALE: Represents the "Scale VNF" LCM operation. + * SCALE_TO_LEVEL: Represents the "Scale VNF to Level" LCM operation. + * CHANGE_FLAVOUR: Represents the "Change VNF Flavour" LCM operation. + * TERMINATE: Represents the "Terminate VNF" LCM operation. + * HEAL: Represents the "Heal VNF" LCM operation. + * OPERATE: Represents the "Operate VNF" LCM operation. + * CHANGE_EXT_CONN: Represents the "Change external VNF connectivity" LCM operation. + * MODIFY_INFO: Represents the "Modify VNF Information" LCM operation. + * CREATE_SNAPSHOT: Represents the "Create VNF Snapshot" LCM operation. + * REVERT_TO_SNAPSHOT: Represents the "Revert To VNF Snapshot" LCM operation. + * CHANGE_VNFPKG: Represents the "Change current VNF package" LCM operation. + type: string + enum: + - INSTANTIATE + - SCALE + - SCALE_TO_LEVEL + - CHANGE_FLAVOUR + - TERMINATE + - HEAL + - OPERATE + - CHANGE_EXT_CONN + - MODIFY_INFO + - CREATE_SNAPSHOT + - REVERT_TO_SNAPSHOT + - CHANGE_VNFPKG \ No newline at end of file diff --git a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 75922832..c5413706 100644 --- a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -1428,7 +1428,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CreateVnfRequest" + $ref: "./definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/CreateVnfRequest" required: true CancelModeRequest: @@ -1438,7 +1438,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelMode" + $ref: "./definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelMode" VnfInfoModificationRequest: description: | @@ -1462,7 +1462,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ScaleVnfRequest" + $ref: "./definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ScaleVnfRequest" required: true ScaleVnfToLevelRequest: @@ -1470,7 +1470,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ScaleVnfToLevelRequest" + $ref: "./definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ScaleVnfToLevelRequest" required: true ChangeVnfFlavourRequest: @@ -1529,7 +1529,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscriptionRequest" + $ref: "./definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscriptionRequest" required: true CreateVnfSnapshotRequest: @@ -1651,7 +1651,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" VNFInstances.Get.200: description: | @@ -1818,7 +1818,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualVnfInstance.Patch.412: description: | @@ -1917,7 +1917,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" InstantiateVnfInstance.Post.202: description: | @@ -1991,7 +1991,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" ScaleVnfInstance.Post.202: description: | @@ -2071,7 +2071,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" ScaleVnfInstance.Post.409: description: | @@ -2113,7 +2113,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" ScaleToLevelVnfInstance.Post.202: description: | @@ -2194,7 +2194,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" ScaleToLevelVnfInstance.Post.409: description: | 409 CONFLICT @@ -2235,7 +2235,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" ChangeFlavourVnfInstance.Post.202: description: | @@ -2316,7 +2316,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" ChangeFlavourVnfInstance.Post.409: description: | @@ -2359,7 +2359,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" TerminateVnfInstance.Post.202: description: | @@ -2434,7 +2434,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" HealVnfInstance.Post.202: description: | @@ -2514,7 +2514,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" HealVnfInstance.Post.409: description: | @@ -2556,7 +2556,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" OperateVnfInstance.Post.202: description: | @@ -2637,7 +2637,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" OperateVnfInstance.Post.409: description: | @@ -2680,7 +2680,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" ChangeExtConnVnfInstance.Post.202: description: | @@ -2757,7 +2757,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" ChangeVnfpkgVnfInstance.Post.202: description: | @@ -2831,7 +2831,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" VnfLcmOpOccs.Get.200: description: | @@ -2983,7 +2983,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" RollbackVnfLcmOpOcc.Post.409: description: | @@ -3025,7 +3025,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" RetryVnfLcmOpOcc.Post.202: description: | @@ -3094,7 +3094,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" RetryVnfLcmOpOcc.Post.409: description: | @@ -3136,7 +3136,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" FailVnfLcmOpOcc.Post.200: description: | @@ -3220,7 +3220,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" FailVnfLcmOpOcc.Post.409: description: | @@ -3262,7 +3262,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" CancelVnfLcmOpOcc.Post.202: description: | @@ -3333,7 +3333,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" CancelVnfLcmOpOcc.Post.409: description: | @@ -3374,7 +3374,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" Subscriptions.Post.201: description: | @@ -3417,7 +3417,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription" + $ref: "./definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription" Subscriptions.Post.303: description: | @@ -3500,7 +3500,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" Subscriptions.Get.200: description: | @@ -3547,7 +3547,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription" + $ref: "./definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription" IndividualSubscription.Get.200: description: | @@ -3580,7 +3580,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription" + $ref: "./definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnSubscription" IndividualSubscription.Delete.204: description: | @@ -3641,23 +3641,15 @@ components: description: | 404 NOT FOUND - SShall be returned upon the following error: The API - producer did not find a current representation for - the target resource or is not willing to disclose that - one exists. - The general cause for this error and its handling is - specified in clause 6.4 of ETSI - GS NFV-SOL 013 [8], including rules for the - presence of the response body. - Specifically in case of this task resource, the - response code 404 shall also be returned if the task - is not supported for the VNF instance represented - by the parent resource, which means that the task - resource consequently does not exist. - In this case, the response body shall be present, - and shall contain a ProblemDetails structure, in - which the "detail" attribute shall convey more - information about the error + Shall be returned upon the following error: The API producer did not find a current representation for + the target resource or is not willing to disclose that one exists. + The general cause for this error and its handling is specified in clause 6.4 of ETSI GS NFV-SOL 013 [8], including rules for the + presence of the response body. + Specifically in case of this task resource, the response code 404 shall also be returned if the task + is not supported for the VNF instance represented by the parent resource, which means that the task + resource consequently does not exist. + In this case, the response body shall be present, and shall contain a ProblemDetails structure, in + which the "detail" attribute shall convey more information about the error headers: WWW-Authenticate: description: | @@ -3683,7 +3675,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" CreateVnfSnapshotTask.Post.409: description: | @@ -3724,7 +3716,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" CreateVnfSnapshotTask.Post.422: description: | @@ -3763,7 +3755,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" RevertToVnfSnapshotTask.Post.202: description: | @@ -3844,7 +3836,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" RevertToVnfSnapshotTask.Post.409: description: | @@ -3885,7 +3877,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" VnfSnapshots.Post.201: description: | @@ -4088,7 +4080,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualVnfSnapshot.Patch.412: description: | @@ -4189,7 +4181,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualVnfSnapshotState.Get.200: description: | @@ -4306,7 +4298,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualVnfSnapshotState.Get.416: description: | diff --git a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml index da66c3ba..b2a4cc54 100644 --- a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml +++ b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml @@ -25,26 +25,25 @@ definitions: flavourId: description: > Identifier of the VNF deployment flavour to be instantiated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" instantiationLevelId: description: > - Identifier of the instantiation level of the deployment flavour to be - instantiated. If not present, the default instantiation level as - declared in the VNFD is instantiated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + Identifier of the instantiation level of the deployment flavour to be instantiated. If not present, + the default instantiation level as declared in the VNFD is instantiated. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" extVirtualLinks: description: > Information about external VLs to connect the VNF to, including configuration information for the CPs via which the VNF instance can attach to this VL. The following applies to the "ExtVirtualLinkData" information provided in this request, together with the related overriding information provided in the - "Grant" structure (see clause 9.5.2.3): Even if the VNF is not instantiated in + "Grant" structure (see clause 9.5.2.3): even if the VNF is not instantiated in fully scaled-out state, the API consumer shall provide enough CP configuration records to allow connecting the VNF instance, fully scaled out in all scaling aspects, to the external VLs type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ExtVirtualLinkData" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ExtVirtualLinkData" extManagedVirtualLinks: description: > Information about internal VLs that are managed by the NFVO. See note 1 and note 2. @@ -53,38 +52,38 @@ definitions: $ref: "#/definitions/ExtManagedVirtualLinkData" vimConnectionInfo: description: > - Information about VIM connections to be used for managing the resources for the VNF instance, or refer to - external / externally-managed virtual links. This attribute shall only be supported and may be present if - VNF-related resource management in direct mode is applicable. The VNFM shall apply the content of this - attribute to the "vimConnectionInfo" attribute of "VnfInstance" according to the rules of JSON Merge Patch - (see IETF RFC 7396). + Information about VIM connections to be used for managing the resources for the VNF instance, or refer to + external/externally-managed virtual links. + This attribute shall only be supported and may be present if VNF-related resource management in direct mode is + applicable. The VNFM shall apply the content of this attribute to the "vimConnectionInfo" attribute of "VnfInstance" + according to the rules of JSON Merge Patch (see IETF RFC 7396 [5]). type: object additionalProperties: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VimConnectionInfo" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VimConnectionInfo" localizationLanguage: description: > Localization language of the VNF to be instantiated. The value shall comply with the format defined in IETF RFC 5646. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" additionalParams: description: > Additional input parameters for the instantiation process, specific to the VNF being instantiated, as declared in the VNFD as part of "InstantiateVnfOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > If present, this attribute provides modifications to the default values, as obtained from the VNFD, of the "extensions" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling extensions during the operation are defined in clause 5.4.4.3.1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" vnfConfigurableProperties: description: > If present, this attribute provides modifications to the default values, as obtained from the VNFD, of the "vnfConfigurableProperties" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling configurable properties during the operation are defined in clause 5.4.4.3.1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" ExtManagedVirtualLinkData: type: object @@ -98,29 +97,29 @@ definitions: The identifier of the externally-managed internal VL instance. The identifier is assigned by the NFV-MANO entity that manages this VL instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfVirtualLinkDescId: description: > The identifier of the VLD in the VNFD for this VL. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" vimConnectionId: description: > Identifier of the VIM connection to manage this resource. This attribute shall only be supported and present if VNF-related resource management in direct mode is applicable. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" resourceProviderId: description: > Identifies the entity responsible for the management of this resource. This attribute shall only be supported and present if VNF-related resource management in indirect mode is applicable. The identification scheme is outside the scope of the present document. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" resourceId: description: > The identifier of the resource in the scope of the VIM or the resource provider. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVim" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim" vnfLinkPort: description: > Externally provided link ports to be used to connect VNFC connection points to this externally-managed VL @@ -128,7 +127,7 @@ definitions: externally-managed VL. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VnfLinkPortData" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VnfLinkPortData" extManagedMultisiteVirtualLinkId: description: > Identifier of the externally-managed multi-site VL instance. The identifier is assigned by the NFVMANO @@ -137,7 +136,7 @@ definitions: in support of multi-site VNF spanning several VIMs. All externally-managed internal VL instances corresponding to an internal VL created based on the same virtualLinkDescId shall refer to the same extManagedMultisiteVirtualLinkId. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" ChangeVnfFlavourRequest: description: > @@ -161,13 +160,13 @@ definitions: newFlavourId: description: > Identifier of the VNF deployment flavour to be instantiated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" instantiationLevelId: description: > Identifier of the instantiation level of the deployment flavour to be instantiated. If not present, the default instantiation level as declared in the VNFD is instantiated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" extVirtualLinks: description: > Information about external VLs to connect the VNF to, including configuration information @@ -183,7 +182,7 @@ definitions: aspects, to the external VLs. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ExtVirtualLinkData" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ExtVirtualLinkData" extManagedVirtualLinks: description: > Information about internal VLs that are managed by the NFVO. See notes 1 and 2. @@ -199,24 +198,24 @@ definitions: (see IETF RFC 7396). type: object additionalProperties: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VimConnectionInfo" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VimConnectionInfo" additionalParams: description: > Additional input parameters for the flavour change process, specific to the VNF being modified, as declared in the VNFD as part of "ChangeVnfFlavourOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > If present, this attribute provides modifications to the values of the "extensions" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling extensions during the operation, are defined in clause 5.4.7.3.1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" vnfConfigurableProperties: description: > If present, this attribute provides modifications to the values of the "vnfConfigurableProperties" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling VNF configurable properties during the operation, are defined in clause 5.4.7.3.1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" TerminateVnfRequest: description: > @@ -264,7 +263,7 @@ definitions: Additional parameters passed by the NFVO as input to the termination process, specific to the VNF being terminated, as declared in the VNFD as part of "TerminateVnfOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" HealVnfRequest: type: object @@ -272,13 +271,13 @@ definitions: cause: description: > Indicates the reason why a healing procedure is required. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" additionalParams: description: > Additional parameters passed by the NFVO as input to the healing process, specific to the VNF being healed, as declared in the VNFD as part of "HealVnfOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" OperateVnfRequest: description: > @@ -301,7 +300,7 @@ definitions: description: > The desired operational state (i.e. started or stopped) to change the VNF to. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfOperationalStateType" + $ref: "#/definitions/VnfOperationalStateType" stopType: description: > It signals whether forceful or graceful stop is requested. See note. @@ -316,7 +315,7 @@ definitions: Additional parameters passed by the NFVO as input to the process, specific to the VNF of which the operation status is changed, as declared in the VNFD as part of "OperateVnfOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" ChangeExtVnfConnectivityRequest: #SOL003 location: 5.5.2.11 @@ -343,7 +342,7 @@ definitions: all scaling aspects, to the external VLs. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ExtVirtualLinkData" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ExtVirtualLinkData" vimConnectionInfo: description: > Information about VIM connections to be used for managing the resources for the VNF instance, or refer to @@ -352,13 +351,13 @@ definitions: "vimConnectionInfo" attribute of "VnfInstance" according to the rules of JSON Merge Patch (see IETF RFC 7396). type: object additionalProperties: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VimConnectionInfo" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VimConnectionInfo" additionalParams: description: > Additional parameters passed by the NFVO as input to the process, specific to the VNF of which the external connectivity is changed, as declared in the VNFD as part of "ChangeExtVnfConnectivityOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" ChangeCurrentVnfPkgRequest: description: > @@ -384,7 +383,7 @@ definitions: description: > Identifier of the VNFD which defines the destination VNF Package for the change. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" extVirtualLinks: description: > Information about external VLs to connect the VNF to, including configuration information for @@ -393,13 +392,13 @@ definitions: The following applies to the "ExtVirtualLinkData" information provided in this request, together with the related "ExtVirtualLinkInfo" information known to the VNFM represented in the "VnfInstance" structure (see clause 5.5.2.2) and the related overriding information - provided in the "Grant" structure (see clause 9.5.2.3): Even if the VNF is not in fully + provided in the "Grant" structure (see clause 9.5.2.3): even if the VNF is not in fully scaled-out state after the change of the VNF package, the API consumer shall provide enough CP configuration records to allow connecting the VNF instance, fully scaled out in all scaling aspects, to the external VLs. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ExtVirtualLinkData" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ExtVirtualLinkData" extManagedVirtualLinks: description: > Information about internal VLs that are managed by the NFVO. See notes 1 and 2. @@ -414,26 +413,26 @@ definitions: "vimConnectionInfo" attribute of "VnfInstance" according to the rules of JSON Merge Patch (see IETF RFC 7396). type: object additionalProperties: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VimConnectionInfo" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VimConnectionInfo" additionalParams: description: > Additional parameters passed by the NFVO as input to the process, specific to the VNF of which the underlying VNF package is changed, as declared in the VNFD as part of "ChangeCurrentVnfPkgOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > If present, this attribute provides modifications to the values of the "extensions" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling extensions during the operation, and needed passed parameter values in case of conflicts, are defined in clause 5.4.11a.3.1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" vnfConfigurableProperties: description: > If present, this attribute provides modifications to the values of the "vnfConfigurableProperties" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling VNF configurable properties during the operation, and needed passed parameter values in case of conflicts, are defined in clause 5.4.11a.3.1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" VnfInfoModificationRequest: description: > @@ -446,35 +445,35 @@ definitions: description: > New value of the "vnfInstanceName" attribute in "VnfInstance", or "null" to remove the attribute. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" vnfInstanceDescription: description: > New value of the "vnfInstanceDescription" attribute in "VnfInstance", or "null" to remove the attribute. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" vnfPkgId: description: > New value of the "vnfPkgId" attribute in "VnfInstance". The value "null" is not permitted. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfConfigurableProperties: description: > Modifications of the "vnfConfigurableProperties" attribute in "VnfInstance". If present, these modifications shall be applied according to the rules of JSON Merge Patch (see IETF RFC 7396). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" metadata: description: > Modifications of the "metadata" attribute in "VnfInstance". If present, these modifications shall be applied according to the rules of JSON Merge Patch (see IETF RFC 7396). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > Modifications of the "extensions" attribute in "VnfInstance". If present, these modifications shall be applied according to the rules of JSON Merge Patch (see IETF RFC 7396). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" vimConnectionInfo: description: > Modifications of the "vimConnectionInfo" attribute. If present, these @@ -482,7 +481,7 @@ definitions: JSON Merge Patch (see IETF RFC 7396 ). type: object additionalProperties: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VimConnectionInfo" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VimConnectionInfo" VnfInfoModifications: description: > @@ -504,63 +503,63 @@ definitions: description: > If present, this attribute signals modifications of the "vnfInstanceName" attribute in "VnfInstance". - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" vnfInstanceDescription: description: > If present, this attribute signals modifications of the "vnfInstanceDescription" attribute in "VnfInstance". - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" vnfConfigurableProperties: description: > If present, this attribute signals modifications of the "vnfConfigurableProperties" attribute in "VnfInstance". In addition, the provisions in clause 5.7 shall apply. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" metadata: description: > If present, this attribute signals modifications of the "metadata" attribute in "VnfInstance". - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > If present, this attribute signals modifications of the "extensions" attribute in "VnfInstance". In addition, the provisions in clause 5.7 shall apply. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" vimConnectionInfo: description: > If present, this attribute signals modifications the "vimConnectionInfo" attribute array in "VnfInstance". type: object additionalProperties: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VimConnectionInfo" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VimConnectionInfo" vnfdId: description: > If present, this attribute signals modifications of the "vnfdId" attribute in "VnfInstance". - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfProvider: description: > If present, this attribute signals modifications of the "vnfProvider" attribute in "VnfInstance". See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" vnfProductName: description: > If present, this attribute signals modifications of the "vnfProductName" attribute in "VnfInstance". See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" vnfSoftwareVersion: description: > If present, this attribute signals modifications of the "vnfSoftwareVersion" attribute in "VnfInstance". See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Version" vnfdVersion: description: > If present, this attribute signals modifications of the "vnfdVersion" attribute in "VnfInstance". See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Version" StopType: description: > @@ -590,17 +589,17 @@ definitions: description: > Identifier of the "Individual VNF snapshot" resource to which the VNF snapshot is to be associated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" additionalParams: description: > Additional input parameters for the snapshot creation process, specific for the VNF being “snapshotted”, as declared in the VNFD as part of “CreateSnapshotVnfOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" userDefinedData: description: > User defined data for the VNF snapshot. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" CreateVnfSnapshotInfoRequest: description: | @@ -616,7 +615,7 @@ definitions: vnfSnapshotPkgId: description: | Identifier of the VNF snapshot package information held by the NFVO. See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfSnapshot: description: | Information about the VNF snapshot, content and/or reference to its content. @@ -633,12 +632,12 @@ definitions: description: > Identifier of the "Individual VNF snapshot" resource with the information of the VNF snapshot to be reverted to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" additionalParams: description: > Additional input parameters for the revert to VNF snapshot process, specific for the VNF being “reverted”, as declared in the VNFD as part of “RevertToSnapshotVnfOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" VnfSnapshotInfoModificationRequest: description: | @@ -653,7 +652,7 @@ definitions: description: | New value of the "vnfSnapshotPkgId" attribute in "VnfSnapshotInfo". The value "null" is not permitted. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfSnapshot: description: | New value of the "vnfSnapshot" attribute in "VnfSnapshotInfo". @@ -673,7 +672,7 @@ definitions: description: | If present, this attribute signals modifications of the "vnfSnapshotPkgId" attribute in "VnfSnapshotInfo" as defined in clause 5.5.2.22. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfSnapshot: description: | If present, this attribute signals modifications of the "vnfSnapshot" attribute in @@ -725,7 +724,7 @@ definitions: id: description: > Identifier of the VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfInstanceName: description: > Name of the VNF instance. @@ -739,7 +738,7 @@ definitions: vnfdId: description: > Identifier of the VNFD on which the VNF instance is based. See note 1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfProvider: description: > Provider of the VNF and the VNFD. The value is copied from the VNFD. @@ -751,7 +750,7 @@ definitions: vnfSoftwareVersion: description: > Software version of the VNF. The value is copied from the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Version" vnfdVersion: description: > Identifies the version of the VNFD. The value is copied from the VNFD. @@ -780,7 +779,7 @@ definitions: - isAutoscaleEnabled: If present, the VNF supports auto-scaling. If set to true, auto-scaling is currently enabled. If set to false, auto-scaling is currently disabled. - isAutohealEnabled: If present, the VNF supports auto-healing. If set to true, auto-healing is - currently enabled. If set to false, auto-healing is currently disabled. + currently enabled. If set to false, auto-healing is currently disabled. These configurable properties can be initialized with default values from the VNFD (see note 4). @@ -789,7 +788,7 @@ definitions: Further, these configurable properties can be created, modified or deleted with the PATCH method. In addition, the provisions in clause 5.7 shall apply. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" vimConnectionInfo: description: > Information about VIM connections to be used for managing the @@ -802,7 +801,7 @@ definitions: This attribute can be modified with the PATCH method. type: object additionalProperties: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VimConnectionInfo" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VimConnectionInfo" instantiationState: description: > The instantiation state of the VNF. @@ -823,27 +822,27 @@ definitions: flavourId: description: > Identifier of the VNF deployment flavour applied to this VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" vnfState: description: > The state of the VNF instance. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfOperationalStateType" + $ref: "#/definitions/VnfOperationalStateType" scaleStatus: description: > - Scale status of the VNF, one entry per aspect. - Represents for every scaling aspect how "big" the VNF has been scaled w.r.t. that aspect. + Scale status of the VNF, one entry per aspect. Represents for every scaling aspect how "big" the VNF has been + scaled with reference to that aspect. This attribute shall be present if the VNF supports scaling. See clause B.2 for an explanation of VNF scaling. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ScaleInfo" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ScaleInfo" maxScaleLevels: description: > Maximum allowed scale levels of the VNF, one entry per aspect. This attribute shall be present if the VNF supports scaling. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ScaleInfo" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ScaleInfo" extCpInfo: description: > Information about the external CPs exposed by the VNF instance. When trunking is enabled, @@ -852,7 +851,7 @@ definitions: type: array minItems: 1 items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfExtCpInfo" + $ref: "#/definitions/VnfExtCpInfo" vipCpInfo: description: > VIP CPs that are part of the VNF instance. Shall be present when that particular VIP CP of the VNFC @@ -861,13 +860,13 @@ definitions: type: array minItems: 1 items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VipCpInfo" + $ref: "#/definitions/VipCpInfo" extVirtualLinkInfo: description: > Information about the external VLs the VNF instance is connected to. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ExtVirtualLinkInfo" + $ref: "#/definitions/ExtVirtualLinkInfo" extManagedVirtualLinkInfo: description: > Information about the externally-managed internal VLs of the VNF instance. See notes 5 and 6. @@ -879,7 +878,7 @@ definitions: Active monitoring parameters. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/MonitoringParameter" + $ref: "#/definitions/MonitoringParameter" localizationLanguage: description: > Information about localization language of the VNF (includes e.g. @@ -926,7 +925,7 @@ definitions: passed in the CreateVnfRequest structure (see clause 5.4.2.3.1). These attributes can be created, modified or removed with the PATCH method. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" extensions: description: > Additional VNF-specific attributes that affect the lifecycle management of this VNF instance. @@ -962,81 +961,81 @@ definitions: properties: self: description: URI of this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" indicators: description: Indicators related to this VNF instance, if applicable. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" instantiate: description: > Link to the "Instantiate VNF task" resource, if the related operation is possible based on the current status of this VNF instance resource (i.e. VNF instance in NOT_INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" terminate: description: > Link to the "Terminate VNF task" resource, if the related operation is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" scale: description: > Link to the "Scale VNF task" resource, if the related operation is supported for this VNF instance, and is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" scaleToLevel: description: > Link to the "Scale VNF to level task" resource, if the related operation is supported for this VNF instance, and is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" changeFlavour: description: > Link to the "Change VNF flavour task" resource, if the related operation is supported for this VNF instance, and is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" heal: description: > Link to the "Heal VNF task" resource, if the related operation is supported for this VNF instance, and is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" operate: description: > Link to the "Operate VNF task" resource, if the related operation is supported for this VNF instance, and is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" changeExtConn: description: > Link to the "Change external VNF connectivity task" resource, if the related operation is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" createSnapshot: description: > Link to the "Create VNF snapshot task" resource, if the related operation is supported for this VNF instance and is possible based on the current status of this VNF instance resource (i.e., VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" revertToSnapshot: description: > Link to the "Revert to VNF snapshot task" resource, if the related operation is supported for this VNF instance and is possible based on the current status of this VNF instance resource (i.e., VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" changeCurrentVnfPkg: description: > Link to the "Change current VNF package task" resource, if the related operation is possible based on the current status of this VNF instance resource (i.e. VNF instance is in INSTANTIATED state). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" ExtManagedVirtualLinkInfo: type: object @@ -1051,27 +1050,27 @@ definitions: externally-managed VL information instance. The identifier is assigned by the NFV-MANO entity that manages this VL instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfVirtualLinkDescId: description: > Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" vnfdId: description: > Identifier of the VNFD. Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change current VNF package" operation or due to its final failure). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" networkResource: description: > Reference to the VirtualNetwork resource providing this VL. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" vnfLinkPorts: description: > Link ports of this VL. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLinkPortInfo" + $ref: "#/definitions/VnfLinkPortInfo" extManagedMultisiteVirtualLinkId: description: > Identifier of the externally-managed multi-site VL instance. The identifier is assigned by the NFVMANO entity @@ -1079,7 +1078,7 @@ definitions: internal VL is part of a multi-site VL, e.g., in support of multi-site VNF spanning several VIMs. All externally-managed internal VL instances corresponding to an internal VL created based on the same virtualLinkDescId shall refer to the same extManagedMultisiteVirtualLinkId. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" VirtualStorageResourceInfo: description: > @@ -1099,37 +1098,37 @@ definitions: id: description: > Identifier of this VirtualStorageResourceInfo instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" virtualStorageDescId: description: > Identifier of the VirtualStorageDesc in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" vnfdId: description: > Identifier of the VNFD. Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change current VNF package" operation or due to its final failure). See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" storageResource: description: > Reference to the VirtualStorage resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" zoneId: description: > The identifier of the resource zone, as managed by the resource management layer (typically, the VIM), where the referenced VirtualStorage resource is placed. Shall be provided if this information is available from the VIM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" reservationId: description: > The reservation identifier applicable to the resource. It shall be present when an applicable reservation exists. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" metadata: description: > Metadata about this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" VnfcResourceInfo: description: > @@ -1157,40 +1156,40 @@ definitions: id: description: > Identifier of this VnfcResourceInfo instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" vduId: description: > Reference to the applicable VDU in the VNFD. See note 1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" vnfdId: description: > Identifier of the VNFD. Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change current VNF package" operation or due to its final failure). See note 4. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" computeResource: description: > Reference to the VirtualCompute resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" zoneId: description: > The identifier of the resource zone, as managed by the resource management layer (typically, the VIM), where the referenced VirtualCompute resource is placed. Shall be provided if this information is available from the VIM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" storageResourceIds: description: > References to the VirtualStorage resources. The value refers to a VirtualStorageResourceInfo item in the VnfInstance. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" reservationId: description: > The reservation identifier applicable to the resource. It shall be present when an applicable reservation exists. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfcCpInfo: description: > CPs of the VNFC instance. Shall be present when that particular CP of the VNFC instance @@ -1207,48 +1206,44 @@ definitions: description: > Identifier of this VNFC CP instance and the associated array entry. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" cpdId: description: > Identifier of the VDU CPD, cpdId, in the VNFD. See note 1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" vnfExtCpId: description: > Identifier of the related external CP. Shall be present when the VNFC CP is exposed as an external CP of the VNF instance or connected to an external CP of the VNF instance (see note 2) and shall be absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" cpProtocolInfo: description: > Network protocol information for this CP. May be omitted if the VNFC CP is exposed as an external CP. See note 3. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CpProtocolInfo" + $ref: "#/definitions/CpProtocolInfo" vnfLinkPortId: description: > Identifier of the "VnfLinkPortInfo" structure in the "VnfVirtualLinkResourceInfo" or "ExtManagedVirtualLinkInfo" structure. Shall be present if the CP is associated to a link port on an internal VL (including externally-managed internal VL) of the VNF instance and shall be absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" metadata: description: > Metadata about this CP. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" - + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" parentCpId: description: > Identifier of another VNFC CP instance that corresponds to the parent port of a trunk that the present VNFC CP instance participates in. Shall be provided if the present CP instance participates in a trunk as subport, and the referred VNFC CP instances are also present in the vnfcCpInfo attribute. - - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - - + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" metadata: description: > Metadata about this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" VnfSnapshotInfo: description: > @@ -1262,12 +1257,12 @@ definitions: id: description: > Identifier of the "Individual VNF snapshot" resource. This identifier is allocated by the VNFM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfSnapshotPkgId: description: > Identifier of the VNF snapshot package information held by the NFVO. Shall be present when the “Individual VNF snapshot" resource is created from a VNF snapshot package extraction. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfSnapshot: description: > Information about the VNF snapshot, content and/or references to its content. Shall be present @@ -1284,13 +1279,13 @@ definitions: self: description: > URI of this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" takenFrom: description: > Link to the VNF instance from which this snapshot was taken. Shall be present when the "Individual VNF snapshot" resource is associated to a VNF snapshot created via the corresponding "Create VNF snapshot" task resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" VnfStateSnapshotInfo: description: > @@ -1330,24 +1325,24 @@ definitions: id: description: > Identifier of the VNF Snapshot. This identifier is allocated by the VNFM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfInstanceId: description: > Identifier of the snapshotted VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" creationStartedAt: description: > Timestamp indicating when the VNF snapshot creation has been started by the VNFM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" creationFinishedAt: description: > Timestamp indicating when the VNF snapshot has been completed by the VNFM. Shall be present once the VNF snapshot creation has been completed. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" vnfdId: description: > Identifier of the VNFD in use at the time the snapshot of the VNF instance has been created. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfInstance: description: > VNF Instance information of the snapshotted VNF instance. This is a copy of the "ndividual VNF instance" resource. @@ -1368,7 +1363,7 @@ definitions: userDefinedData: description: > User defined data for the VNF snapshot. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" _links: description: > Links to resources related to this resource. @@ -1379,14 +1374,14 @@ definitions: self: description: > URI of this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" vnfStateSnapshot: description: > Link to the "VNF state snapshot" resource. This attribute shall not be present before the VNF snapshot has been completed. Otherwise, this attribute shall be present if the VNF snapshot has associated additional VNFspecific state data. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" VnfcSnapshotInfo: description: > @@ -1413,30 +1408,30 @@ definitions: the VNFM and is unique within the scope of a VNF snapshot. The attribute also identifies the compute snapshot image associated to this VNFC snapshot within the context of a referred VNF snapshot. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" vnfcInstanceId: description: > Identifier of the snapshotted VNFC instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" creationStartedAt: description: > Timestamp indicating when the VNF snapshot creation has been started by the VNFM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" creationFinishedAt: description: > Timestamp indicating when the VNFC snapshot has been completed. Shall be present once the VNFC snapshot creation has been completed by the VNFM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" vnfcResourceInfoId: description: > Reference to the "VnfcResourceInfo" structure in the "VnfInstance" structure that represents the resource of the snapshotted VNFC instance. A snapshot of that structure is available in the "vnfInstance" attribute of the "VnfSnapshot" structure. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" computeSnapshotResource: description: > Reference to a compute snapshot resource. See note 1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" storageSnapshotResources: description: > Mapping of the storage resources associated to the VNFC with the storage snapshot resources. @@ -1452,15 +1447,15 @@ definitions: that represents the virtual storage resource. The attribute also identifies the storage snapshot image associated to this VNFC snapshot within the context of a referred VNF snapshot. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" storageSnapshotResource: description: > Reference to a storage snapshot resource. See note 2. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" userDefinedData: description: > User defined data for the VNFC snapshot. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" VnfVirtualLinkResourceInfo: description: > @@ -1480,33 +1475,33 @@ definitions: id: description: > Identifier of this VnfVirtualLinkResourceInfo instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" vnfVirtualLinkDescId: description: > Identifier of the VNF Virtual Link Descriptor (VLD) in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" vnfdId: description: > Identifier of the VNFD. Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change current VNF package" operation or due to its final failure). See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" networkResource: description: > Reference to the VirtualNetwork resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" zoneId: description: > The identifier of the resource zone, as managed by the resource management layer (typically, the VIM), where the referenced VirtualNetwork resource is placed. Shall be provided if this information is available from the VIM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" reservationId: description: > The reservation identifier applicable to the resource. It shall be present when an applicable reservation exists. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfLinkPorts: description: > Links ports of this VL. @@ -1515,11 +1510,11 @@ definitions: May be present otherwise. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLinkPortInfo" + $ref: "#/definitions/VnfLinkPortInfo" metadata: description: > Metadata about this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" AffectedVnfc: description: > @@ -1542,17 +1537,17 @@ definitions: description: > Identifier of the Vnfc instance, identifying the applicable "vnfcResourceInfo" entry in the "VnfInstance" data type. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" vduId: description: > Identifier of the related VDU in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" vnfdId: description: > Identifier of the VNFD. Shall be present in case of a "change current VNF Package" to identify whether the affected VNFC instance is associated to a VDU which is referred from the source or destination VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" changeType: description: > Signals the type of change. Permitted values: @@ -1573,24 +1568,24 @@ definitions: Reference to the VirtualCompute resource. Detailed information is (for new and modified resources) or has been (for removed resources) available from the VIM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" resourceDefinitionId: description: > The identifier of the "ResourceDefinition" in the granting exchange related to the LCM operation occurrence. It shall be present when an applicable GrantInfo for thegranted resource exists. See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" zoneId: description: > The identifier of the resource zone, as managed by the resource management layer (typically, the VIM), where the referenced VirtualCompute resource is placed. Shall be provided if this information is available from the VIM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" metadata: description: > Metadata about this resource. The content of this attribute shall be a copy of the content of the "metadata" attribute of the VnfcResourceInfo structure. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" affectedVnfcCpIds: description: > Identifiers of CP(s) of the VNFC instance that were affected by the @@ -1600,7 +1595,7 @@ definitions: May be present for further affected CPs of the VNFC instance. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" addedStorageResourceIds: description: > References to VirtualStorage resources that have been added. Each @@ -1609,7 +1604,7 @@ definitions: least one storage resource was added to the VNFC. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" removedStorageResourceIds: description: > References to VirtualStorage resources that have been removed. @@ -1620,7 +1615,7 @@ definitions: from the VNFC. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" VnfLcmOpOcc: description: > @@ -1666,42 +1661,42 @@ definitions: id: description: > Identifier of this VNF lifecycle management operation occurrence. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" operationState: description: > The state of the LCM operation. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LcmOperationStateType" + $ref: "#/definitions/LcmOperationStateType" stateEnteredTime: description: > Date-time when the current state has been entered. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" startTime: description: > Date-time of the start of the operation. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" vnfInstanceId: description: > Identifier of the VNF instance to which the operation applies - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" grantId: description: > Identifier of the grant related to this VNF LCM operation occurrence. Shall be set to the value of the "id" attribute in the "Grant" representing the associated "Individual Grant", if such grant exists. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" operation: description: > Type of the actual LCM operation represented by this VNF LCM operation occurrence. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/LcmOperationType" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/LcmOperationType" isAutomaticInvocation: description: > Set to true if this VNF LCM operation occurrence has been triggered by an automated procedure inside the VNFM (i.e. ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf triggered by auto-heal). Set to false otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Boolean" operationParams: description: > Input parameters of the LCM operation. This attribute shall be @@ -1728,12 +1723,12 @@ definitions: If the VNF LCM operation occurrence is in "STARTING", "PROCESSING" or "ROLLING_BACK" state and the operation is being cancelled, this attribute shall be set to true. Otherwise, it shall be set to false. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Boolean" cancelMode: description: > The mode of an ongoing cancellation. Shall be present when isCancelPending=true, and shall be absent otherwise. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/CancelModeType" + $ref: "#/definitions/CancelModeType" error: description: > If "operationState" is "FAILED_TEMP" or "FAILED" or "operationState" @@ -1741,7 +1736,7 @@ definitions: "operationState" was "FAILED_TEMP", this attribute shall be present and contain error information, unless it has been requested to be excluded via an attribute selector. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" resourceChanges: description: > This attribute contains information about the cumulative changes to @@ -1788,24 +1783,24 @@ definitions: the execution of the lifecycle management operation. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedVipCp" + $ref: "#/definitions/AffectedVipCp" changedExtConnectivity: description: > Information about changed external connectivity, if applicable. See note 1. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ExtVirtualLinkInfo" + $ref: "#/definitions/ExtVirtualLinkInfo" modificationsTriggeredByVnfPkgChange: description: > Information about performed changes of "VnfInstance" attributes triggered by changing the current VNF package, if applicable. Shall be absent if the "operation" attribute is different from "CHANGE_VNFPKG". See notes 1 and 2. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ModificationsTriggeredByVnfPkgChange" + $ref: "#/definitions/ModificationsTriggeredByVnfPkgChange" vnfSnapshotInfoId: description: > Identifier of the "individual VNF snapshot" resource. Shall be present if applicable to the type of LCM operation, i.e., if the value of the "operation" attribute is either "CREATE_SNAPSHOT" or "REVERT_TO_SNAPSHOT". - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" lcmCoordinations: description: > Information about LCM coordination actions (see clause 10 in ETSI GS NFV-SOL002) related to this LCM operation occurrence. @@ -1821,11 +1816,11 @@ definitions: id: description: > Identifier of this coordination action. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" coordinationActionName: description: > Indicator of the actual coordination action. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" coordinationResult: description: > The result of executing the coordination action which also implies the action to be performed by the VNFM as @@ -1833,23 +1828,23 @@ definitions: Shall be present if the coordination has been finished. Shall be absent if the coordination is ongoing or has timed out (see note 4). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/LcmCoordResultType" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/LcmCoordResultType" startTime: description: > The time when the VNFM has received the confirmation that the coordination action has been started. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" endTime: description: > The time when the VNFM has received the confirmation that the coordination action has finished or has been cancelled, or the time when a coordination action has timed out. Shall be present for a coordination action that has finished or timed out (see note 4) and shall be absent if the coordination is ongoing. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" delay: description: > The end of the delay period. This attribute shall be present if the last known HTTP response related to this coordination has contained a "Retry-After" header, and shall be absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" endpointType: description: > The endpoint type used by this coordination action. @@ -1876,15 +1871,15 @@ definitions: coordinationActionName: description: > Indicator of the actual coordination action. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" rejectionTime: description: > The time when the VNFM has received the 503 response that rejects the actual coordination. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" delay: description: > The end of the delay period, as calculated from the startTime and "Retry-After" header. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" endpointType: description: > The endpoint type used by this coordination action. @@ -1915,44 +1910,44 @@ definitions: self: description: > URI of this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" vnfInstance: description: > Link to the VNF instance that the operation applies to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" grant: description: > Link to the grant for this operation, if one exists. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" cancel: description: > Link to the task resource that represents the "cancel" operation for this VNF LCM operation occurrence, if cancelling is currently allowed. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" retry: description: > Link to the task resource that represents the "retry" operation for this VNF LCM operation occurrence, if retrying is currently allowed. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" rollback: description: > Link to the task resource that represents the "rollback" operation for this VNF LCM operation occurrence, if rolling back is currently allowed. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" fail: description: > Link to the task resource that represents the "fail" operation for this VNF LCM operation occurrence, if declaring as failed is currently allowed. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" vnfSnapshot: description: > Link to the VNF snapshot resource, if the VNF LCM operation occurrence is related to a VNF snapshot. Shall be present if operation="CREATE_SNAPSHOT" or operation="REVERT_TO_SNAPSHOT". - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" AffectedExtLinkPort: description: > @@ -1974,7 +1969,7 @@ definitions: description: > Identifier of the link port, identifying the applicable "extLinkPorts" entry in the "ExtVirtualLinkInfo" data type (see clause 5.5.3.2). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" changeType: description: > Signals the type of change. @@ -1989,17 +1984,17 @@ definitions: extCpInstanceId: description: > Identifier of the related external CP instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" resourceHandle: description: > Reference to the link port resource. Detailed information is (for added resources) or has been (for removed resources) available from the VIM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" resourceDefinitionId: description: > The identifier of the "ResourceDefinition" in the granting exchange related to the LCM operation occurrence. It shall be present when an applicable GrantInfo for the granted resource exists. See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" VnfLcmOperationOccurrenceNotification: description: > @@ -2075,7 +2070,7 @@ definitions: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these notifications shall have the same value. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" notificationType: description: > Discriminator for the different notification types. Shall be set to @@ -2087,11 +2082,11 @@ definitions: description: > Identifier of the subscription that this notification relates to.Shall be set to the value of the "id" attribute of the "LccnSubscription" representing the associated "Individual subscription" resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" timeStamp: description: > Date-time of the generation of the notification. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" notificationStatus: description: > Indicates whether this notification reports about the start of a @@ -2108,15 +2103,15 @@ definitions: operationState: description: > The state of the VNF LCM operation occurrence. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LcmOperationStateType" + $ref: "#/definitions/LcmOperationStateType" vnfInstanceId: description: > The identifier of the VNF instance affected. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" operation: description: > The lifecycle management operation. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/LcmOperationType" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/LcmOperationType" isAutomaticInvocation: description: > Set to true if this VNF LCM operation occurrence has been triggered @@ -2130,13 +2125,13 @@ definitions: This attribute signals the verbosity of the notification. If it is not present, it shall default to the value "FULL". If the value is "SHORT", full change details can be obtained by performing a GET request on the "Individual LCM operation occurrence" resource that is signalled by the "vnfLcmOpOcc" child attribute of the "_links" attribute. - $ref: '../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LcmOpOccNotificationVerbosityType' + $ref: '#/definitions/LcmOpOccNotificationVerbosityType' vnfLcmOpOccId: description: > The identifier of the VNF lifecycle management operation occurrence associated to the notification. Shall be set to the value of the "id" attribute of the "VnfLcmOpOcc" representing the associate "Individual VNF lifecycle management operation occurrence" resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" affectedVnfcs: description: > Information about VNFC instances that were affected during the lifecycle operation. See note 1. @@ -2182,7 +2177,7 @@ definitions: Only information about VIP CP instances that have been added, deleted or modified shall be provided. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedVipCp" + $ref: "#/definitions/AffectedVipCp" changedExtConnectivity: @@ -2196,28 +2191,28 @@ definitions: have been added or modified shall be provided. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ExtVirtualLinkInfo" + $ref: "#/definitions/ExtVirtualLinkInfo" modificationsTriggeredByVnfPkgChange: description: > Information about performed changes of "VnfInstance" attributes triggered by changing the current VNF package. Shall be present if the "notificationStatus" is set to "RESULT", the "operation" attribute is equal to "CHANGE_VNFPKG", the "verbosity" attribute is set to "FULL" and the operation has performed any changes to "VnfInstance" attributes. Shall be absent otherwise. See note 3. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ModificationsTriggeredByVnfPkgChange" + $ref: "#/definitions/ModificationsTriggeredByVnfPkgChange" error: description: > Details of the latest error, if one has occurred during executing the LCM operation (see clause 6.3 of ETSI GS NFV-SOL 013). Shall be present if the "operationState" attribute is "FAILED_TEMP", "FAILED" or "ROLLED_BACK" and shall be absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" _links: description: > Links to resources related to this notification. The link URIs in this structure shall be set to point to the resources identified by the corresponding identifier attributes in this notification. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnLinks" + $ref: "#/definitions/LccnLinks" AffectedVirtualLink: description: > @@ -2243,17 +2238,17 @@ definitions: description: > Identifier of the virtual link instance, identifying the applicable "vnfVirtualLinkResourceInfo" or "extManagedVirtualLinkInfo" entry in the "VnfInstance" data type. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" vnfVirtualLinkDescId: description: > Identifier of the related VLD in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" vnfdId: description: > Identifier of the VNFD. Shall be present in case of a "change current VNF Package" to identify whether the affected VL instance is associated to a VLD which is referred from the source or destination VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" changeType: description: > Signals the type of change. @@ -2280,7 +2275,7 @@ definitions: Reference to the VirtualNetwork resource. Detailed information is (for new and modified resources) or has been (for removed resources) available from the VIM. See note 1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" vnfLinkPortIds: description: > Identifiers of the link ports of the affected VL related to the change. Each identifier references a "VnfLinkPortInfo" @@ -2292,25 +2287,25 @@ definitions: attribute in the "VnfInstance" structure. See note 1. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" resourceDefinitionId: description: > The identifier of the "ResourceDefinition" in the granting exchange related to the LCM operation occurrence. It shall be present when an applicable GrantInfo for the granted resource exists. See note 1 and note 2. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" zoneId: description: > The identifier of the resource zone, as managed by the resource management layer (typically, the VIM), where the referenced VirtualNetwork resource is placed. Shall be provided if this information is available from the VIM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" metadata: description: > Metadata about this resource. The content of this attribute shall be a copy of the content of the "metadata" attribute of the applicable "vnfVirtualLinkResourceInfo” structure if such structure is referenced by the "id" attribute and it has metadata. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" AffectedVirtualStorage: description: > @@ -2332,17 +2327,17 @@ definitions: description: > Identifier of the storage instance, identifying the applicable "virtualStorageResourceInfo" entry in the "VnfInstance" data type. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" virtualStorageDescId: description: > Identifier of the related VirtualStorage descriptor in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" vnfdId: description: > Identifier of the VNFD. Shall be present in case of a "change current VNF Package" to identify whether the affected virtual storage instance is associated to a VirtualStorage descriptor which is referred from the source or destination VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" changeType: description: > Signals the type of change. Permitted values: @@ -2363,21 +2358,892 @@ definitions: Reference to the VirtualStorage resource. Detailed information is (for new and modified resources) or has been (for removed resources) available from the VIM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" resourceDefinitionId: description: > The identifier of the "ResourceDefinition" in the granting exchange related to the LCM operation occurrence. It shall be present when an applicable GrantInfo for the granted resource exists. See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" zoneId: description: > The identifier of the resource zone, as managed by the resource management layer (typically, the VIM), where the referenced VirtualNetwork resource is placed. Shall be provided if this information is available from the VIM. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" metadata: description: > Metadata about this resource. The content of this attribute shall be a copy of the content of the "metadata" attribute of the VirtualStorageResourceInfo structure. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" \ No newline at end of file + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" + + CreateVnfRequest: + type: object + required: + - vnfdId + properties: + vnfdId: + description: > + Identifier that identifies the VNFD which defines the VNF instance to + be created. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + vnfInstanceName: + description: > + Human-readable name of the VNF instance to be created. + type: string + vnfInstanceDescription: + description: > + Human-readable description of the VNF instance to be created. + type: string + metadata: + description: > + If present, this attribute provides additional initial values, overriding those obtained from the VNFD, for + the "metadata" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling metadata + during the operation are defined in clause 5.4.2.3.1. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" + + CancelMode: + description: > + This type represents a parameter to select the mode of cancelling an + ongoing VNF LCM operation occurrence. + type: object + required: + - cancelMode + properties: + cancelMode: + description: > + Cancellation mode to apply. + $ref: "#/definitions/CancelModeType" + + CancelModeType: + description: > + Cancellation mode. + GRACEFUL: If the VNF LCM operation occurrence is in "PROCESSING" or + "ROLLING_BACK" state, the VNFM shall not start any new resource + management operation and shall wait for the ongoing resource management + operations in the underlying system, typically the VIM, to finish + execution or to time out. After that, the VNFM shall put the operation + occurrence into the FAILED_TEMP state. + If the VNF LCM operation occurrence is in "STARTING" state, the VNFM + shall not start any resource management operation and shall wait for + the granting request to finish execution or time out. After that, the + VNFM shall put the operation occurrence into the ROLLED_BACK state. + FORCEFUL: If the VNF LCM operation occurrence is in "PROCESSING" or + "ROLLING_BACK" state, the VNFM shall not start any new resource + management operation, shall cancel the ongoing resource management + operations in the underlying system, typically the VIM, and shall wait + for the cancellation to finish or to time out. After that, the VNFM + shall put the operation occurrence into the FAILED_TEMP state. + If the VNF LCM operation occurrence is in "STARTING" state, the VNFM + shall not start any resource management operation and put the operation + occurrence into the ROLLED_BACK state. + type: string + enum: + - GRACEFUL + - FORCEFUL + + ScaleVnfRequest: + type: object + required: + - type + - aspectId + properties: + type: + description: > + Indicates the type of the scale operation requested. + Permitted values: + * SCALE_OUT: adding additional VNFC instances to the VNF to increase + capacity + * SCALE_IN: removing VNFC instances from the VNF in order to release + unused capacity. + type: string + enum: + - SCALE_OUT + - SCALE_IN + aspectId: + description: > + Identifier of the scaling aspect. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" + numberOfSteps: + description: > + Number of scaling steps to be executed as part of this Scale VNF + operation. It shall be a positive number and the default value + shall be 1. + type: integer + default: 1 + additionalParams: + description: > + Additional parameters passed by the NFVO as input to the scaling + process, specific to the VNF being scaled, as declared in the VNFD + as part of "ScaleVnfOpConfig" defined in ETSI GS NFV-IFA 011. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" + + ScaleVnfToLevelRequest: + description: > + This type represents request parameters for the "Scale VNF to Level" operation. + It shall comply with the provisions defined in table 5.5.2.6-1. See clause B.2 + for an explanation of VNF scaling. + + NOTE: Either the instantiationLevelId attribute or the scaleInfo attribute shall + be included. + type: object + anyOf: + - oneOf: + - required: + - instantiationLevelId + - required: + - scaleInfo + properties: + instantiationLevelId: + description: > + Identifier of the target instantiation level of the current + deployment flavour to which the VNF is requested to be scaled. + See note. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" + scaleInfo: + description: > + For each scaling aspect of the current deployment flavour, indicates + the target scale level to which the VNF is to be scaled. + See note. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ScaleInfo" + additionalParams: + description: > + Additional parameters passed by the NFVO as input to the scaling + process, specific to the VNF being scaled, as declared in the + VNFD as part of "ScaleVnfToLevelOpConfig" defined in ETSI GS NFV-IFA 011. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" + + LccnSubscriptionRequest: + description: > + This type represents a subscription request related to notifications + about VNF lifecycle changes. + type: object + required: + - callbackUri + properties: + filter: + description: > + Filter settings for this subscription, to define the subset of all + notifications this subscription relates to. A particular + notification is sent to the subscriber if the filter matches, or if + there is no filter. + $ref: "#/definitions/LifecycleChangeNotificationsFilter" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" + authentication: + description: > + Authentication parameters to configure the use of Authorization when + sending notifications corresponding to this subscription, as defined + in clause 8.3.4 of ETSI GS NFV-SOL 013. + This attribute shall only be present if the subscriber requires + authorization of notifications. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/SubscriptionAuthentication" + verbosity: + description: > + This attribute signals the requested verbosity of LCM operation occurrence notifications. If it is not present, + it shall default to the value "FULL". + $ref: "#/definitions/LcmOpOccNotificationVerbosityType" + + LifecycleChangeNotificationsFilter: + description: > + This type represents a subscription filter related to notifications about VNF lifecycle changes. + It shall comply with the provisions defined in table 5.5.3.12-1. + At a particular nesting level in the filter structure, the following applies: All attributes shall + match in order for the filter to match (logical "and" between different filter attributes). + If an attribute is an array, the attribute shall match if at least one of the values in the array + matches (logical "or" between the values of one filter attribute). + + NOTE: The permitted values of the "notificationTypes" attribute are spelled exactly as the names of + the notification types to facilitate automated code generation systems. + type: object + properties: + vnfInstanceSubscriptionFilter: + description: > + Filter criteria to select VNF instances about which to notify. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VnfInstanceSubscriptionFilter" + notificationTypes: + description: > + Match particular notification types. + + Permitted values: + - VnfLcmOperationOccurrenceNotification + - VnfIdentifierCreationNotification + - VnfIdentifierDeletionNotification + See note. + type: array + items: + type: string + enum: + - VnfLcmOperationOccurrenceNotification + - VnfIdentifierCreationNotification + - VnfIdentifierDeletionNotification + operationTypes: + description: > + Match particular VNF lifecycle operation types for the notification + of type VnfLcmOperationOccurrenceNotification. + May be present if the "notificationTypes" attribute contains the + value "VnfLcmOperationOccurrenceNotification", and shall be absent + otherwise. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/LcmOperationType" + operationStates: + description: > + Match particular LCM operation state values as reported in + notifications of type VnfLcmOperationOccurrenceNotification. + May be present if the "notificationTypes" attribute contains the + value "VnfLcmOperationOccurrenceNotification", and shall be absent + otherwise. + type: array + items: + $ref: "#/definitions/LcmOperationStateType" + + LcmOpOccNotificationVerbosityType: + description: > + The enumeration LcmOpOccNotificationVerbosityType provides values to control the verbosity of LCM operation + occurrence notifications. + * FULL: This signals a full notification which contains all change details. + * SHORT: This signals a short notification which omits large-volume change details to reduce the size of data to + be sent via the notification mechanism. + type: string + enum: + - FULL + - SHORT + + LcmOperationStateType: + description: > + STARTING: The LCM operation is starting. + PROCESSING: The LCM operation is currently in execution. + COMPLETED: The LCM operation has been completed successfully. + FAILED_TEMP: The LCM operation has failed and execution has stopped, + but the execution of the operation is not considered to be closed. + FAILED: The LCM operation has failed and it cannot be retried or rolled back, + as it is determined that such action won't succeed. + ROLLING_BACK: The LCM operation is currently being rolled back. + ROLLED_BACK: The LCM operation has been successfully rolled back, + i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible. + type: string + enum: + - STARTING + - PROCESSING + - COMPLETED + - FAILED_TEMP + - FAILED + - ROLLING_BACK + - ROLLED_BACK + + LccnSubscription: + description: > + This type represents a subscription related to notifications about VNF + lifecycle changes. + type: object + required: + - id + - callbackUri + - verbosity + - _links + properties: + id: + description: > + Identifier of this subscription resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + filter: + description: > + Filter settings for this subscription, to define the subset of all + notifications this subscription relates to. A particular + notification is sent to the subscriber if the filter matches, or if + there is no filter. + $ref: "#/definitions/LifecycleChangeNotificationsFilter" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" + verbosity: + description: > + This attribute signals the verbosity of LCM operation occurrence notifications. + $ref: "#/definitions/LcmOpOccNotificationVerbosityType" + _links: + description: > + Links to resources related to this resource. + type: object + required: + - self + properties: + self: + description: > + URI of this resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" + + VnfOperationalStateType: + description: > + STARTED: The VNF instance is up and running. + STOPPED: The VNF instance has been shut down. + type: string + enum: + - STARTED + - STOPPED + + VnfExtCpInfo: + description: > + This type represents information about an external CP of a VNF. + It shall comply with the provisions defined in table 5.5.3.17 1. + + NOTE 1: The attributes "associatedVnfcCpId", "associatedVipCpId" and "associatedVnfVirtualLinkId" + are mutually exclusive. Exactly one shall be present. + NOTE 2: An external CP instance is not associated to a link port in the cases indicated for the + “extLinkPorts” attribute in clause 4.4.1.11. + type: object + required: + - id + - cpdId + - cpConfigId + - cpProtocolInfo + oneOf: + - required: + - associatedVnfcCpId + - required: + - associatedVipCpId + - required: + - associatedVnfVirtualLinkId + properties: + id: + description: > + Identifier of the external CP instance and the related information instance. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + cpdId: + description: > + Identifier of the external CPD, VnfExtCpd, in the VNFD. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" + cpConfigId: + description: > + Identifier that references the applied "VnfExtCpConfig" entry in the "cpConfig" map of the "currentVnfExtCpData" + in the "ExtVirtualLinkInfo" structure. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change + current VNF package" operation or due to its final failure). + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + cpProtocolInfo: + description: > + Network protocol information for this CP. + type: array + items: + $ref: "#/definitions/CpProtocolInfo" + extLinkPortId: + description: > + Identifier of the "ExtLinkPortInfo" structure inside the "ExtVirtualLinkInfo" structure. + Shall be present if the CP is associated to a link port. See note 2. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + metadata: + description: > + Metadata about this external CP. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" + associatedVnfcCpId: + description: > + Identifier of the "vnfcCpInfo" structure in "VnfcResourceInfo" structure that represents the VNFC CP + which is exposed by this external CP instance, either directly or via a floating IP address. + Shall be present in case this CP instance maps to a VNFC CP. See note 1. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + associatedVipCpId: + description: > + Identifier of the VIP CP instance that is exposed as this VnfExtCp instance, either directly or via a + floating IP address, and the related "VipCpInfo" structure in "VnfInstance". Shall be present if the + cpdId of this VnfExtCp has a vipCpd attribute. See note 1. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + associatedVnfVirtualLinkId: + description: > + Identifier of the "VnfVirtualLinkResourceInfo" structure that represents the internal VL or of the + "ExtManagedVirtualLinkInfo" structure that represents the externally-managed internal VL which is + exposed by this external CP instance. Shall be present in case this CP instance maps to an internal + VL (including externally-managed internal VL). See note 1. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + + CpProtocolInfo: + description: > + This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses. + It shall comply with the provisions defined in table 5.5.3.9b-1. + + NOTE: This attribute allows to signal the addition of further types of layer and protocol in future versions of the + present document in a backwards-compatible way. In the current version of the present document, only IP over + Ethernet is supported. + type: object + required: + - layerProtocol + properties: + layerProtocol: + description: > + The identifier of layer(s) and protocol(s) associated to the network address information. + + Permitted values: IP_OVER_ETHERNET + See note. + type: string + enum: + - IP_OVER_ETHERNET + ipOverEthernet: + description: > + IP addresses over Ethernet to assign to the extCP instance. Shall be + present if layerProtocol is equal to " IP_OVER_ETHERNET", and shall + be absent otherwise. + $ref: "#/definitions/IpOverEthernetAddressInfo" + + IpOverEthernetAddressInfo: + description: > + This type represents information about a network address that has been assigned. + It shall comply with the provisions defined in table 5.5.3.10-1. + + NOTE 1: At least one of "macAddress" or "ipAddresses" shall be present. + NOTE 2: Exactly one of "addresses" or "addressRange" shall be present. + NOTE 3: If the Cp instance represents a subport in a trunk, segmentationId shall be present. + Otherwise it shall not be present. + NOTE 4: Depending on the NFVI networking infrastructure, the segmentationId may indicate the + actual network segment value (e.g. vlan Id, Vxlan segmentation id, etc.) used in the + transport header of the packets or it may be an identifier used between the application + and the NFVI networking infrastructure to identify the network sub-interface of the trunk + port in question. In the latter case the NFVI infrastructure will map this local segmentationId + to whatever segmentationId is actually used by the NFVI’s transport technology. + type: object + anyOf: + - required: + - macAddress + - required: + - ipAddresses + oneOf: + - required: + - addresses + - required: + - addressRange + properties: + macAddress: + description: > + MAC address, if assigned. See note 1. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/MacAddress" + segmentationId: + description: > + Identification of the network segment to which the Cp instance connects to. See notes 3 and 4. + type: string + ipAddresses: + description: > + Addresses assigned to the CP instance. Each entry represents IP addresses assigned by fixed or + dynamic IP address assignment per subnet. See note 1. + type: array + items: + type: object + required: + - type + properties: + type: + description: > + The type of the IP addresses. + Permitted values: IPV4, IPV6. + type: string + enum: + - IPV4 + - IPV6 + addresses: + description: > + Fixed addresses assigned (from the subnet defined by "subnetId" if provided). See note 2. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IpAddress" + isDynamic: + description: > + Indicates whether this set of addresses was assigned + dynamically (true) or based on address information provided as + input from the API consumer (false). Shall be present if + "addresses" is present and shall be absent otherwise. + type: boolean + addressRange: + description: > + An IP address range used, e.g. in case of egress connections. See note 2. + type: object + required: + - minAddress + - maxAddress + properties: + minAddress: + description: > + Lowest IP address belonging to the range. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IpAddress" + maxAddress: + description: > + Highest IP address belonging to the range + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IpAddress" + subnetId: + description: > + Subnet defined by the identifier of the subnet resource in + the VIM. + In case this attribute is present, IP addresses are bound + to that subnet. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim" + + VipCpInfo: + description: > + This type provides information related to virtual IP (VIP) CP. It shall comply with the provisions + defined in table 5.5.3.28-1. + + NOTE 1: It is possible that there is no associated VnfcCp because the VIP CP is available but not + associated yet. + NOTE 2: If only the value or the presence of this attribute is changed in the "VipCpInfo" structure + by an LCM operation occurrence, this does not represent a change that requires including a related + "AffectedVipCp" structure in the VNF LCM operation occurrence notifications or the "VnfLcmOpOcc" + structure related to this LCM operation occurrence. + type: object + required: + - cpInstanceId + - cpdId + properties: + cpInstanceId: + description: > + Identifier of this VIP CP instance and of this VipCpInfo structure. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + cpdId: + description: > + Identifier of the VIP Connection Point Descriptor, VipCpd, in the VNFD. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case the value differs from the vnfdId attribute of the VnfInstance + (e.g. during a "Change current VNF package" operation or due to its final failure). See note 2. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + vnfExtCpId: + description: > + When the VIP CP is exposed as external CP of the VNF, the identifier of this external VNF CP instance. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + cpProtocolInfo: + description: > + Protocol information for this CP. There shall be one cpProtocolInfo for layer 3. + There may be one cpProtocolInfo for layer 2. + type: array + items: + $ref: "#/definitions/CpProtocolInfo" + associatedVnfcCpIds: + description: > + Identifiers of the VnfcCps that share the virtual IP addresse allocated to the VIP CP instance. See note. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + vnfLinkPortId: + description: > + Identifier of the "VnfLinkPortInfo" structure in the "VnfVirtualLinkResourceInfo" or + "ExtManagedVirtualLinkInfo" structure. Shall be present if the CP is associated to a + link port on an internal VL (including externally-managed internal VL). + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + metadata: + description: > + Metadata about this VIP CP. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" + + ExtVirtualLinkInfo: + description: > + This type represents information about an external VL. It shall comply with the provisions defined in table 5.5.3.2-1. + + NOTE: This attribute reflects the current configuration information that has resulted from merging into this attribute + the "VnfExtCpData" information which was passed as part of the "ExtVirtualLinkData" structure in the input of the + most recent VNF LCM operation such as "InstantiateVnfRequest", "ChangeExtVnfConnectivityRequest", "ChangeVnfFlavourRequest" + or "ChangeCurrentVnfPkgRequest", or in the Grant response. If applying such change results in an empty list of + "currentVnfExtCpData" structure instances, the affected instance of "ExtVirtualLinkInfo" shall be removed from its + parent data structure. + type: object + required: + - id + - resourceHandle + - currentVnfExtCpData + properties: + id: + description: > + Identifier of the external VL and the related external VL + information instance. + The identifier is assigned by the NFV-MANO entity that manages this + VL instance. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + resourceHandle: + description: > + Reference to the resource realizing this VL. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" + extLinkPorts: + description: > + Link ports of this VL. + type: array + items: + $ref: "#/definitions/ExtLinkPortInfo" + currentVnfExtCpData: + description: > + Allows the API consumer to read the current CP configuration information for the connection of external CPs + to the external virtual link. See note. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VnfExtCpData" + + ExtLinkPortInfo: + description: > + This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to + an NS VL. It shall comply with the provisions defined in table 5.5.3.9-1. + + NOTE 1: The use cases UC#4 and UC#5 in clause A.4 of ETSI GS NFV-IFA 007 provide examples for such a configuration. + NOTE 2: The value of "trunkResourceId" is scoped by the value of "vimConnectionId" in the "resourceHandle" attribute. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + Identifier of this link port as provided by the entity that has + created the link port. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + resourceHandle: + description: > + Reference to the virtualised resource realizing this link + port. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" + cpInstanceId: + description: > + Identifier of the external CP of the VNF connected to this link + port. There shall be at most one link port associated with any + external connection point instance. The value refers to an + "extCpInfo" item in the VnfInstance. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + secondaryCpInstanceId: + description: > + Additional external CP of the VNF connected to this link port. + If present, this attribute shall refer to a "secondary" ExtCpInfo item in the VNF instance that exposes a virtual + IP CP instance which shares this linkport with the external CP instance referenced by the "cpInstanceId" attribute. + See note 1. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + trunkResourceId: + description: > + Identifier of the trunk resource in the VIM. + Shall be present if the present link port corresponds to the parent port that the trunk resource is associated with. + See note 2. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim" + + MonitoringParameter: + type: object + required: + - id + - performanceMetric + properties: + id: + description: > + Identifier of the monitoring parameter defined in the VNFD. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" + vnfdId: + description: > + Identifier of the VNFD. + Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change + current VNF package" operation or due to its final failure). + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + name: + description: > + Human readable name of the monitoring parameter, as defined in the + VNFD. + type: string + performanceMetric: + description: > + Performance metric that is monitored. This attribute shall contain the + related "Measurement Name" value as defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + + VnfLinkPortInfo: + description: > + This type represents a link port of an internal VL of a VNF. It shall comply with the provisions + defined in table 5.5.3.8 1. + + NOTE 1: Either cpInstanceId with cpInstanceType set to "EXT_CP" or any combination of cpInstanceId + with cpInstanceType set to "VNFC_CP" and vipCpInstanceId (i.e. one or both of them) shall be + present for a VnfLinkPortInfo. In case both cpInstanceId with cpInstanceType set to "VNFC_CP" + and vipCpInstanceId are present, the two different CP instances share the linkport. + NOTE 2: Annex A.4 of ETSI GS NFV-IFA 007 provides examples for configurations where both vipCpInstanceId + and vnfcCpInstanceId are present (UC#5 and UC#5-b), only vnfcCpInstanceId is present (UC#2), or + only vipCpInstanceId is present (UC6 and UC#6-b). + NOTE 3: The value of "trunkResourceId" is scoped by the value of "vimConnectionId" in the "resourceHandle" + attribute. + type: object + required: + - id + - resourceHandle + properties: + id: + description: > + Identifier of this link port as provided by the entity that has created the link port. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + resourceHandle: + description: > + Reference to the virtualised resource realizing this link + port. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" + cpInstanceId: + description: > + When the link port is used for external connectivity by the VNF, this attribute represents the + identifier of the external CP associated with this link port. + + When the link port is used for internal connectivity in the VNF, this attribute represents the + identifier of the VNFC CP to be connected to this link port. + + Shall be present when the link port is used for external connectivity by the VNF. + May be present if used to reference a VNFC CP instance. + There shall be at most one link port associated with any external connection point instance or + internal connection point (i.e. VNFC CP) instance. + The value refers to an "extCpInfo" item in the VnfInstance or a "vnfcCpInfo" item of a "vnfcResourceInfo" + item in the VnfInstance. See note 1. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + cpInstanceType: + description: > + Type of the CP instance that is identified by cpInstanceId. + Shall be present if "cpInstanceId" is present and shall be absent otherwise. + + Permitted values: + - VNFC_CP: The link port is connected to a VNFC CP. + - EXT_CP: The link port is associated to an external CP. + See note 1. + type: string + enum: + - VNFC_CP + - EXT_CP + vipCpInstanceId: + description: > + VIP CP instance of the VNF connected to this link port. May be present. + See notes 1, and 2. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + trunkResourceId: + description: > + Identifier of the trunk resource in the VIM. + Shall be present if the present link port corresponds to the parent port that the trunk resource is associated with. + See note 3. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim" + + AffectedVipCp: + description: > + This type provides information about added, deleted and modified virtual IP CP instances. + type: object + required: + - cpInstanceId + - cpdId + - changeType + properties: + cpInstanceId: + description: > + Identifier of the virtual IP CP instance and the related "VipCpInfo" structure in "VnfInstance". + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + + cpdId: + description: > + Identifier of the VipCpd in the VNFD. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" + + vnfdId: + description: > + Reference to the VNFD. + Shall be present in case of a "change current VNF Package" to + identify whether the affected virtual CP instance is associated + to a VipCpd which is referred from the source or destination VNFD. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + + changeType: + description: > + Signals the type of change. + Permitted values: + - ADDED + - REMOVED + - MODIFIED + type: string + enum: + - ADDED + - REMOVED + - MODIFIED + + ModificationsTriggeredByVnfPkgChange: + description: > + This type represents attribute modifications that were performed on an "Individual VNF instance" resource + when changing the current VNF package. The attributes that can be included consist of those requested to + be modified explicitly in the "ChangeCurrentVnfPkgRequest" data structure, and additional attributes of the + "VnfInstance" data structure that were modified implicitly during the operation. + The "ModificationsTriggeredByVnfPkgChange" data type shall comply with the provisions defined in table 5.5.3.21-1. + + NOTE 1: This attribute represents the delta (semantics as per IETF RFC 7396, JSON Merge Patch) between the value + of the attribute at the start of the "Change current VNF package" operation and the value of the attribute + at its completion. + NOTE 2: If present, this attribute (which depends on the value of the "vnfdId" attribute) was modified implicitly + during the related operation and contains a copy of the value of the related attribute from the VNFD in the + VNF Package identified by the "vnfdId" attribute. + type: object + properties: + vnfConfigurableProperties: + description: > + This attribute signals the modifications of the "vnfConfigurableProperties" attribute in "VnfInstance" performed + by the operation and shall be present if that attribute was modified during the operation. See note 1. + In addition, the provisions in clause 5.7 shall apply. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" + metadata: + description: > + This attribute signals the modifications of the "metadata" attribute in "VnfInstance" performed by the operation and + shall be present if that attribute was modified during the operation. See note 1. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" + extensions: + description: > + This attribute signals the modifications of the "extensions" attribute in "VnfInstance" performed by the operation and + shall be present if that attribute was modified during the operation. See note 1. + In addition, the provisions in clause 5.7 shall apply. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" + vnfdId: + description: > + If present, this attribute signals the new value of the "vnfdId" attribute in "VnfInstance". + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + vnfProvider: + description: > + If present, this attribute signals the new value of the "vnfProvider" attribute in "VnfInstance". See note 2. + type: string + vnfProductName: + description: > + f present, this attribute signals the new value of the "vnfProductName" attribute in "VnfInstance". See note 2. + type: string + vnfSoftwareVersion: + description: > + If present, this attribute signals the new value of the "vnfSoftwareVersion" attribute in "VnfInstance". See note 2. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Version" + vnfdVersion: + description: > + If present, this attribute signals the new value of the "vnfdVersion" attribute in "VnfInstance". See note 2. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Version" + vimConnectionInfo: + description: > + If present, this attribute signals the changes to VIM connection info that were passed in the related + "ChangeCurrentVnfPkgRequest" structure. The provisions for sensitive information defined in clause + 4.4.1.6 apply. + type: object + additionalProperties: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VimConnectionInfo" + + LccnLinks: + description: > + This type represents the links to resources that a notification can + contain. + type: object + required: + - vnfInstance + - subscription + properties: + vnfInstance: + description: > + Link to the resource representing the VNF instance to which the + notified change applies. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + subscription: + description: > + Link to the related subscription. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + vnfLcmOpOcc: + description: > + Link to the VNF lifecycle management operation occurrence that this + notification is related to. Shall be present if there is a related + lifecycle operation occurrence. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file -- GitLab From 3b85aa16aca4f983278b63c83044a5d0d21377b3 Mon Sep 17 00:00:00 2001 From: Mubeena Ishaq Date: Mon, 31 Oct 2022 00:16:13 -0700 Subject: [PATCH 18/27] Add SOL003 HTTP conditional requests --- .../VNFFaultManagement.yaml | 19 ++++++++++ .../VNFLifecycleManagement.yaml | 35 ++++++++++++++++++ .../VNFPerformanceManagement.yaml | 36 +++++++++++++++++++ src/components/SOL003_params.yaml | 23 ++++++++++++ 4 files changed, 113 insertions(+) diff --git a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml index ce853d4d..25b5d873 100644 --- a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml @@ -111,6 +111,10 @@ paths: patch: description: | This method modifies an "Individual alarm" resource. See clause 7.4.3.3.4. + parameters: + - $ref: ../../components/SOL003_params.yaml#/components/parameters/If-Unmodified-Since + - $ref: ../../components/SOL003_params.yaml#/components/parameters/If-Match + requestBody: $ref: '#/components/requestBodies/IndividualAlarmRequest' responses: @@ -425,6 +429,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: diff --git a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml index c5413706..ec690d59 100644 --- a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -149,6 +149,9 @@ paths: #SOL003 location: 5.4.3.3.4 description: | This method modifies an "Individual VNF instance" resource. See clause 5.4.3.3.4. + parameters: + - $ref: ../../components/SOL003_params.yaml#/components/parameters/If-Unmodified-Since + - $ref: ../../components/SOL003_params.yaml#/components/parameters/If-Match requestBody: $ref: '#/components/requestBodies/VnfInfoModificationRequest' responses: @@ -1138,6 +1141,8 @@ paths: parameters: - $ref: ../../components/SOL003_params.yaml#/components/parameters/Accept - $ref: ../../components/SOL003_params.yaml#/components/parameters/ContentType + - $ref: ../../components/SOL003_params.yaml#/components/parameters/If-Unmodified-Since + - $ref: ../../components/SOL003_params.yaml#/components/parameters/If-Match requestBody: $ref: '#/components/requestBodies/VnfSnapshotInfoModificationRequest' responses: @@ -1731,6 +1736,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: @@ -3999,6 +4019,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 8855ab8d..cfa98914 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -149,6 +149,9 @@ paths: patch: description: | This method allows to modify an "Individual PM job" resource. See clause 6.4.3.3.4. + parameters: + - $ref: ../../components/SOL003_params.yaml#/components/parameters/If-Unmodified-Since + - $ref: ../../components/SOL003_params.yaml#/components/parameters/If-Match responses: 200: $ref: '#/components/responses/IndividualPmJob.Patch.200' @@ -352,6 +355,9 @@ paths: patch: description: | This method allows to modify an "Individual threshold" resource. See clause 6.4.6.3.4. + parameters: + - $ref: ../../components/SOL003_params.yaml#/components/parameters/If-Unmodified-Since + - $ref: ../../components/SOL003_params.yaml#/components/parameters/If-Match responses: 200: $ref: '#/components/responses/IndividualThreshold.Patch.200' @@ -655,6 +661,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: @@ -981,6 +1002,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: diff --git a/src/components/SOL003_params.yaml b/src/components/SOL003_params.yaml index 32ad1074..1e440d0c 100644 --- a/src/components/SOL003_params.yaml +++ b/src/components/SOL003_params.yaml @@ -115,5 +115,28 @@ components: GS NFV-SOL 013 [8] for this resource. in: query required: false + schema: + type: string + If-Unmodified-Since: + name: If-Unmodified-Since + description: > + Used to make the request method conditional on the selected resource representation's last modification date being + earlier than or equal to the date provided in the field-value. If the condition is not met, the request fails with a + "412 Precondition Failed" response. + required: false + in: header + schema: + type: string + format: date-time + + If-Match: + name: If-Match + description: > + Used to make the request method conditional on the recipient origin server either having at least one current representation + of the target resource, when the field-value is "*", or having a current representation of the target resource that has an + entity-tag matching a member of the list of entity-tags provided in the field-value. If the condition is not met, the request + fails with a "412 Precondition Failed" response. + required: false + in: header schema: type: string \ No newline at end of file -- GitLab From b6e81455b26891fb1fe79bd5a643d716dcd4dc2c Mon Sep 17 00:00:00 2001 From: "M. Hamza" Date: Mon, 31 Oct 2022 13:45:18 +0500 Subject: [PATCH 19/27] separate common definitions files for SOL002 and SOL003 --- .../VNFFaultManagement.yaml | 12 +- .../SOL002VNFFaultManagement_def.yaml | 244 +++- .../VNFFaultManagementNotification.yaml | 4 +- ...002VNFFaultManagementNotification_def.yaml | 117 +- .../VNFLifecycleManagementNotification.yaml | 4 +- ...NFLifecycleManagementNotification_def.yaml | 102 +- .../VNFPerformanceManagement.yaml | 26 +- .../SOL002VNFPerformanceManagement_def.yaml} | 94 +- .../VNFFaultManagement.yaml | 12 +- .../SOL003VNFFaultManagement_def.yaml | 245 +++- .../VNFFaultManagementNotification.yaml | 4 +- ...003VNFFaultManagementNotification_def.yaml | 172 +++ .../VNFLifecycleManagementNotification.yaml | 4 +- ...NFLifecycleManagementNotification_def.yaml | 93 ++ .../VNFPerformanceManagement.yaml | 22 +- .../SOL003VNFPerformanceManagement_def.yaml | 720 +++++++++++ .../SOL002SOL003VNFFaultManagement_def.yaml | 354 ------ ...OL002SOL003VNFLifecycleManagement_def.yaml | 1130 ----------------- 18 files changed, 1769 insertions(+), 1590 deletions(-) rename src/{definitions/SOL002SOL003VNFPerformanceManagement_def.yaml => SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml} (87%) create mode 100644 src/SOL003/VNFFaultManagementNotification/definitions/SOL003VNFFaultManagementNotification_def.yaml create mode 100644 src/SOL003/VNFLifecycleManagementNotification/definitions/SOL003VNFLifecycleManagementNotification_def.yaml create mode 100644 src/SOL003/VNFPerformanceManagement/definitions/SOL003VNFPerformanceManagement_def.yaml delete mode 100644 src/definitions/SOL002SOL003VNFFaultManagement_def.yaml delete mode 100644 src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml diff --git a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml index c8fd402d..458607ad 100644 --- a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml @@ -406,7 +406,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/AlarmModifications + $ref: definitions/SOL002VNFFaultManagement_def.yaml#/definitions/AlarmModifications required: true IndividualAlarmEscalateRequest: @@ -422,7 +422,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/FmSubscriptionRequest + $ref: definitions/SOL002VNFFaultManagement_def.yaml#/definitions/FmSubscriptionRequest required: true responses: @@ -558,7 +558,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/AlarmModifications + $ref: definitions/SOL002VNFFaultManagement_def.yaml#/definitions/AlarmModifications IndividualAlarm.Patch.409: description: | @@ -657,7 +657,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/FmSubscription + $ref: definitions/SOL002VNFFaultManagement_def.yaml#/definitions/FmSubscription Subscriptions.Post.201: description: | @@ -697,7 +697,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/FmSubscription + $ref: definitions/SOL002VNFFaultManagement_def.yaml#/definitions/FmSubscription Subscriptions.Post.422: description: | @@ -767,7 +767,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/FmSubscription + $ref: definitions/SOL002VNFFaultManagement_def.yaml#/definitions/FmSubscription IndividualSubscription.Delete.204: description: | diff --git a/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml b/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml index a91e57e9..a239500b 100644 --- a/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml +++ b/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml @@ -61,7 +61,7 @@ definitions: description: > The virtualised resources that are causing the VNF fault. Shall be present if the alarm affects virtualised resources. See note 1. - $ref: "../../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/FaultyResourceInfo" + $ref: "#/definitions/FaultyResourceInfo" alarmRaisedTime: description: > Time stamp indicating when the alarm is raised by the managed @@ -96,7 +96,7 @@ definitions: perceivedSeverity: description: > Perceived severity of the managed object failure. - $ref: "../../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/PerceivedSeverityType" + $ref: "#/definitions/PerceivedSeverityType" eventTime: description: > Time stamp indicating when the fault was observed. See note 2. @@ -104,7 +104,7 @@ definitions: eventType: description: > Type of event. - $ref: "../../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/EventType" + $ref: "#/definitions/EventType" type: string faultType: description: > @@ -169,4 +169,240 @@ definitions: proposedPerceivedSeverity: description: > Indicates the proposed escalated perceived severity for an alarm. - $ref: "../../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/PerceivedSeverityType" \ No newline at end of file + $ref: "#/definitions/PerceivedSeverityType" + + FmSubscriptionRequest: + description: > + This type represents a subscription request related to notifications + about VNF faults. + type: object + required: + - callbackUri + properties: + filter: + description: > + Filter settings for this subscription, to define the subset of all + notifications this subscription relates to. A particular + notification is sent to the subscriber if the filter matches, or if + there is no filter. + $ref: "#/definitions/FmNotificationsFilter" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Uri" + authentication: + description: > + Authentication parameters to configure the use of Authorization when sending notifications + corresponding to this subscription, as defined in clause 8.3.4 of ETSI GS NFV-SOL 013. + This attribute shall only be present if the subscriber requires authorization of notifications. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/SubscriptionAuthentication" + + FmSubscription: + description: > + This type represents a subscription related to notifications about VNF + faults. + type: object + required: + - id + - callbackUri + - _links + properties: + id: + description: > + Identifier of this "Individual subscription" resource. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + filter: + description: > + Filter settings for this subscription, to define the subset of all + notifications this subscription relates to. A particular + notification is sent to the subscriber if the filter matches, or if + there is no filter. + $ref: "#/definitions/FmNotificationsFilter" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Uri" + _links: + description: > + Links for this resource. + type: object + required: + - self + properties: + self: + description: > + URI of this resource. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" + + AlarmModifications: + description: > + This type represents attribute modifications for an "Individual alarm" + resource, i.e. modifications to a resource representation based on the + "Alarm" data type. The attributes of "Alarm" that can be modified + are included in the "AlarmModifications" data type. + type: object + required: + - ackState + properties: + ackState: + description: > + New value of the "ackState" attribute in "Alarm". + Permitted values: + * ACKNOWLEDGED + * UNACKNOWLEDGED + type: string + enum: + - ACKNOWLEDGED + - UNACKNOWLEDGED + + EventType: + description: > + The enumeration EventType represents those types of events that trigger + an alarm. + * COMMUNICATIONS_ALARM: An alarm of this type is associated with the + procedure and/or process required conveying information from one point + to another (ITU-T Recommendation X.733). + * PROCESSING_ERROR_ALARM: An alarm of this type is associated with a + software or processing fault (ITU-T Recommendation X.733). + * ENVIRONMENTAL_ALARM: An alarm of this type is associated with a + condition related to an enclosure in which the equipment resides + (ITU-T Recommendation X.733). + * QOS_ALARM: An alarm of this type is associated with degradation in the + quality of a service (ITU-T Recommendation X.733). + * EQUIPMENT_ALARM: An alarm of this type is associated with an equipment + fault (ITU-T Recommendation X.733). + type: string + enum: + - COMMUNICATIONS_ALARM + - PROCESSING_ERROR_ALARM + - ENVIRONMENTAL_ALARM + - QOS_ALARM + - EQUIPMENT_ALARM + + FaultyResourceInfo: + description: > + This type represents the faulty virtual resources that have a negative + impact on a VNF. + type: object + required: + - faultyResource + - faultyResourceType + properties: + faultyResource: + description: > + Information that identifies the faulty resource instance and its + managing entity. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ResourceHandle" + faultyResourceType: + description: > + Type of the faulty resource. + $ref: "#/definitions/FaultyResourceType" + + FaultyResourceType: + description: > + The enumeration FaultyResourceType represents those types of faulty + resource. + type: string + enum: + - COMPUTE + - STORAGE + - NETWORK + + FmNotificationsFilter: + description: > + This type represents a subscription filter related to notifications about VNF faults. + It shall comply with the provisions defined in table 7.5.3.2-1. + At a particular nesting level in the filter structure, the following applies: All attributes + shall match in order for the filter to match (logical "and" between different filter attributes). + If an attribute is an array, the attribute shall match if at least one of the values in the array + matches (logical "or" between the values of one filter attribute). + + NOTE: The permitted values of the "notificationTypes" attribute are spelled exactly as the names + of the notification types to facilitate automated code generation systems. + type: object + properties: + vnfInstanceSubscriptionFilter: + description: > + Filter criteria to select VNF instances about which to notify. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/VnfInstanceSubscriptionFilter" + notificationTypes: + description: > + Match particular notification types. + + Permitted values: + - AlarmNotification + - AlarmClearedNotification + - AlarmListRebuiltNotification + See note. + type: array + items: + type: string + enum: + - AlarmNotification + - AlarmClearedNotification + - AlarmListRebuiltNotification + faultyResourceTypes: + description: > + Match VNF alarms with a faulty resource type listed in this + attribute. + type: array + items: + $ref: "#/definitions/FaultyResourceType" + perceivedSeverities: + description: > + Match VNF alarms with a perceived severity listed in this attribute. + type: array + items: + $ref: "#/definitions/PerceivedSeverityType" + eventTypes: + description: > + Match VNF alarms with an event type listed in this attribute. + type: array + items: + $ref: "#/definitions/EventType" + probableCauses: + description: > + Match VNF alarms with a probable cause listed in this attribute. + type: array + items: + type: string + + PerceivedSeverityType: + description: > + Indicates the relative level of urgency for operator attention. + * CRITICAL: The Critical severity level indicates that a service + affecting condition has occurred and an immediate corrective action + is required. Such a severity can be reported, for example, when a + managed object becomes totally out of service and its capability needs + to be restored (ITU-T Recommendation X.733). + * MAJOR: The Major severity level indicates that a service affecting + condition has developed and an urgent corrective action is required. + Such a severity can be reported, for example, when there is a severe + degradation in the capability of the managed object and its full + capability needs to be restored (ITU-T Recommendation X.733). + * MINOR: The Minor severity level indicates the existence of a + non-service affecting fault condition and that corrective action + should be taken in order to prevent a more serious (for example, + service affecting) fault. Such a severity can be reported, for + example, when the detected alarm condition is not currently degrading + the capacity of the managed object (ITU-T Recommendation X.733). + * WARNING: The Warning severity level indicates the detection of a + potential or impending service affecting fault, before any significant + effects have been felt. Action should be taken to further diagnose (if + necessary) and correct the problem in order to prevent it from + becoming a more serious service affecting fault (ITU-T Recommendation + X.733). + * INDETERMINATE: The Indeterminate severity level indicates that the + severity level cannot be determined (ITU-T Recommendation X.733). + * CLEARED: The Cleared severity level indicates the clearing of one or + more previously reported alarms. This alarm clears all alarms for this + managed object that have the same Alarm type, Probable cause and + Specific problems (if given) (ITU-T Recommendation X.733). + type: string + enum: + - CRITICAL + - MAJOR + - MINOR + - WARNING + - INDETERMINATE + - CLEARED diff --git a/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml b/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml index 0584de97..2fba1e9a 100644 --- a/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml +++ b/src/SOL002/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml @@ -200,7 +200,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/AlarmClearedNotification + $ref: definitions/SOL002VNFFaultManagementNotification_def.yaml#/definitions/AlarmClearedNotification required: true AlarmListRebuiltNotification: @@ -209,7 +209,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/AlarmListRebuiltNotification + $ref: definitions/SOL002VNFFaultManagementNotification_def.yaml#/definitions/AlarmListRebuiltNotification required: true responses: diff --git a/src/SOL002/VNFFaultManagementNotification/definitions/SOL002VNFFaultManagementNotification_def.yaml b/src/SOL002/VNFFaultManagementNotification/definitions/SOL002VNFFaultManagementNotification_def.yaml index 2fc01ea7..b3fa5747 100644 --- a/src/SOL002/VNFFaultManagementNotification/definitions/SOL002VNFFaultManagementNotification_def.yaml +++ b/src/SOL002/VNFFaultManagementNotification/definitions/SOL002VNFFaultManagementNotification_def.yaml @@ -54,4 +54,119 @@ definitions: subscription: description: > Link to the related subscription. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink" + + AlarmClearedNotification: + description: > + This type represents an alarm cleared notification about VNF faults. + The notification shall be triggered by the VNFM when an alarm has been + cleared. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - alarmId + - alarmClearedTime + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "AlarmClearedNotification" for this notification type. + type: string + enum: + - AlarmClearedNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" + alarmId: + description: > + Alarm identifier. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + alarmClearedTime: + description: > + The time stamp indicating when the alarm was cleared. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - subscription + - alarm + properties: + subscription: + description: > + Link to the related subscription. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" + alarm: + description: > + Link to the resource that represents the related alarm. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" + + AlarmListRebuiltNotification: + description: > + This type represents a notification that the alarm list has been + rebuilt, e.g. if the VNFM detects its storage holding the alarm + list is corrupted. + The notification shall be triggered by the VNFM when the alarm list has + been rebuilt, e.g. because the VNFM has detected that its storage + holding the alarm list was corrupted. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "AlarmListRebuiltNotification" for this notification type. + type: string + enum: + - AlarmListRebuiltNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - subscription + - alarms + properties: + subscription: + description: > + Link to the related subscription. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" + alarms: + description: > + Link to the alarm list, i.e. the "Alarms" resource. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" \ No newline at end of file diff --git a/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml b/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml index 044918cd..c7176dce 100644 --- a/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml +++ b/src/SOL002/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml @@ -200,7 +200,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfIdentifierCreationNotification + $ref: "definitions/SOL002VNFLifecycleManagementNotification_def.yaml#/definitions/VnfIdentifierCreationNotification" required: true VnfIdentifierDeletionNotification: @@ -209,7 +209,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfIdentifierDeletionNotification + $ref: "definitions/SOL002VNFLifecycleManagementNotification_def.yaml#/definitions/VnfIdentifierDeletionNotification" required: true responses: diff --git a/src/SOL002/VNFLifecycleManagementNotification/definitions/SOL002VNFLifecycleManagementNotification_def.yaml b/src/SOL002/VNFLifecycleManagementNotification/definitions/SOL002VNFLifecycleManagementNotification_def.yaml index 9d64108b..9287a74e 100644 --- a/src/SOL002/VNFLifecycleManagementNotification/definitions/SOL002VNFLifecycleManagementNotification_def.yaml +++ b/src/SOL002/VNFLifecycleManagementNotification/definitions/SOL002VNFLifecycleManagementNotification_def.yaml @@ -98,7 +98,7 @@ definitions: operationState: description: > The state of the VNF LCM operation occurrence. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LcmOperationStateType" + $ref: "../../VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/LcmOperationStateType" vnfInstanceId: description: > The identifier of the VNF instance affected. @@ -120,7 +120,7 @@ definitions: This attribute signals the verbosity of the notification. If it is not present, it shall default to the value "FULL". If the value is "SHORT", full change details can be obtained by performing a GET request on the "Individual LCM operation occurrence" resource that is signalled by the "vnfLcmOpOcc" child attribute of the "_links" attribute. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LcmOpOccNotificationVerbosityType" + $ref: "../../VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/LcmOpOccNotificationVerbosityType" vnfLcmOpOccId: description: > The identifier of the VNF lifecycle management operation occurrence @@ -174,7 +174,7 @@ definitions: VIP CP instances that have been added, deleted or modified shall be provided. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedVipCp" + $ref: "../../VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/AffectedVipCp" changedExtConnectivity: description: > Information about changed external connectivity, if this @@ -185,14 +185,14 @@ definitions: Shall be absent otherwise. type: array items: - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ExtVirtualLinkInfo" + $ref: "../../VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/ExtVirtualLinkInfo" modificationsTriggeredByVnfPkgChange: description: > Information about performed changes of "VnfInstance" attributes triggered by changing the current VNF package. Shall be present if the "notificationStatus" is set to "RESULT", the "operation" attribute is equal to "CHANGE_VNFPKG", the "verbosity" attribute is set to "FULL" and the operation has performed any changes to "VnfInstance" attributes. Shall be absent otherwise. See note 3 - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/ModificationsTriggeredByVnfPkgChange" + $ref: "../../VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/ModificationsTriggeredByVnfPkgChange" error: description: > Details of the latest error, if one has occurred during executing @@ -203,4 +203,94 @@ definitions: _links: description: > Links to resources related to this notification. - $ref: "../../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnLinks" \ No newline at end of file + $ref: "../../VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/LccnLinks" + + VnfIdentifierCreationNotification: + description: > + This type represents a VNF identifier creation notification, which + informs the receiver of the creation of a new "Individual VNF instance" resource and + the associated VNF instance identifier. + This notification shall be triggered by the VNFM when it has created an + "Individual VNF instance" resource and the associated VNF instance identifier. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - vnfInstanceId + - _links + properties: + id: + description: > + Identifier of the VNF instance. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "VnfIdentifierCreationNotification" for this notification type. + type: string + enum: + - VnfIdentifierCreationNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" + vnfInstanceId: + description: > + The created VNF instance identifier. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + _links: + description: > + Links to resources related to this notification. + $ref: "../../VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/LccnLinks" + + VnfIdentifierDeletionNotification: + description: > + This type represents a VNF identifier deletion notification, which + informs the receiver of the deletion of a new "Individual VNF instance" resource and + the associated VNF instance identifier. + This notification shall be triggered by the VNFM when it has deleted an + "Individual VNF instance" resource and the associated VNF instance identifier. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - vnfInstanceId + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "VnfIdentifierDeletionNotification" for this notification type. + type: string + enum: + - VnfIdentifierDeletionNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" + vnfInstanceId: + description: > + The deleted VNF instance identifier. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + _links: + description: > + Links to resources related to this notification. + $ref: "../../VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/LccnLinks" \ No newline at end of file diff --git a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml index a53c9c35..83dc5325 100644 --- a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -532,7 +532,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/CreatePmJobRequest + $ref: definitions/SOL002VNFPerformanceManagement_def.yaml#/definitions/CreatePmJobRequest required: true PmJobModificationRequest: @@ -540,7 +540,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJobModifications + $ref: definitions/SOL002VNFPerformanceManagement_def.yaml#/definitions/PmJobModifications required: true ThresholdCreationRequest: @@ -549,7 +549,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/CreateThresholdRequest + $ref: definitions/SOL002VNFPerformanceManagement_def.yaml#/definitions/CreateThresholdRequest required: true ThresholdModificationRequest: @@ -557,7 +557,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/ThresholdModifications + $ref: definitions/SOL002VNFPerformanceManagement_def.yaml#/definitions/ThresholdModifications required: true responses: @@ -605,7 +605,7 @@ components: schema: type: array items: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJob + $ref: definitions/SOL002VNFPerformanceManagement_def.yaml#/definitions/PmJob PmJobs.Post.201: description: | @@ -644,7 +644,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJob + $ref: definitions/SOL002VNFPerformanceManagement_def.yaml#/definitions/PmJob PmJobs.Post.422: description: | @@ -729,7 +729,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJob + $ref: definitions/SOL002VNFPerformanceManagement_def.yaml#/definitions/PmJob IndividualPmJob.Delete.204: description: | @@ -802,7 +802,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJobModifications + $ref: definitions/SOL002VNFPerformanceManagement_def.yaml#/definitions/PmJobModifications IndividualPmJob.Patch.422: description: | @@ -872,7 +872,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PerformanceReport + $ref: definitions/SOL002VNFPerformanceManagement_def.yaml#/definitions/PerformanceReport Thresholds.Get.200: description: | @@ -917,7 +917,7 @@ components: schema: type: array items: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/Threshold + $ref: definitions/SOL002VNFPerformanceManagement_def.yaml#/definitions/Threshold Thresholds.Post.201: description: | @@ -956,7 +956,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/Threshold + $ref: definitions/SOL002VNFPerformanceManagement_def.yaml#/definitions/Threshold Thresholds.Post.422: description: | @@ -1042,7 +1042,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/Threshold + $ref: definitions/SOL002VNFPerformanceManagement_def.yaml#/definitions/Threshold IndividualThreshold.Delete.204: description: | @@ -1109,7 +1109,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/ThresholdModifications + $ref: definitions/SOL002VNFPerformanceManagement_def.yaml#/definitions/ThresholdModifications IndividualThreshold.Patch.422: description: | diff --git a/src/definitions/SOL002SOL003VNFPerformanceManagement_def.yaml b/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml similarity index 87% rename from src/definitions/SOL002SOL003VNFPerformanceManagement_def.yaml rename to src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml index 5a94574d..a2c048a3 100644 --- a/src/definitions/SOL002SOL003VNFPerformanceManagement_def.yaml +++ b/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml @@ -21,7 +21,7 @@ definitions: objectInstanceId: description: > Identifier of the VNF instance associated with this threshold. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" subObjectInstanceIds: description: > Identifiers of the sub-object instances of the measured @@ -34,7 +34,7 @@ definitions: the measured object instance. type: array items: - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" criteria: description: > Criteria that define this threshold. @@ -42,7 +42,7 @@ definitions: callbackUri: description: > The URI of the endpoint to send the notification to. - $ref: "SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Uri" authentication: description: > Authentication parameters to configure the use of Authorization @@ -50,7 +50,7 @@ definitions: as defined in clause 8.3.4 of ETSI GS NFV-SOL 013. This attribute shall only be present if the API consumer requires authorization of notifications. - $ref: "SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/SubscriptionAuthentication" CreatePmJobRequest: description: > @@ -74,7 +74,7 @@ definitions: which performance information is requested to be collected. type: array items: - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" subObjectInstanceIds: description: > Identifiers of the sub-object instances of the measured @@ -88,7 +88,7 @@ definitions: will be taken for all sub-object instances of the measured object instance. type: array items: - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" criteria: description: > Criteria of the collection of performance information. @@ -96,7 +96,7 @@ definitions: callbackUri: description: > The URI of the endpoint to send the notification to. - $ref: "SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Uri" authentication: description: > Authentication parameters to configure the use of Authorization @@ -104,7 +104,7 @@ definitions: in clause 8.3.4 of ETSI GS NFV-SOL 013. This attribute shall only be present if the API consumer requires authorization of notifications. - $ref: "SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/SubscriptionAuthentication" CrossingDirectionType: type: string @@ -135,7 +135,7 @@ definitions: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these notifications shall have the same value. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" notificationType: description: > Discriminator for the different notification types. Shall be set to @@ -147,11 +147,11 @@ definitions: timeStamp: description: > Date and time of the generation of the notification. - $ref: "SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" pmJobId: description: > Identifier of the PM job for which performance information is available. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" objectType: description: > Type of the measured object. @@ -161,7 +161,7 @@ definitions: objectInstanceId: description: > Identifier of the measured object instance. as per clause 6.2 of ETSI GS NFV-IFA 027. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" subObjectInstanceIds: description: > Identifiers of the sub-object instances of the measured @@ -173,7 +173,7 @@ definitions: Shall be absent otherwise. type: array items: - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" _links: description: > Links to resources related to this notification. @@ -187,18 +187,18 @@ definitions: Link to the resource representing the measured object instance to which the notification applies. Shall be present if the measured object instance information is accessible as a resource. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" pmJob: description: > Link to the resource that represents the PM job for which performance information is available. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" performanceReport: description: > Link from which the available performance information of data type "PerformanceReport" can be obtained. This link should point to an "Individual performance report" resource. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" PerformanceReport: description: > @@ -240,13 +240,13 @@ definitions: objectInstanceId: description: > Identifier of the measured object instance for which the performance metric is reported - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" subObjectInstanceId: description: > Identifier of the sub-object instance of the measured object instance for which the performance metric is reported. Shall be present if this is required in clause 6.2 of ETSI GS NFV-IFA 027 for the related measured object type. See note. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" performanceMetric: description: > Name of the metric collected. This attribute shall contain the related "Measurement Name" @@ -265,7 +265,7 @@ definitions: timeStamp: description: > Time stamp indicating when the data has been collected. - $ref: "SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" value: description: > Value of the metric collected. @@ -277,7 +277,7 @@ definitions: Measurement context information related to the measured value. The set of applicable keys is defined per measurement in the related "Measurement Context" in clause 7.2 of ETSI GS NFV-IFA 027. - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" PmJob: description: > @@ -294,7 +294,7 @@ definitions: id: description: > Identifier of this PM job. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" objectType: description: > Type of the measured object. @@ -307,7 +307,7 @@ definitions: is collected. type: array items: - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" subObjectInstanceIds: description: > Identifiers of the sub-object instances of the measured object @@ -321,7 +321,7 @@ definitions: be taken for all sub-object instances of the measured object instance. type: array items: - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" criteria: description: > Criteria of the collection of performance information. @@ -329,7 +329,7 @@ definitions: callbackUri: description: > The URI of the endpoint to send the notification to. - $ref: "SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Uri" reports: description: > Information about available reports collected by this PM job. @@ -346,11 +346,11 @@ definitions: readyTime: description: > The time when the report was made available. - $ref: "SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" expiryTime: description: > The time when the report will expire. - $ref: "SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" fileSize: description: > The size of the report file in bytes, if known. @@ -369,7 +369,7 @@ definitions: self: description: > URI of this resource. - $ref: "SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" objects: description: > Links to resources representing the measure @@ -379,7 +379,7 @@ definitions: accessible as a resource. type: array items: - $ref: "SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" PmJobModifications: description: > @@ -396,7 +396,7 @@ definitions: callbackUri: description: > New value of the "callbackUri" attribute. The value "null" is not permitted. See note. - $ref: "SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Uri" authentication: description: > New value of the "authentication" attribute, or "null" to remove the attribute. If present @@ -404,7 +404,7 @@ definitions: Patch (see IETF RFC 7396). This attribute shall not be present in response bodies. See note. - $ref: "SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/SubscriptionAuthentication" PmJobCriteria: description: > @@ -463,7 +463,7 @@ definitions: Identifies a time boundary after which the reporting will stop. The boundary shall allow a single reporting as well as periodic reporting up to the boundary. - $ref: "SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" Threshold: description: > @@ -480,7 +480,7 @@ definitions: id: description: > Identifier of this threshold resource. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" objectType: description: > Type of the measured object. @@ -490,7 +490,7 @@ definitions: objectInstanceId: description: > Identifier of the VNF instance associated with the threshold. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" subObjectInstanceIds: description: > Identifiers of the sub-object instances of the measured object @@ -503,7 +503,7 @@ definitions: measured object instance. type: array items: - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" criteria: description: > Criteria that define this threshold. @@ -511,7 +511,7 @@ definitions: callbackUri: description: > The URI of the endpoint to send the notification to. - $ref: "SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Uri" _links: description: > Links for this resource. @@ -522,13 +522,13 @@ definitions: self: description: > URI of this resource. - $ref: "SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" object: description: > Link to a resource representing the measured object instance for which performance information is collected. Shall be present if the measured object instance information is accessible as a resource. - $ref: "SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" ThresholdModifications: description: > @@ -545,14 +545,14 @@ definitions: callbackUri: description: > New value of the "callbackUri" attribute. The value "null" is not permitted. See note. - $ref: "SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Uri" authentication: description: > New value of the "authentication" attribute, or "null" to remove the attribute. If present in a request body, these modifications shall be applied according to the rules of JSON Merge Patch (see IETF RFC 7396). This attribute shall not be present in response bodies. See note. - $ref: "SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/SubscriptionAuthentication" ThresholdCriteria: description: > @@ -645,7 +645,7 @@ definitions: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these notifications shall have the same value. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" notificationType: description: > Discriminator for the different notification types. Shall be set to @@ -656,11 +656,11 @@ definitions: timeStamp: description: > Date and time of the generation of the notification. - $ref: "SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" thresholdId: description: > Identifier of the threshold which has been crossed. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" crossingDirection: description: > An indication of whether the threshold was crossed in upward or @@ -674,14 +674,14 @@ definitions: objectInstanceId: description: > Identifier that identifies a VNF instance. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" subObjectInstanceId: description: > Identifier of the sub-object of the measured object to which the measurement applies. Shall be present if this is required in clause 6.2 of ETSI GS NFV-IFA 027 for the related measured object type. See note. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" performanceMetric: description: > Performance metric associated with the threshold. @@ -699,7 +699,7 @@ definitions: Measurement context information related to the measured value. The set of applicable keys is defined per measurement in the related "Measurement Context" in clause 7.2 of ETSI GS NFV-IFA 027. - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" _links: description: > Links to resources related to this notification. @@ -712,9 +712,9 @@ definitions: Link to the resource representing the measured object instance to which the notified change applies. Shall be present if the measured object instance information is accessible as a resource. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" threshold: description: > Link to the resource that represents the threshold that was crossed. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" \ No newline at end of file diff --git a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml index 25b5d873..71fa445d 100644 --- a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml @@ -353,7 +353,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/AlarmModifications + $ref: definitions/SOL003VNFFaultManagement_def.yaml#/definitions/AlarmModifications required: true FmSubscriptionRequest: @@ -361,7 +361,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/FmSubscriptionRequest + $ref: definitions/SOL003VNFFaultManagement_def.yaml#/definitions/FmSubscriptionRequest required: true responses: @@ -480,7 +480,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/AlarmModifications" + $ref: "definitions/SOL003VNFFaultManagement_def.yaml#/definitions/AlarmModifications" IndividualAlarm.Patch.409: description: | @@ -603,7 +603,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/FmSubscription" + $ref: "definitions/SOL003VNFFaultManagement_def.yaml#/definitions/FmSubscription" Subscriptions.Post.200: description: | @@ -645,7 +645,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/FmSubscription" + $ref: "definitions/SOL003VNFFaultManagement_def.yaml#/definitions/FmSubscription" Subscriptions.Post.303: description: | @@ -759,7 +759,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/FmSubscription" + $ref: "definitions/SOL003VNFFaultManagement_def.yaml#/definitions/FmSubscription" IndividualSubscription.Delete.204: description: | diff --git a/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml b/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml index 7e649e07..c55df14c 100644 --- a/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml +++ b/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml @@ -48,7 +48,7 @@ definitions: description: > The virtualised resources that are causing the VNF fault. Shall be present if the alarm affects virtualised resources. See note 1. - $ref: "../../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/FaultyResourceInfo" + $ref: "#/definitions/FaultyResourceInfo" alarmRaisedTime: description: > Time stamp indicating when the alarm is raised by the managed @@ -82,7 +82,7 @@ definitions: perceivedSeverity: description: > Perceived severity of the managed object failure. - $ref: "../../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/PerceivedSeverityType" + $ref: "#/definitions/PerceivedSeverityType" eventTime: description: > Time stamp indicating when the fault was observed. See note 2. @@ -90,7 +90,7 @@ definitions: eventType: description: > Type of event. - $ref: "../../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/EventType" + $ref: "#/definitions/EventType" faultType: description: > Additional information to clarify the type of the fault. @@ -197,4 +197,241 @@ definitions: subscription: description: > Link to the related subscription. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink" + + + FmSubscriptionRequest: + description: > + This type represents a subscription request related to notifications + about VNF faults. + type: object + required: + - callbackUri + properties: + filter: + description: > + Filter settings for this subscription, to define the subset of all + notifications this subscription relates to. A particular + notification is sent to the subscriber if the filter matches, or if + there is no filter. + $ref: "#/definitions/FmNotificationsFilter" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" + authentication: + description: > + Authentication parameters to configure the use of Authorization when sending notifications + corresponding to this subscription, as defined in clause 8.3.4 of ETSI GS NFV-SOL 013. + This attribute shall only be present if the subscriber requires authorization of notifications. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/SubscriptionAuthentication" + + FmSubscription: + description: > + This type represents a subscription related to notifications about VNF + faults. + type: object + required: + - id + - callbackUri + - _links + properties: + id: + description: > + Identifier of this "Individual subscription" resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + filter: + description: > + Filter settings for this subscription, to define the subset of all + notifications this subscription relates to. A particular + notification is sent to the subscriber if the filter matches, or if + there is no filter. + $ref: "#/definitions/FmNotificationsFilter" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" + _links: + description: > + Links for this resource. + type: object + required: + - self + properties: + self: + description: > + URI of this resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" + + AlarmModifications: + description: > + This type represents attribute modifications for an "Individual alarm" + resource, i.e. modifications to a resource representation based on the + "Alarm" data type. The attributes of "Alarm" that can be modified + are included in the "AlarmModifications" data type. + type: object + required: + - ackState + properties: + ackState: + description: > + New value of the "ackState" attribute in "Alarm". + Permitted values: + * ACKNOWLEDGED + * UNACKNOWLEDGED + type: string + enum: + - ACKNOWLEDGED + - UNACKNOWLEDGED + + EventType: + description: > + The enumeration EventType represents those types of events that trigger + an alarm. + * COMMUNICATIONS_ALARM: An alarm of this type is associated with the + procedure and/or process required conveying information from one point + to another (ITU-T Recommendation X.733). + * PROCESSING_ERROR_ALARM: An alarm of this type is associated with a + software or processing fault (ITU-T Recommendation X.733). + * ENVIRONMENTAL_ALARM: An alarm of this type is associated with a + condition related to an enclosure in which the equipment resides + (ITU-T Recommendation X.733). + * QOS_ALARM: An alarm of this type is associated with degradation in the + quality of a service (ITU-T Recommendation X.733). + * EQUIPMENT_ALARM: An alarm of this type is associated with an equipment + fault (ITU-T Recommendation X.733). + type: string + enum: + - COMMUNICATIONS_ALARM + - PROCESSING_ERROR_ALARM + - ENVIRONMENTAL_ALARM + - QOS_ALARM + - EQUIPMENT_ALARM + + FaultyResourceInfo: + description: > + This type represents the faulty virtual resources that have a negative + impact on a VNF. + type: object + required: + - faultyResource + - faultyResourceType + properties: + faultyResource: + description: > + Information that identifies the faulty resource instance and its + managing entity. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" + faultyResourceType: + description: > + Type of the faulty resource. + $ref: "#/definitions/FaultyResourceType" + + FaultyResourceType: + description: > + The enumeration FaultyResourceType represents those types of faulty + resource. + type: string + enum: + - COMPUTE + - STORAGE + - NETWORK + + FmNotificationsFilter: + description: > + This type represents a subscription filter related to notifications about VNF faults. + It shall comply with the provisions defined in table 7.5.3.2-1. + At a particular nesting level in the filter structure, the following applies: All attributes + shall match in order for the filter to match (logical "and" between different filter attributes). + If an attribute is an array, the attribute shall match if at least one of the values in the array + matches (logical "or" between the values of one filter attribute). + + NOTE: The permitted values of the "notificationTypes" attribute are spelled exactly as the names + of the notification types to facilitate automated code generation systems. + type: object + properties: + vnfInstanceSubscriptionFilter: + description: > + Filter criteria to select VNF instances about which to notify. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VnfInstanceSubscriptionFilter" + notificationTypes: + description: > + Match particular notification types. + + Permitted values: + - AlarmNotification + - AlarmClearedNotification + - AlarmListRebuiltNotification + See note. + type: array + items: + type: string + enum: + - AlarmNotification + - AlarmClearedNotification + - AlarmListRebuiltNotification + faultyResourceTypes: + description: > + Match VNF alarms with a faulty resource type listed in this + attribute. + type: array + items: + $ref: "#/definitions/FaultyResourceType" + perceivedSeverities: + description: > + Match VNF alarms with a perceived severity listed in this attribute. + type: array + items: + $ref: "#/definitions/PerceivedSeverityType" + eventTypes: + description: > + Match VNF alarms with an event type listed in this attribute. + type: array + items: + $ref: "#/definitions/EventType" + probableCauses: + description: > + Match VNF alarms with a probable cause listed in this attribute. + type: array + items: + type: string + + PerceivedSeverityType: + description: > + Indicates the relative level of urgency for operator attention. + * CRITICAL: The Critical severity level indicates that a service + affecting condition has occurred and an immediate corrective action + is required. Such a severity can be reported, for example, when a + managed object becomes totally out of service and its capability needs + to be restored (ITU-T Recommendation X.733). + * MAJOR: The Major severity level indicates that a service affecting + condition has developed and an urgent corrective action is required. + Such a severity can be reported, for example, when there is a severe + degradation in the capability of the managed object and its full + capability needs to be restored (ITU-T Recommendation X.733). + * MINOR: The Minor severity level indicates the existence of a + non-service affecting fault condition and that corrective action + should be taken in order to prevent a more serious (for example, + service affecting) fault. Such a severity can be reported, for + example, when the detected alarm condition is not currently degrading + the capacity of the managed object (ITU-T Recommendation X.733). + * WARNING: The Warning severity level indicates the detection of a + potential or impending service affecting fault, before any significant + effects have been felt. Action should be taken to further diagnose (if + necessary) and correct the problem in order to prevent it from + becoming a more serious service affecting fault (ITU-T Recommendation + X.733). + * INDETERMINATE: The Indeterminate severity level indicates that the + severity level cannot be determined (ITU-T Recommendation X.733). + * CLEARED: The Cleared severity level indicates the clearing of one or + more previously reported alarms. This alarm clears all alarms for this + managed object that have the same Alarm type, Probable cause and + Specific problems (if given) (ITU-T Recommendation X.733). + type: string + enum: + - CRITICAL + - MAJOR + - MINOR + - WARNING + - INDETERMINATE + - CLEARED \ No newline at end of file diff --git a/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml b/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml index 07bd0037..5560db4b 100644 --- a/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml +++ b/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml @@ -210,7 +210,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/AlarmClearedNotification" + $ref: "definitions/SOL003VNFFaultManagementNotification_def.yaml#/definitions/AlarmClearedNotification" required: true AlarmListRebuiltNotification: @@ -218,7 +218,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFFaultManagement_def.yaml#/definitions/AlarmListRebuiltNotification" + $ref: "definitions/SOL003VNFFaultManagementNotification_def.yaml#/definitions/AlarmListRebuiltNotification" required: true responses: diff --git a/src/SOL003/VNFFaultManagementNotification/definitions/SOL003VNFFaultManagementNotification_def.yaml b/src/SOL003/VNFFaultManagementNotification/definitions/SOL003VNFFaultManagementNotification_def.yaml new file mode 100644 index 00000000..81a0cf00 --- /dev/null +++ b/src/SOL003/VNFFaultManagementNotification/definitions/SOL003VNFFaultManagementNotification_def.yaml @@ -0,0 +1,172 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt + +definitions: + AlarmNotification: + description: > + This type represents an alarm notification about VNF faults. + This notification shall be triggered by the VNFM when: + * An alarm has been created. + * An alarm has been updated, e.g. if the severity of the alarm has + changed. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - alarm + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "AlarmNotification" for this notification type. + type: string + enum: + - AlarmNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + alarm: + description: > + Information about an alarm including AlarmId, affected VNF + identifier, and FaultDetails. + $ref: "../../VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml#/definitions/Alarm" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - subscription + properties: + subscription: + description: > + Link to the related subscription. + $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink" + + AlarmClearedNotification: + description: > + This type represents an alarm cleared notification about VNF faults. + The notification shall be triggered by the VNFM when an alarm has been + cleared. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - alarmId + - alarmClearedTime + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "AlarmClearedNotification" for this notification type. + type: string + enum: + - AlarmClearedNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + alarmId: + description: > + Alarm identifier. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + alarmClearedTime: + description: > + The time stamp indicating when the alarm was cleared. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - subscription + - alarm + properties: + subscription: + description: > + Link to the related subscription. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + alarm: + description: > + Link to the resource that represents the related alarm. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + + AlarmListRebuiltNotification: + description: > + This type represents a notification that the alarm list has been + rebuilt, e.g. if the VNFM detects its storage holding the alarm + list is corrupted. + The notification shall be triggered by the VNFM when the alarm list has + been rebuilt, e.g. because the VNFM has detected that its storage + holding the alarm list was corrupted. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "AlarmListRebuiltNotification" for this notification type. + type: string + enum: + - AlarmListRebuiltNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - subscription + - alarms + properties: + subscription: + description: > + Link to the related subscription. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + alarms: + description: > + Link to the alarm list, i.e. the "Alarms" resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file diff --git a/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml b/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml index 4c847a36..ca45c2de 100644 --- a/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml +++ b/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml @@ -204,7 +204,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfIdentifierCreationNotification" + $ref: "definitions/SOL003VNFLifecycleManagementNotification_def.yaml#/definitions/VnfIdentifierCreationNotification" required: true VnfIdentifierDeletionNotification: @@ -213,7 +213,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfIdentifierDeletionNotification" + $ref: "definitions/SOL003VNFLifecycleManagementNotification_def.yaml#/definitions/VnfIdentifierDeletionNotification" required: true responses: diff --git a/src/SOL003/VNFLifecycleManagementNotification/definitions/SOL003VNFLifecycleManagementNotification_def.yaml b/src/SOL003/VNFLifecycleManagementNotification/definitions/SOL003VNFLifecycleManagementNotification_def.yaml new file mode 100644 index 00000000..89a7ed7a --- /dev/null +++ b/src/SOL003/VNFLifecycleManagementNotification/definitions/SOL003VNFLifecycleManagementNotification_def.yaml @@ -0,0 +1,93 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt + +definitions: + VnfIdentifierCreationNotification: + description: > + This type represents a VNF identifier creation notification, which + informs the receiver of the creation of a new "Individual VNF instance" resource and + the associated VNF instance identifier. + This notification shall be triggered by the VNFM when it has created an + "Individual VNF instance" resource and the associated VNF instance identifier. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - vnfInstanceId + - _links + properties: + id: + description: > + Identifier of the VNF instance. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "VnfIdentifierCreationNotification" for this notification type. + type: string + enum: + - VnfIdentifierCreationNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + vnfInstanceId: + description: > + The created VNF instance identifier. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + _links: + description: > + Links to resources related to this notification. + $ref: "../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnLinks" + + VnfIdentifierDeletionNotification: + description: > + This type represents a VNF identifier deletion notification, which + informs the receiver of the deletion of a new "Individual VNF instance" resource and + the associated VNF instance identifier. + This notification shall be triggered by the VNFM when it has deleted an + "Individual VNF instance" resource and the associated VNF instance identifier. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - vnfInstanceId + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "VnfIdentifierDeletionNotification" for this notification type. + type: string + enum: + - VnfIdentifierDeletionNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + vnfInstanceId: + description: > + The deleted VNF instance identifier. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + _links: + description: > + Links to resources related to this notification. + $ref: "../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnLinks" \ No newline at end of file diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index cfa98914..7e7a4cb0 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -502,7 +502,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/CreatePmJobRequest" + $ref: "definitions/SOL003VNFPerformanceManagement_def.yaml#/definitions/CreatePmJobRequest" required: true CreateThresholdRequest: @@ -510,7 +510,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/CreateThresholdRequest" + $ref: "definitions/SOL003VNFPerformanceManagement_def.yaml#/definitions/CreateThresholdRequest" required: true responses: @@ -548,7 +548,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJob" + $ref: "definitions/SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJob" PmJobs.Post.422: description: | @@ -630,7 +630,7 @@ components: schema: type: array items: - $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJob" + $ref: "definitions/SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJob" IndividualPmJob.Get.200: description: | @@ -679,7 +679,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJob" + $ref: "definitions/SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJob" IndividualPmJob.Patch.200: description: | @@ -712,7 +712,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJobModifications" + $ref: "definitions/SOL003VNFPerformanceManagement_def.yaml#/definitions/PmJobModifications" IndividualPmJob.Patch.412: description: | @@ -842,7 +842,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PerformanceReport" + $ref: "definitions/SOL003VNFPerformanceManagement_def.yaml#/definitions/PerformanceReport" Thresholds.Post.201: description: | @@ -885,7 +885,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/Threshold" + $ref: "definitions/SOL003VNFPerformanceManagement_def.yaml#/definitions/Threshold" Thresholds.Post.422: description: | @@ -972,7 +972,7 @@ components: schema: type: array items: - $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/Threshold" + $ref: "definitions/SOL003VNFPerformanceManagement_def.yaml#/definitions/Threshold" IndividualThreshold.Get.200: description: | @@ -1020,7 +1020,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/Threshold" + $ref: "definitions/SOL003VNFPerformanceManagement_def.yaml#/definitions/Threshold" IndividualThreshold.Patch.200: description: | @@ -1053,7 +1053,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/ThresholdModifications" + $ref: "definitions/SOL003VNFPerformanceManagement_def.yaml#/definitions/ThresholdModifications" IndividualThreshold.Patch.412: description: | diff --git a/src/SOL003/VNFPerformanceManagement/definitions/SOL003VNFPerformanceManagement_def.yaml b/src/SOL003/VNFPerformanceManagement/definitions/SOL003VNFPerformanceManagement_def.yaml new file mode 100644 index 00000000..5c3bc723 --- /dev/null +++ b/src/SOL003/VNFPerformanceManagement/definitions/SOL003VNFPerformanceManagement_def.yaml @@ -0,0 +1,720 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt + +definitions: + CreateThresholdRequest: + description: > + This type represents a request to create a threshold. + type: object + required: + - objectType + - objectInstanceId + - criteria + - callbackUri + properties: + objectType: + description: > + Type of the measured object. + The applicable measured object type for a measurement + is defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + objectInstanceId: + description: > + Identifier of the VNF instance associated with this threshold. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + subObjectInstanceIds: + description: > + Identifiers of the sub-object instances of the measured + object instance associated with this threshold. + May be present if a sub-object is defined in clause 6.2 + of ETSI GS NFV-IFA 027 for the related measured object type. + If this attribute is absent and a sub-object is defined in + clause 6.2 of ETSI GS NFV-IFA 027 for the measured object type, + measurements will be taken for all sub-object instances of + the measured object instance. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + criteria: + description: > + Criteria that define this threshold. + $ref: "#/definitions/ThresholdCriteria" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" + authentication: + description: > + Authentication parameters to configure the use of Authorization + when sending notifications corresponding to this threshold, + as defined in clause 8.3.4 of ETSI GS NFV-SOL 013. + This attribute shall only be present if the API consumer requires + authorization of notifications. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/SubscriptionAuthentication" + + CreatePmJobRequest: + description: > + This type represents a request to create a PM job. + type: object + required: + - objectType + - objectInstanceIds + - criteria + - callbackUri + properties: + objectType: + description: > + Type of the measured object. + The applicable measured object type for a measurement + is defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + objectInstanceIds: + description: > + Identifiers of the measured object instances for + which performance information is requested to be collected. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + subObjectInstanceIds: + description: > + Identifiers of the sub-object instances of the measured + object instance for which performance information is requested to be collected. + May be present if a sub-object is defined in clause 6.2 + of ETSI GS NFV-IFA 027for the related measured object type. + If this attribute is present, the cardinality of the "objectInstanceIds" + attribute shall be 1. + If this attribute is absent and a sub-object is defined in clause 6.2 + of ETSI GS NFV IFA 027 for the related measured object type, measurements + will be taken for all sub-object instances of the measured object instance. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + criteria: + description: > + Criteria of the collection of performance information. + $ref: "#/definitions/PmJobCriteria" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" + authentication: + description: > + Authentication parameters to configure the use of Authorization + when sending notifications corresponding to this PM job, as defined + in clause 8.3.4 of ETSI GS NFV-SOL 013. + This attribute shall only be present if the API consumer + requires authorization of notifications. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/SubscriptionAuthentication" + + CrossingDirectionType: + type: string + enum: + - UP + - DOWN + + PerformanceInformationAvailableNotification: + description: > + This notification informs the receiver that performance information is + available. + The notification shall be triggered by the VNFM when new performance + information collected by a PM job is available. + The periodicity of triggering this notification is influenced by the + "reportingPeriod" attribute in the "PmJobCriteria" data structure. + type: object + required: + - id + - notificationType + - timeStamp + - pmJobId + - objectType + - objectInstanceId + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "PerformanceInformationAvailableNotification" for this notification + type. + type: string + enum: + - PerformanceInformationAvailableNotification + timeStamp: + description: > + Date and time of the generation of the notification. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + pmJobId: + description: > + Identifier of the PM job for which performance information is available. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + objectType: + description: > + Type of the measured object. + The applicable measured object type for a measurement + is defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + objectInstanceId: + description: > + Identifier of the measured object instance. as per clause 6.2 of ETSI GS NFV-IFA 027. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + subObjectInstanceIds: + description: > + Identifiers of the sub-object instances of the measured + object instance for which the measurements have been taken. + Shall be present if the related PM job has been set up to + measure only a subset of all sub-object instances of the + measured object instance and a sub-object is defined in clause + 6.2 of ETSI GS NFV-IFA 027 for the related measured object type. + Shall be absent otherwise. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - pmJob + - performanceReport + properties: + objectInstance: + description: > + Link to the resource representing the measured object instance to which the + notification applies. Shall be present if the measured object instance + information is accessible as a resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + pmJob: + description: > + Link to the resource that represents the PM job for which + performance information is available. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + performanceReport: + description: > + Link from which the available performance information of data + type "PerformanceReport" can be obtained. This link should point + to an "Individual performance report" resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + + PerformanceReport: + description: > + This type defines the format of a performance report provided by the VNFM to the NFVO as a result of collecting + performance information as part of a PM job. The type shall comply with the provisions defined in table 6.5.2.10-1. + + NOTE: The sub-object allows to structure the measured object but is not to be confused with sub-counters which allow + to structure the measurement value. + + EXAMPLE: + Measured object: VnfInstanceXYZ + Sub-object: VnfcInstance1 + Measurement: vCPU_utilization + Sub-counters: vCPU utilization of each of the vCPUs of VnfcInstance1 (vCPU utilization.vCPU1, vCPU_utilization.vCPU2, etc.). + type: object + required: + - entries + properties: + entries: + description: > + List of performance information entries. Each performance report + entry is for a given metric of a given object (i.e. VNF instance), + but can include multiple collected values. + type: array + items: + type: object + required: + - objectType + - objectInstanceId + - performanceMetric + - performanceValue + properties: + objectType: + description: > + Type of the measured object. + The applicable measured object type for a measurement is defined + in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + objectInstanceId: + description: > + Identifier of the measured object instance for which the performance metric is reported + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + subObjectInstanceId: + description: > + Identifier of the sub-object instance of the measured object instance for which the performance + metric is reported. Shall be present if this is required in clause 6.2 of ETSI GS NFV-IFA 027 + for the related measured object type. See note. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + performanceMetric: + description: > + Name of the metric collected. This attribute shall contain the related "Measurement Name" + value as defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + performanceValues: + description: > + List of performance values with associated timestamp. + type: array + items: + type: object + required: + - timeStamp + - value + properties: + timeStamp: + description: > + Time stamp indicating when the data has been collected. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + value: + description: > + Value of the metric collected. + The type of this attribute shall correspond to the related "Measurement Unit" + as defined in clause 7.2. of ETSI GS NFV-IFA 027. + type: object + context: + description: > + Measurement context information related to the measured value. + The set of applicable keys is defined per measurement in the + related "Measurement Context" in clause 7.2 of ETSI GS NFV-IFA 027. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" + + PmJob: + description: > + This type represents a PM job. + type: object + required: + - id + - objectType + - objectInstanceIds + - criteria + - callbackUri + - _links + properties: + id: + description: > + Identifier of this PM job. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + objectType: + description: > + Type of the measured object. + The applicable measured object type for a measurement + is defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + objectInstanceIds: + description: > + Identifiers of the VNF instances for which performance information + is collected. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + subObjectInstanceIds: + description: > + Identifiers of the sub-object instances of the measured object + instance for which performance information is requested to be collected. + May be present if a sub-object is defined in clause 6.2 of + ETSI GS NFV-IFA 027 for the related measured object type. + If this attribute is present, the cardinality of the "objectInstanceIds" + attribute shall be 1. + If this attribute is absent and a sub-object is defined in clause 6.2 of + ETSI GS NFV IFA 027 for the related measured object type, measurements will + be taken for all sub-object instances of the measured object instance. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + criteria: + description: > + Criteria of the collection of performance information. + $ref: "#/definitions/PmJobCriteria" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" + reports: + description: > + Information about available reports collected by this PM job. + type: object + required: + - href + - readyTime + properties: + href: + description: > + The URI where the report can be obtained. + type: string + format: url + readyTime: + description: > + The time when the report was made available. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + expiryTime: + description: > + The time when the report will expire. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + fileSize: + description: > + The size of the report file in bytes, if known. + type: integer + minimum: 0 + maximum: 1024 + # TODO: How to express unsigned int? + # Done using min and max params to set a range for positive int. + _links: + description: > + Links for this resource. + type: object + required: + - self + properties: + self: + description: > + URI of this resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" + objects: + description: > + Links to resources representing the measure + object instances for which performance + information is collected. Shall be present if the + measured object instance information is + accessible as a resource. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" + + PmJobModifications: + description: > + This type represents modifications to a PM job. It shall comply with the provisions defined in table 6.5.2.12-1. + + NOTE: At least one of the attributes defined in this type shall be present in request bodies. + type: object + oneOf: + - required: + - callbackUri + - required: + - authentication + properties: + callbackUri: + description: > + New value of the "callbackUri" attribute. The value "null" is not permitted. See note. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" + authentication: + description: > + New value of the "authentication" attribute, or "null" to remove the attribute. If present + in a request body, these modifications shall be applied according to the rules of JSON Merge + Patch (see IETF RFC 7396). + + This attribute shall not be present in response bodies. See note. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/SubscriptionAuthentication" + + PmJobCriteria: + description: > + This type represents collection criteria for PM jobs. It shall comply with the provisions defined in table 6.5.3.3-1. + + NOTE 1: At the end of each reportingPeriod, the API producer will inform the API consumer about availability of the + performance data collected for each completed collection period during this reportingPeriod. + The reportingPeriod should be equal to or a multiple of the collectionPeriod. In the latter case, the performance + data for the collection periods within one reporting period are reported together. + NOTE 2: In particular when choosing short collection and reporting periods, the number of PM jobs that can be supported + depends on the capability of the producing entity. + type: object + required: + - collectionPeriod + - reportingPeriod + properties: + performanceMetric: + description: > + This defines the types of performance metrics for the specified object instances. + Valid values are specified as "Measurement Name" values in clause 7.2 of ETSI GS NFV-IFA 027. + At least one of the two attributes (performance metric or group) shall be present. + type: array + items: + type: string + performanceMetricGroup: + description: > + Group of performance metrics. A metric group is a pre-defined list + of metrics, known to the API producer that it can decompose to + individual metrics. Valid values are specified as "Measurement Group" + values in clause 7.2 of ETSI GS NFV-IFA 027. + At least one of the two attributes (performance metric or group) + shall be present. + type: array + items: + type: string + collectionPeriod: + description: > + SSpecifies the periodicity at which the API producer will collect performance information. + The unit shall be seconds. See notes 1 and 2. + type: integer + minimum: 0 + maximum: 1024 + # TODO: How to express unsigned int? + # Done using min and max params to set a range for positive int. + reportingPeriod: + description: > + Specifies the periodicity at which the API producer will report to the API consumer + about performance information. The unit shall be seconds. See notes 1 and 2. + type: integer + minimum: 0 + maximum: 1024 + # TODO: How to express unsigned int? + # Done using min and max params to set a range for positive int. + reportingBoundary: + description: > + Identifies a time boundary after which the reporting will stop. + The boundary shall allow a single reporting as well as periodic + reporting up to the boundary. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + + Threshold: + description: > + This type represents a threshold. + type: object + required: + - id + - objectType + - objectInstanceId + - criteria + - callbackUri + - _links + properties: + id: + description: > + Identifier of this threshold resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + objectType: + description: > + Type of the measured object. + The applicable measured object type for a measurement + is defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + objectInstanceId: + description: > + Identifier of the VNF instance associated with the threshold. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + subObjectInstanceIds: + description: > + Identifiers of the sub-object instances of the measured object + instance associated with the threshold. + May be present if a sub-object is defined in clause 6.2 of + ETSI GS NFV-IFA 027 for the related measurement type. + If this attribute is absent and a sub-object is defined in clause 6.2 + of ETSI GS NFV-IFA 027 for the related measured object type, + measurements will be taken for all sub-object instances of the + measured object instance. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + criteria: + description: > + Criteria that define this threshold. + $ref: "#/definitions/ThresholdCriteria" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" + _links: + description: > + Links for this resource. + type: object + required: + - self + properties: + self: + description: > + URI of this resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" + object: + description: > + Link to a resource representing the measured object instance for which + performance information is collected. Shall be present if the + measured object instance information is accessible as a resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" + + ThresholdModifications: + description: > + This type represents modifications to a threshold. It shall comply with the provisions defined in table 6.5.2.11-1. + + NOTE: At least one of the attributes defined in this type shall be present in request bodies. + type: object + oneOf: + - required: + - callbackUri + - required: + - authentication + properties: + callbackUri: + description: > + New value of the "callbackUri" attribute. The value "null" is not permitted. See note. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" + authentication: + description: > + New value of the "authentication" attribute, or "null" to remove the attribute. If present + in a request body, these modifications shall be applied according to the rules of JSON Merge + Patch (see IETF RFC 7396). + This attribute shall not be present in response bodies. See note. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/SubscriptionAuthentication" + + ThresholdCriteria: + description: > + This type represents criteria that define a threshold. It shall comply with the provisions defined in table 6.5.3.4-1. + + NOTE 1: In the present document, simple thresholds are defined. The definition of additional threshold types is left for + future specification. + NOTE 2: The hysteresis is defined to prevent storms of threshold crossing notifications. When processing a request to create + a threshold, implementations should enforce a suitable minimum value for this attribute (e.g. override the value or + reject the request). + type: object + required: + - performanceMetric + - thresholdType + properties: + performanceMetric: + description: > + Defines the performance metric associated with the threshold. + Valid values are specified as "Measurement Name" values in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + thresholdType: + description: > + Type of threshold. This attribute determines which other attributes are present in the data structure. + + Permitted values: + - SIMPLE: Single-valued static threshold. + See note 1. + type: string + enum: + - SIMPLE + simpleThresholdDetails: + description: > + Details of a simple threshold. Shall be present if + thresholdType="SIMPLE". + type: object + required: + - thresholdValue + - hysteresis + properties: + thresholdValue: + description: > + The threshold value. Shall be represented as a floating point + number. + # TODO: This should be floating. + # Done using Number type and floating formate + type: number + format: float + hysteresis: + description: > + The hysteresis of the threshold. + Shall be represented as a non-negative floating point number. + + A notification with crossing direction "UP" will be generated if the measured value reaches or exceeds + "thresholdValue" + "hysteresis". A notification with crossing direction "DOWN" will be generated if the + measured value reaches or undercuts "thresholdValue" - "hysteresis". See note 2. + # TODO: This should be floating. + # Done using Number type and floating format. + type: number + minimum: 0 + maximum: 1024 + format: float + + ThresholdCrossedNotification: + description: > + This type represents a notification that is sent when a threshold has been crossed. + It shall comply with the provisions defined in table 6.5.2.4-1. + + NOTE: The timing of sending this notification is determined by the capability of the + producing entity to evaluate the threshold crossing condition. + + The notification shall be triggered by the VNFM when a threshold has been crossed. + + NOTE: The sub-object allows to structure the measured object, but is not to be confused + with sub-counters which allow to structure the measurement. + type: object + required: + - id + - notificationType + - timeStamp + - thresholdId + - crossingDirection + - objectType + - objectInstanceId + - performanceMetric + - performanceValue + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "ThresholdCrossedNotification" for this notification type. + type: string + enum: + - ThresholdCrossedNotification + timeStamp: + description: > + Date and time of the generation of the notification. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + thresholdId: + description: > + Identifier of the threshold which has been crossed. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + crossingDirection: + description: > + An indication of whether the threshold was crossed in upward or + downward direction. + $ref: "#/definitions/CrossingDirectionType" + objectType: + description: > + Type of the measured object. + The applicable measured object type for a measurement is defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + objectInstanceId: + description: > + Identifier that identifies a VNF instance. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + subObjectInstanceId: + description: > + Identifier of the sub-object of the measured object to which the measurement applies. + Shall be present if this is required in clause 6.2 of ETSI GS NFV-IFA 027 for the related + measured object type. + See note. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + performanceMetric: + description: > + Performance metric associated with the threshold. + This attribute shall contain the related "Measurement Name" + value as defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + performanceValue: + description: > + Value of the metric that resulted in threshold crossing. + The type of this attribute shall correspond to the related + "Measurement Unit" as defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: object + context: + description: > + Measurement context information related to the measured value. + The set of applicable keys is defined per measurement in the + related "Measurement Context" in clause 7.2 of ETSI GS NFV-IFA 027. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - threshold + properties: + objectInstance: + description: > + Link to the resource representing the measured object instance to which the + notified change applies. Shall be present if the measured object instance + information is accessible as a resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + threshold: + description: > + Link to the resource that represents the threshold that was + crossed. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file diff --git a/src/definitions/SOL002SOL003VNFFaultManagement_def.yaml b/src/definitions/SOL002SOL003VNFFaultManagement_def.yaml deleted file mode 100644 index 88dcbf32..00000000 --- a/src/definitions/SOL002SOL003VNFFaultManagement_def.yaml +++ /dev/null @@ -1,354 +0,0 @@ -# Copyright (c) ETSI 2017. -# https://forge.etsi.org/etsi-forge-copyright-notice.txt - -definitions: - FmSubscriptionRequest: - description: > - This type represents a subscription request related to notifications - about VNF faults. - type: object - required: - - callbackUri - properties: - filter: - description: > - Filter settings for this subscription, to define the subset of all - notifications this subscription relates to. A particular - notification is sent to the subscriber if the filter matches, or if - there is no filter. - $ref: "#/definitions/FmNotificationsFilter" - callbackUri: - description: > - The URI of the endpoint to send the notification to. - $ref: "SOL002SOL003_def.yaml#/definitions/Uri" - authentication: - description: > - Authentication parameters to configure the use of Authorization when sending notifications - corresponding to this subscription, as defined in clause 8.3.4 of ETSI GS NFV-SOL 013. - This attribute shall only be present if the subscriber requires authorization of notifications. - $ref: "SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication" - - FmSubscription: - description: > - This type represents a subscription related to notifications about VNF - faults. - type: object - required: - - id - - callbackUri - - _links - properties: - id: - description: > - Identifier of this "Individual subscription" resource. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - filter: - description: > - Filter settings for this subscription, to define the subset of all - notifications this subscription relates to. A particular - notification is sent to the subscriber if the filter matches, or if - there is no filter. - $ref: "#/definitions/FmNotificationsFilter" - callbackUri: - description: > - The URI of the endpoint to send the notification to. - $ref: "SOL002SOL003_def.yaml#/definitions/Uri" - _links: - description: > - Links for this resource. - type: object - required: - - self - properties: - self: - description: > - URI of this resource. - $ref: "SOL002SOL003_def.yaml#/definitions/Link" - - AlarmClearedNotification: - description: > - This type represents an alarm cleared notification about VNF faults. - The notification shall be triggered by the VNFM when an alarm has been - cleared. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - alarmId - - alarmClearedTime - - _links - properties: - id: - description: > - Identifier of this notification. If a notification is sent multiple - times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "AlarmClearedNotification" for this notification type. - type: string - enum: - - AlarmClearedNotification - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "SOL002SOL003_def.yaml#/definitions/DateTime" - alarmId: - description: > - Alarm identifier. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - alarmClearedTime: - description: > - The time stamp indicating when the alarm was cleared. - $ref: "SOL002SOL003_def.yaml#/definitions/DateTime" - _links: - description: > - Links to resources related to this notification. - type: object - required: - - subscription - - alarm - properties: - subscription: - description: > - Link to the related subscription. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" - alarm: - description: > - Link to the resource that represents the related alarm. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" - - AlarmListRebuiltNotification: - description: > - This type represents a notification that the alarm list has been - rebuilt, e.g. if the VNFM detects its storage holding the alarm - list is corrupted. - The notification shall be triggered by the VNFM when the alarm list has - been rebuilt, e.g. because the VNFM has detected that its storage - holding the alarm list was corrupted. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - _links - properties: - id: - description: > - Identifier of this notification. If a notification is sent multiple - times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "AlarmListRebuiltNotification" for this notification type. - type: string - enum: - - AlarmListRebuiltNotification - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "SOL002SOL003_def.yaml#/definitions/DateTime" - _links: - description: > - Links to resources related to this notification. - type: object - required: - - subscription - - alarms - properties: - subscription: - description: > - Link to the related subscription. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" - alarms: - description: > - Link to the alarm list, i.e. the "Alarms" resource. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" - - AlarmModifications: - description: > - This type represents attribute modifications for an "Individual alarm" - resource, i.e. modifications to a resource representation based on the - "Alarm" data type. The attributes of "Alarm" that can be modified - are included in the "AlarmModifications" data type. - type: object - required: - - ackState - properties: - ackState: - description: > - New value of the "ackState" attribute in "Alarm". - Permitted values: - * ACKNOWLEDGED - * UNACKNOWLEDGED - type: string - enum: - - ACKNOWLEDGED - - UNACKNOWLEDGED - - EventType: - description: > - The enumeration EventType represents those types of events that trigger - an alarm. - * COMMUNICATIONS_ALARM: An alarm of this type is associated with the - procedure and/or process required conveying information from one point - to another (ITU-T Recommendation X.733). - * PROCESSING_ERROR_ALARM: An alarm of this type is associated with a - software or processing fault (ITU-T Recommendation X.733). - * ENVIRONMENTAL_ALARM: An alarm of this type is associated with a - condition related to an enclosure in which the equipment resides - (ITU-T Recommendation X.733). - * QOS_ALARM: An alarm of this type is associated with degradation in the - quality of a service (ITU-T Recommendation X.733). - * EQUIPMENT_ALARM: An alarm of this type is associated with an equipment - fault (ITU-T Recommendation X.733). - type: string - enum: - - COMMUNICATIONS_ALARM - - PROCESSING_ERROR_ALARM - - ENVIRONMENTAL_ALARM - - QOS_ALARM - - EQUIPMENT_ALARM - - FaultyResourceInfo: - description: > - This type represents the faulty virtual resources that have a negative - impact on a VNF. - type: object - required: - - faultyResource - - faultyResourceType - properties: - faultyResource: - description: > - Information that identifies the faulty resource instance and its - managing entity. - $ref: "SOL002SOL003_def.yaml#/definitions/ResourceHandle" - faultyResourceType: - description: > - Type of the faulty resource. - $ref: "#/definitions/FaultyResourceType" - - FaultyResourceType: - description: > - The enumeration FaultyResourceType represents those types of faulty - resource. - type: string - enum: - - COMPUTE - - STORAGE - - NETWORK - - FmNotificationsFilter: - description: > - This type represents a subscription filter related to notifications about VNF faults. - It shall comply with the provisions defined in table 7.5.3.2-1. - At a particular nesting level in the filter structure, the following applies: All attributes - shall match in order for the filter to match (logical "and" between different filter attributes). - If an attribute is an array, the attribute shall match if at least one of the values in the array - matches (logical "or" between the values of one filter attribute). - - NOTE: The permitted values of the "notificationTypes" attribute are spelled exactly as the names - of the notification types to facilitate automated code generation systems. - type: object - properties: - vnfInstanceSubscriptionFilter: - description: > - Filter criteria to select VNF instances about which to notify. - $ref: "SOL002SOL003_def.yaml#/definitions/VnfInstanceSubscriptionFilter" - notificationTypes: - description: > - Match particular notification types. - - Permitted values: - - AlarmNotification - - AlarmClearedNotification - - AlarmListRebuiltNotification - See note. - type: array - items: - type: string - enum: - - AlarmNotification - - AlarmClearedNotification - - AlarmListRebuiltNotification - faultyResourceTypes: - description: > - Match VNF alarms with a faulty resource type listed in this - attribute. - type: array - items: - $ref: "SOL002SOL003VNFFaultManagement_def.yaml#/definitions/FaultyResourceType" - perceivedSeverities: - description: > - Match VNF alarms with a perceived severity listed in this attribute. - type: array - items: - $ref: "SOL002SOL003VNFFaultManagement_def.yaml#/definitions/PerceivedSeverityType" - eventTypes: - description: > - Match VNF alarms with an event type listed in this attribute. - type: array - items: - $ref: "SOL002SOL003VNFFaultManagement_def.yaml#/definitions/EventType" - probableCauses: - description: > - Match VNF alarms with a probable cause listed in this attribute. - type: array - items: - type: string - - PerceivedSeverityType: - description: > - Indicates the relative level of urgency for operator attention. - * CRITICAL: The Critical severity level indicates that a service - affecting condition has occurred and an immediate corrective action - is required. Such a severity can be reported, for example, when a - managed object becomes totally out of service and its capability needs - to be restored (ITU-T Recommendation X.733). - * MAJOR: The Major severity level indicates that a service affecting - condition has developed and an urgent corrective action is required. - Such a severity can be reported, for example, when there is a severe - degradation in the capability of the managed object and its full - capability needs to be restored (ITU-T Recommendation X.733). - * MINOR: The Minor severity level indicates the existence of a - non-service affecting fault condition and that corrective action - should be taken in order to prevent a more serious (for example, - service affecting) fault. Such a severity can be reported, for - example, when the detected alarm condition is not currently degrading - the capacity of the managed object (ITU-T Recommendation X.733). - * WARNING: The Warning severity level indicates the detection of a - potential or impending service affecting fault, before any significant - effects have been felt. Action should be taken to further diagnose (if - necessary) and correct the problem in order to prevent it from - becoming a more serious service affecting fault (ITU-T Recommendation - X.733). - * INDETERMINATE: The Indeterminate severity level indicates that the - severity level cannot be determined (ITU-T Recommendation X.733). - * CLEARED: The Cleared severity level indicates the clearing of one or - more previously reported alarms. This alarm clears all alarms for this - managed object that have the same Alarm type, Probable cause and - Specific problems (if given) (ITU-T Recommendation X.733). - type: string - enum: - - CRITICAL - - MAJOR - - MINOR - - WARNING - - INDETERMINATE - - CLEARED diff --git a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml b/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml deleted file mode 100644 index 09b17bdd..00000000 --- a/src/definitions/SOL002SOL003VNFLifecycleManagement_def.yaml +++ /dev/null @@ -1,1130 +0,0 @@ -# Copyright (c) ETSI 2017. -# https://forge.etsi.org/etsi-forge-copyright-notice.txt - -definitions: - CreateVnfRequest: - type: object - required: - - vnfdId - properties: - vnfdId: - description: > - Identifier that identifies the VNFD which defines the VNF instance to - be created. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - vnfInstanceName: - description: > - Human-readable name of the VNF instance to be created. - type: string - vnfInstanceDescription: - description: > - Human-readable description of the VNF instance to be created. - type: string - metadata: - description: > - If present, this attribute provides additional initial values, overriding those obtained from the VNFD, for - the "metadata" attribute in "VnfInstance", as defined in clause 5.5.2.2. Provisions for handling metadata - during the operation are defined in clause 5.4.2.3.1. - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" - - ScaleVnfRequest: - type: object - required: - - type - - aspectId - properties: - type: - description: > - Indicates the type of the scale operation requested. - Permitted values: - * SCALE_OUT: adding additional VNFC instances to the VNF to increase - capacity - * SCALE_IN: removing VNFC instances from the VNF in order to release - unused capacity. - type: string - enum: - - SCALE_OUT - - SCALE_IN - aspectId: - description: > - Identifier of the scaling aspect. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" - numberOfSteps: - description: > - Number of scaling steps to be executed as part of this Scale VNF - operation. It shall be a positive number and the default value - shall be 1. - type: integer - default: 1 - additionalParams: - description: > - Additional parameters passed by the NFVO as input to the scaling - process, specific to the VNF being scaled, as declared in the VNFD - as part of "ScaleVnfOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" - - ScaleVnfToLevelRequest: - description: > - This type represents request parameters for the "Scale VNF to Level" operation. - It shall comply with the provisions defined in table 5.5.2.6-1. See clause B.2 - for an explanation of VNF scaling. - - NOTE: Either the instantiationLevelId attribute or the scaleInfo attribute shall - be included. - type: object - anyOf: - - oneOf: - - required: - - instantiationLevelId - - required: - - scaleInfo - properties: - instantiationLevelId: - description: > - Identifier of the target instantiation level of the current - deployment flavour to which the VNF is requested to be scaled. - See note. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" - scaleInfo: - description: > - For each scaling aspect of the current deployment flavour, indicates - the target scale level to which the VNF is to be scaled. - See note. - type: array - items: - $ref: "#/definitions/ScaleInfo" - additionalParams: - description: > - Additional parameters passed by the NFVO as input to the scaling - process, specific to the VNF being scaled, as declared in the - VNFD as part of "ScaleVnfToLevelOpConfig" defined in ETSI GS NFV-IFA 011. - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" - - VnfInfoModificationRequest: - description: > - This type represents attribute modifications for an "Individual VNF instance" resource, - i.e. modifications to a resource representation based on the "VnfInstance" data type. - The attributes of "VnfInstance" that can be modified according to the provisions in clause 5.5.2.2 - are included in the "VnfInfoModificationRequest" data type. - The "VnfInfoModificationRequest" data type shall comply with the provisions defined in table 5.5.2.12-1. - type: object - properties: - vnfInstanceName: - description: > - New value of the "vnfInstanceName" attribute in "VnfInstance", or "null" to remove the attribute. - type: string - vnfInstanceDescription: - description: > - New value of the "vnfInstanceDescription" attribute in "VnfInstance", or "null" to remove the attribute. - type: string - vnfdId: - description: > - New value of the "vnfdId" attribute in "VnfInstance". The value "null" is not permitted. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - vnfConfigurableProperties: - description: > - Modifications of the "vnfConfigurableProperties" attribute in "VnfInstance". - If present, these modifications shall be applied according to the rules of - JSON Merge PATCH (see IETF RFC 7396 [15]). - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" - metadata: - description: > - Modifications of the "metadattametadata" attribute in "VnfInstance". - If present, these modifications shall be applied according to the rules of - JSON Merge PATCH (see IETF RFC 7396 [15]). - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" - extensions: - description: > - Modifications of the "extensions" attribute in "VnfInstance". - If present, these modifications shall be applied according to the rules of - JSON Merge PATCH (see IETF RFC 7396 [15]). - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" - vnfcInfoModifications: - description: > - Modifications of certain entries in the "vnfcInfo" attribute array in the - "instantiatedVnfInfo" attribute of "VnfInstance"." to be used as "newList" as defined below this table. - type: array - items: - $ref: "#/definitions/VnfcInfoModifications" - vnfcInfoModificationsDeleteIds: - description: > - List of identifiers entries to be deleted from the 'vnfcInfoModifications" attribute array - to be used as "deleteIdList" as defined below this table. - The following provisions shall apply when modifying an attribute that is an array of objects of type - "VnfcInfo" by supplying an array of objects of type "VnfcInfoModifications". - Assumptions: - 1) "oldList" is the "VnfcInfo" array to be modified and "newList" is the "VnfcInfoModifications" - array that contains the changes. - 2) "oldEntry" is an entry in "oldList" and "newEntry" is an entry in "newList". - 3) A "newEntry" has a "corresponding entry" if there exists an "oldEntry" that has the same content - of the "id" attribute as the "newEntry"; a "newEntry" has no corresponding entry if no such - "oldEntry" exists. - 4) In any array of "VnfcInfo" resp. "VnfcInfoModifications" structures, the content of "id" is unique - (i.e. there are no two entries with the same content of "id"). - Provisions: - 1) For each "newEntry" in "newList" that has no corresponding entry in "oldList", the "oldList" array - shall be modified by adding that "newEntry". - 2) For each "newEntry" in "newList" that has a corresponding "oldEntry" in "oldList", - the value of "oldEntry" shall be updated with the content of "newEntry" as specified - for the data type of "newEntry (refer to clause 5.5.3.24 for the data type "VnfcInfoModifications"). - type: array - items: - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - - CancelMode: - description: > - This type represents a parameter to select the mode of cancelling an - ongoing VNF LCM operation occurrence. - type: object - required: - - cancelMode - properties: - cancelMode: - description: > - Cancellation mode to apply. - $ref: "#/definitions/CancelModeType" - - LccnSubscriptionRequest: - description: > - This type represents a subscription request related to notifications - about VNF lifecycle changes. - type: object - required: - - callbackUri - properties: - filter: - description: > - Filter settings for this subscription, to define the subset of all - notifications this subscription relates to. A particular - notification is sent to the subscriber if the filter matches, or if - there is no filter. - $ref: "#/definitions/LifecycleChangeNotificationsFilter" - callbackUri: - description: > - The URI of the endpoint to send the notification to. - $ref: "SOL002SOL003_def.yaml#/definitions/Uri" - authentication: - description: > - Authentication parameters to configure the use of Authorization when - sending notifications corresponding to this subscription, as defined - in clause 8.3.4 of ETSI GS NFV-SOL 013. - This attribute shall only be present if the subscriber requires - authorization of notifications. - $ref: "SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication" - verbosity: - description: > - This attribute signals the requested verbosity of LCM operation occurrence notifications. If it is not present, - it shall default to the value "FULL". - $ref: "#/definitions/LcmOpOccNotificationVerbosityType" - - LccnSubscription: - description: > - This type represents a subscription related to notifications about VNF - lifecycle changes. - type: object - required: - - id - - callbackUri - - verbosity - - _links - properties: - id: - description: > - Identifier of this subscription resource. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - filter: - description: > - Filter settings for this subscription, to define the subset of all - notifications this subscription relates to. A particular - notification is sent to the subscriber if the filter matches, or if - there is no filter. - $ref: "#/definitions/LifecycleChangeNotificationsFilter" - callbackUri: - description: > - The URI of the endpoint to send the notification to. - $ref: "SOL002SOL003_def.yaml#/definitions/Uri" - verbosity: - description: > - This attribute signals the verbosity of LCM operation occurrence notifications. - $ref: "#/definitions/LcmOpOccNotificationVerbosityType" - _links: - description: > - Links to resources related to this resource. - type: object - required: - - self - properties: - self: - description: > - URI of this resource. - $ref: "SOL002SOL003_def.yaml#/definitions/Link" - - ExtVirtualLinkInfo: - description: > - This type represents information about an external VL. It shall comply with the provisions defined in table 5.5.3.2-1. - - NOTE: This attribute reflects the current configuration information that has resulted from merging into this attribute - the "VnfExtCpData" information which was passed as part of the "ExtVirtualLinkData" structure in the input of the - most recent VNF LCM operation such as "InstantiateVnfRequest", "ChangeExtVnfConnectivityRequest", "ChangeVnfFlavourRequest" - or "ChangeCurrentVnfPkgRequest", or in the Grant response. If applying such change results in an empty list of - "currentVnfExtCpData" structure instances, the affected instance of "ExtVirtualLinkInfo" shall be removed from its - parent data structure. - type: object - required: - - id - - resourceHandle - - currentVnfExtCpData - properties: - id: - description: > - Identifier of the external VL and the related external VL - information instance. - The identifier is assigned by the NFV-MANO entity that manages this - VL instance. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - resourceHandle: - description: > - Reference to the resource realizing this VL. - $ref: "SOL002SOL003_def.yaml#/definitions/ResourceHandle" - extLinkPorts: - description: > - Link ports of this VL. - type: array - items: - $ref: "#/definitions/ExtLinkPortInfo" - currentVnfExtCpData: - description: > - Allows the API consumer to read the current CP configuration information for the connection of external CPs - to the external virtual link. See note. - type: array - items: - $ref: "SOL002SOL003_def.yaml#/definitions/VnfExtCpData" - - ScaleInfo: - required: - - aspectId - - scaleLevel - type: object - properties: - aspectId: - description: > - Identifier of the scaling aspect. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" - vnfdId: - description: > - Identifier of the VNFD. - Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change - current VNF package" operation or due to its final failure). - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - scaleLevel: - description: > - Indicates the scale level. The minimum value shall be 0 and the - maximum value shall be <= maxScaleLevel as described in the VNFD. - type: integer - - VnfLinkPortInfo: - description: > - This type represents a link port of an internal VL of a VNF. It shall comply with the provisions - defined in table 5.5.3.8 1. - - NOTE 1: Either cpInstanceId with cpInstanceType set to "EXT_CP" or any combination of cpInstanceId - with cpInstanceType set to "VNFC_CP" and vipCpInstanceId (i.e. one or both of them) shall be - present for a VnfLinkPortInfo. In case both cpInstanceId with cpInstanceType set to "VNFC_CP" - and vipCpInstanceId are present, the two different CP instances share the linkport. - NOTE 2: Annex A.4 of ETSI GS NFV-IFA 007 provides examples for configurations where both vipCpInstanceId - and vnfcCpInstanceId are present (UC#5 and UC#5-b), only vnfcCpInstanceId is present (UC#2), or - only vipCpInstanceId is present (UC6 and UC#6-b). - NOTE 3: The value of "trunkResourceId" is scoped by the value of "vimConnectionId" in the "resourceHandle" - attribute. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - Identifier of this link port as provided by the entity that has created the link port. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - resourceHandle: - description: > - Reference to the virtualised resource realizing this link - port. - $ref: "SOL002SOL003_def.yaml#/definitions/ResourceHandle" - cpInstanceId: - description: > - When the link port is used for external connectivity by the VNF, this attribute represents the - identifier of the external CP associated with this link port. - - When the link port is used for internal connectivity in the VNF, this attribute represents the - identifier of the VNFC CP to be connected to this link port. - - Shall be present when the link port is used for external connectivity by the VNF. - May be present if used to reference a VNFC CP instance. - There shall be at most one link port associated with any external connection point instance or - internal connection point (i.e. VNFC CP) instance. - The value refers to an "extCpInfo" item in the VnfInstance or a "vnfcCpInfo" item of a "vnfcResourceInfo" - item in the VnfInstance. See note 1. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - cpInstanceType: - description: > - Type of the CP instance that is identified by cpInstanceId. - Shall be present if "cpInstanceId" is present and shall be absent otherwise. - - Permitted values: - - VNFC_CP: The link port is connected to a VNFC CP. - - EXT_CP: The link port is associated to an external CP. - See note 1. - type: string - enum: - - VNFC_CP - - EXT_CP - vipCpInstanceId: - description: > - VIP CP instance of the VNF connected to this link port. May be present. - See notes 1, and 2. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - trunkResourceId: - description: > - Identifier of the trunk resource in the VIM. - Shall be present if the present link port corresponds to the parent port that the trunk resource is associated with. - See note 3. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVim" - - ExtLinkPortInfo: - description: > - This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to - an NS VL. It shall comply with the provisions defined in table 5.5.3.9-1. - - NOTE 1: The use cases UC#4 and UC#5 in clause A.4 of ETSI GS NFV-IFA 007 provide examples for such a configuration. - NOTE 2: The value of "trunkResourceId" is scoped by the value of "vimConnectionId" in the "resourceHandle" attribute. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - Identifier of this link port as provided by the entity that has - created the link port. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - resourceHandle: - description: > - Reference to the virtualised resource realizing this link - port. - $ref: "SOL002SOL003_def.yaml#/definitions/ResourceHandle" - cpInstanceId: - description: > - Identifier of the external CP of the VNF connected to this link - port. There shall be at most one link port associated with any - external connection point instance. The value refers to an - "extCpInfo" item in the VnfInstance. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - secondaryCpInstanceId: - description: > - Additional external CP of the VNF connected to this link port. - If present, this attribute shall refer to a "secondary" ExtCpInfo item in the VNF instance that exposes a virtual - IP CP instance which shares this linkport with the external CP instance referenced by the "cpInstanceId" attribute. - See note 1. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - trunkResourceId: - description: > - Identifier of the trunk resource in the VIM. - Shall be present if the present link port corresponds to the parent port that the trunk resource is associated with. - See note 2. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVim" - - CpProtocolInfo: - description: > - This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses. - It shall comply with the provisions defined in table 5.5.3.9b-1. - - NOTE: This attribute allows to signal the addition of further types of layer and protocol in future versions of the - present document in a backwards-compatible way. In the current version of the present document, only IP over - Ethernet is supported. - type: object - required: - - layerProtocol - properties: - layerProtocol: - description: > - The identifier of layer(s) and protocol(s) associated to the network address information. - - Permitted values: IP_OVER_ETHERNET - See note. - type: string - enum: - - IP_OVER_ETHERNET - ipOverEthernet: - description: > - IP addresses over Ethernet to assign to the extCP instance. Shall be - present if layerProtocol is equal to " IP_OVER_ETHERNET", and shall - be absent otherwise. - $ref: "#/definitions/IpOverEthernetAddressInfo" - - IpOverEthernetAddressInfo: - description: > - This type represents information about a network address that has been assigned. - It shall comply with the provisions defined in table 5.5.3.10-1. - - NOTE 1: At least one of "macAddress" or "ipAddresses" shall be present. - NOTE 2: Exactly one of "addresses" or "addressRange" shall be present. - NOTE 3: If the Cp instance represents a subport in a trunk, segmentationId shall be present. - Otherwise it shall not be present. - NOTE 4: Depending on the NFVI networking infrastructure, the segmentationId may indicate the - actual network segment value (e.g. vlan Id, Vxlan segmentation id, etc.) used in the - transport header of the packets or it may be an identifier used between the application - and the NFVI networking infrastructure to identify the network sub-interface of the trunk - port in question. In the latter case the NFVI infrastructure will map this local segmentationId - to whatever segmentationId is actually used by the NFVI’s transport technology. - type: object - anyOf: - - required: - - macAddress - - required: - - ipAddresses - oneOf: - - required: - - addresses - - required: - - addressRange - properties: - macAddress: - description: > - MAC address, if assigned. See note 1. - $ref: "SOL002SOL003_def.yaml#/definitions/MacAddress" - segmentationId: - description: > - Identification of the network segment to which the Cp instance connects to. See notes 3 and 4. - type: string - ipAddresses: - description: > - Addresses assigned to the CP instance. Each entry represents IP addresses assigned by fixed or - dynamic IP address assignment per subnet. See note 1. - type: array - items: - type: object - required: - - type - properties: - type: - description: > - The type of the IP addresses. - Permitted values: IPV4, IPV6. - type: string - enum: - - IPV4 - - IPV6 - addresses: - description: > - Fixed addresses assigned (from the subnet defined by "subnetId" if provided). See note 2. - type: array - items: - $ref: "SOL002SOL003_def.yaml#/definitions/IpAddress" - isDynamic: - description: > - Indicates whether this set of addresses was assigned - dynamically (true) or based on address information provided as - input from the API consumer (false). Shall be present if - "addresses" is present and shall be absent otherwise. - type: boolean - addressRange: - description: > - An IP address range used, e.g. in case of egress connections. See note 2. - type: object - required: - - minAddress - - maxAddress - properties: - minAddress: - description: > - Lowest IP address belonging to the range. - $ref: "SOL002SOL003_def.yaml#/definitions/IpAddress" - maxAddress: - description: > - Highest IP address belonging to the range - $ref: "SOL002SOL003_def.yaml#/definitions/IpAddress" - subnetId: - description: > - Subnet defined by the identifier of the subnet resource in - the VIM. - In case this attribute is present, IP addresses are bound - to that subnet. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVim" - - MonitoringParameter: - type: object - required: - - id - - performanceMetric - properties: - id: - description: > - Identifier of the monitoring parameter defined in the VNFD. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" - vnfdId: - description: > - Identifier of the VNFD. - Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change - current VNF package" operation or due to its final failure). - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - name: - description: > - Human readable name of the monitoring parameter, as defined in the - VNFD. - type: string - performanceMetric: - description: > - Performance metric that is monitored. This attribute shall contain the - related "Measurement Name" value as defined in clause 7.2 of ETSI GS NFV-IFA 027. - type: string - - LifecycleChangeNotificationsFilter: - description: > - This type represents a subscription filter related to notifications about VNF lifecycle changes. - It shall comply with the provisions defined in table 5.5.3.12-1. - At a particular nesting level in the filter structure, the following applies: All attributes shall - match in order for the filter to match (logical "and" between different filter attributes). - If an attribute is an array, the attribute shall match if at least one of the values in the array - matches (logical "or" between the values of one filter attribute). - - NOTE: The permitted values of the "notificationTypes" attribute are spelled exactly as the names of - the notification types to facilitate automated code generation systems. - type: object - properties: - vnfInstanceSubscriptionFilter: - description: > - Filter criteria to select VNF instances about which to notify. - $ref: "SOL002SOL003_def.yaml#/definitions/VnfInstanceSubscriptionFilter" - notificationTypes: - description: > - Match particular notification types. - - Permitted values: - - VnfLcmOperationOccurrenceNotification - - VnfIdentifierCreationNotification - - VnfIdentifierDeletionNotification - See note. - type: array - items: - type: string - enum: - - VnfLcmOperationOccurrenceNotification - - VnfIdentifierCreationNotification - - VnfIdentifierDeletionNotification - operationTypes: - description: > - Match particular VNF lifecycle operation types for the notification - of type VnfLcmOperationOccurrenceNotification. - May be present if the "notificationTypes" attribute contains the - value "VnfLcmOperationOccurrenceNotification", and shall be absent - otherwise. - type: array - items: - $ref: "SOL002SOL003_def.yaml#/definitions/LcmOperationType" - operationStates: - description: > - Match particular LCM operation state values as reported in - notifications of type VnfLcmOperationOccurrenceNotification. - May be present if the "notificationTypes" attribute contains the - value "VnfLcmOperationOccurrenceNotification", and shall be absent - otherwise. - type: array - items: - $ref: "#/definitions/LcmOperationStateType" - - LccnLinks: - description: > - This type represents the links to resources that a notification can - contain. - type: object - required: - - vnfInstance - - subscription - properties: - vnfInstance: - description: > - Link to the resource representing the VNF instance to which the - notified change applies. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" - subscription: - description: > - Link to the related subscription. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" - vnfLcmOpOcc: - description: > - Link to the VNF lifecycle management operation occurrence that this - notification is related to. Shall be present if there is a related - lifecycle operation occurrence. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" - - VnfExtCpInfo: - description: > - This type represents information about an external CP of a VNF. - It shall comply with the provisions defined in table 5.5.3.17 1. - - NOTE 1: The attributes "associatedVnfcCpId", "associatedVipCpId" and "associatedVnfVirtualLinkId" - are mutually exclusive. Exactly one shall be present. - NOTE 2: An external CP instance is not associated to a link port in the cases indicated for the - “extLinkPorts” attribute in clause 4.4.1.11. - type: object - required: - - id - - cpdId - - cpConfigId - - cpProtocolInfo - oneOf: - - required: - - associatedVnfcCpId - - required: - - associatedVipCpId - - required: - - associatedVnfVirtualLinkId - properties: - id: - description: > - Identifier of the external CP instance and the related information instance. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - cpdId: - description: > - Identifier of the external CPD, VnfExtCpd, in the VNFD. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" - cpConfigId: - description: > - Identifier that references the applied "VnfExtCpConfig" entry in the "cpConfig" map of the "currentVnfExtCpData" - in the "ExtVirtualLinkInfo" structure. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - vnfdId: - description: > - Identifier of the VNFD. - Shall be present in case the value differs from the vnfdId attribute of the VnfInstance (e.g. during a "Change - current VNF package" operation or due to its final failure). - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - cpProtocolInfo: - description: > - Network protocol information for this CP. - type: array - items: - $ref: "#/definitions/CpProtocolInfo" - extLinkPortId: - description: > - Identifier of the "ExtLinkPortInfo" structure inside the "ExtVirtualLinkInfo" structure. - Shall be present if the CP is associated to a link port. See note 2. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - metadata: - description: > - Metadata about this external CP. - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" - associatedVnfcCpId: - description: > - Identifier of the "vnfcCpInfo" structure in "VnfcResourceInfo" structure that represents the VNFC CP - which is exposed by this external CP instance, either directly or via a floating IP address. - Shall be present in case this CP instance maps to a VNFC CP. See note 1. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - associatedVipCpId: - description: > - Identifier of the VIP CP instance that is exposed as this VnfExtCp instance, either directly or via a - floating IP address, and the related "VipCpInfo" structure in "VnfInstance". Shall be present if the - cpdId of this VnfExtCp has a vipCpd attribute. See note 1. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - associatedVnfVirtualLinkId: - description: > - Identifier of the "VnfVirtualLinkResourceInfo" structure that represents the internal VL or of the - "ExtManagedVirtualLinkInfo" structure that represents the externally-managed internal VL which is - exposed by this external CP instance. Shall be present in case this CP instance maps to an internal - VL (including externally-managed internal VL). See note 1. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - - VnfOperationalStateType: - description: > - STARTED: The VNF instance is up and running. - STOPPED: The VNF instance has been shut down. - type: string - enum: - - STARTED - - STOPPED - - LcmOperationStateType: - description: > - STARTING: The LCM operation is starting. - PROCESSING: The LCM operation is currently in execution. - COMPLETED: The LCM operation has been completed successfully. - FAILED_TEMP: The LCM operation has failed and execution has stopped, - but the execution of the operation is not considered to be closed. - FAILED: The LCM operation has failed and it cannot be retried or rolled back, - as it is determined that such action won't succeed. - ROLLING_BACK: The LCM operation is currently being rolled back. - ROLLED_BACK: The LCM operation has been successfully rolled back, - i.e. The state of the VNF prior to the original operation invocation has been restored as closely as possible. - type: string - enum: - - STARTING - - PROCESSING - - COMPLETED - - FAILED_TEMP - - FAILED - - ROLLING_BACK - - ROLLED_BACK - - CancelModeType: - description: > - Cancellation mode. - GRACEFUL: If the VNF LCM operation occurrence is in "PROCESSING" or - "ROLLING_BACK" state, the VNFM shall not start any new resource - management operation and shall wait for the ongoing resource management - operations in the underlying system, typically the VIM, to finish - execution or to time out. After that, the VNFM shall put the operation - occurrence into the FAILED_TEMP state. - If the VNF LCM operation occurrence is in "STARTING" state, the VNFM - shall not start any resource management operation and shall wait for - the granting request to finish execution or time out. After that, the - VNFM shall put the operation occurrence into the ROLLED_BACK state. - FORCEFUL: If the VNF LCM operation occurrence is in "PROCESSING" or - "ROLLING_BACK" state, the VNFM shall not start any new resource - management operation, shall cancel the ongoing resource management - operations in the underlying system, typically the VIM, and shall wait - for the cancellation to finish or to time out. After that, the VNFM - shall put the operation occurrence into the FAILED_TEMP state. - If the VNF LCM operation occurrence is in "STARTING" state, the VNFM - shall not start any resource management operation and put the operation - occurrence into the ROLLED_BACK state. - type: string - enum: - - GRACEFUL - - FORCEFUL - -######################################################################################################################## - VnfIdentifierCreationNotification: - description: > - This type represents a VNF identifier creation notification, which - informs the receiver of the creation of a new "Individual VNF instance" resource and - the associated VNF instance identifier. - This notification shall be triggered by the VNFM when it has created an - "Individual VNF instance" resource and the associated VNF instance identifier. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - vnfInstanceId - - _links - properties: - id: - description: > - Identifier of the VNF instance. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "VnfIdentifierCreationNotification" for this notification type. - type: string - enum: - - VnfIdentifierCreationNotification - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "SOL002SOL003_def.yaml#/definitions/DateTime" - vnfInstanceId: - description: > - The created VNF instance identifier. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - _links: - description: > - Links to resources related to this notification. - $ref: "#/definitions/LccnLinks" - - VnfIdentifierDeletionNotification: - description: > - This type represents a VNF identifier deletion notification, which - informs the receiver of the deletion of a new "Individual VNF instance" resource and - the associated VNF instance identifier. - This notification shall be triggered by the VNFM when it has deleted an - "Individual VNF instance" resource and the associated VNF instance identifier. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - vnfInstanceId - - _links - properties: - id: - description: > - Identifier of this notification. If a notification is sent multiple - times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "VnfIdentifierDeletionNotification" for this notification type. - type: string - enum: - - VnfIdentifierDeletionNotification - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "SOL002SOL003_def.yaml#/definitions/DateTime" - vnfInstanceId: - description: > - The deleted VNF instance identifier. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - _links: - description: > - Links to resources related to this notification. - $ref: "#/definitions/LccnLinks" - - VnfcInfoModifications: - description: > - This type represents modifications of an entry in an array of "VnfcInfo" objects. - * NOTE: The attribute "id" in this data type represents the same identifier as the attribute - "vnfcInstanceId" in other related data types in the present document. For reasons of backward - compatibility, this misalignment is not corrected. - type: object - required: - - id - - vnfcConfigurableProperties - properties: - id: - description: > - Identifier of the VNFC instance of which the information is to be modified. - The identifier references the "id" attribute in a "VnfcInfo" structure. See note. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - vnfcConfigurableProperties: - description: > - Changes of the configurable properties of the VNFC instance. - When this structure is part of a request, the modifications signalled in this attribute - shall be applied according to the rules of JSON Merge Patch (see IETF RFC 7396). - In addition, the provisions in clause 5.7 shall apply. - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" - - VnfcInfo: - description: > - This type represents the information about a VNFC instance that is part of a VNF instance. - * NOTE: This allows to represent the error condition that a VNFC instance has lost its resources. - type: object - required: - - id - - vduId - - vnfcState - properties: - id: - description: > - Identifier of the VNFC instance. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - vduId: - description: > - Reference to the applicable VDU in the VNFD. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - vnfcResourceInfoId: - description: > - Identifier of the VnfcResourceInfo instance representing - the virtualised resources used by this VNFC instance. See note. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - vnfcState: - description: > - Identifier of the VnfcResourceInfo instance representing - the virtualised resources used by this VNFC instance. - State of the VNFC instance. - Permitted values: - • STARTED: The VNFC instance is up and - running. - • STOPPED: The VNFC instance has been shut down - type: string - enum: - - STARTED - - STOPPED - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - vnfcConfigurableProperties: - description: > - Current values of the configurable properties of the - VNFC instance. - Configurable properties referred in this attribute are - declared in the VNFD. - This attribute can be modified with the PATCH method. - In addition, the provisions in clause 5.7 shall apply. - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" - - ModificationsTriggeredByVnfPkgChange: - description: > - This type represents attribute modifications that were performed on an "Individual VNF instance" resource - when changing the current VNF package. The attributes that can be included consist of those requested to - be modified explicitly in the "ChangeCurrentVnfPkgRequest" data structure, and additional attributes of the - "VnfInstance" data structure that were modified implicitly during the operation. - The "ModificationsTriggeredByVnfPkgChange" data type shall comply with the provisions defined in table 5.5.3.21-1. - - NOTE 1: This attribute represents the delta (semantics as per IETF RFC 7396, JSON Merge Patch) between the value - of the attribute at the start of the "Change current VNF package" operation and the value of the attribute - at its completion. - NOTE 2: If present, this attribute (which depends on the value of the "vnfdId" attribute) was modified implicitly - during the related operation and contains a copy of the value of the related attribute from the VNFD in the - VNF Package identified by the "vnfdId" attribute. - type: object - properties: - vnfConfigurableProperties: - description: > - This attribute signals the modifications of the "vnfConfigurableProperties" attribute in "VnfInstance" performed - by the operation and shall be present if that attribute was modified during the operation. See note 1. - In addition, the provisions in clause 5.7 shall apply. - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" - metadata: - description: > - This attribute signals the modifications of the "metadata" attribute in "VnfInstance" performed by the operation and - shall be present if that attribute was modified during the operation. See note 1. - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" - extensions: - description: > - This attribute signals the modifications of the "extensions" attribute in "VnfInstance" performed by the operation and - shall be present if that attribute was modified during the operation. See note 1. - In addition, the provisions in clause 5.7 shall apply. - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" - vnfdId: - description: > - If present, this attribute signals the new value of the "vnfdId" attribute in "VnfInstance". - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - vnfProvider: - description: > - If present, this attribute signals the new value of the "vnfProvider" attribute in "VnfInstance". See note 2. - type: string - vnfProductName: - description: > - If present, this attribute signals the new value of the "vnfProductName" attribute in "VnfInstance". See note 2. - type: string - vnfSoftwareVersion: - description: > - If present, this attribute signals the new value of the "vnfSoftwareVersion" attribute in "VnfInstance". See note 2. - $ref: "SOL002SOL003_def.yaml#/definitions/Version" - vnfdVersion: - description: > - If present, this attribute signals the new value of the "vnfdVersion" attribute in "VnfInstance". See note 2. - $ref: "SOL002SOL003_def.yaml#/definitions/Version" - vimConnectionInfo: - description: > - If present, this attribute signals the changes to VIM connection info that were passed in the related - "ChangeCurrentVnfPkgRequest" structure. The provisions for sensitive information defined in clause - 4.4.1.6 apply. - type: object - additionalProperties: - $ref: "SOL002SOL003_def.yaml#/definitions/VimConnectionInfo" - - LcmOpOccNotificationVerbosityType: - description: > - The enumeration LcmOpOccNotificationVerbosityType provides values to control the verbosity of LCM operation - occurrence notifications. - * FULL: This signals a full notification which contains all change details. - * SHORT: This signals a short notification which omits large-volume change details to reduce the size of data to - be sent via the notification mechanism. - type: string - enum: - - FULL - - SHORT - - - AffectedVipCp: - description: > - This type provides information about added, deleted and modified virtual IP CP instances. - type: object - required: - - cpInstanceId - - cpdId - - changeType - properties: - cpInstanceId: - description: > - Identifier of the virtual IP CP instance and the related "VipCpInfo" structure in "VnfInstance". - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - - cpdId: - description: > - Identifier of the VipCpd in the VNFD. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" - - vnfdId: - description: > - Reference to the VNFD. - Shall be present in case of a "change current VNF Package" to - identify whether the affected virtual CP instance is associated - to a VipCpd which is referred from the source or destination VNFD. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - - changeType: - description: > - Signals the type of change. - Permitted values: - - ADDED - - REMOVED - - MODIFIED - type: string - enum: - - ADDED - - REMOVED - - MODIFIED - - VipCpInfo: - description: > - This type provides information related to virtual IP (VIP) CP. It shall comply with the provisions - defined in table 5.5.3.28-1. - - NOTE 1: It is possible that there is no associated VnfcCp because the VIP CP is available but not - associated yet. - NOTE 2: If only the value or the presence of this attribute is changed in the "VipCpInfo" structure - by an LCM operation occurrence, this does not represent a change that requires including a related - "AffectedVipCp" structure in the VNF LCM operation occurrence notifications or the "VnfLcmOpOcc" - structure related to this LCM operation occurrence. - type: object - required: - - cpInstanceId - - cpdId - properties: - cpInstanceId: - description: > - Identifier of this VIP CP instance and of this VipCpInfo structure. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - cpdId: - description: > - Identifier of the VIP Connection Point Descriptor, VipCpd, in the VNFD. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" - vnfdId: - description: > - Identifier of the VNFD. - Shall be present in case the value differs from the vnfdId attribute of the VnfInstance - (e.g. during a "Change current VNF package" operation or due to its final failure). See note 2. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" - vnfExtCpId: - description: > - When the VIP CP is exposed as external CP of the VNF, the identifier of this external VNF CP instance. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - cpProtocolInfo: - description: > - Protocol information for this CP. There shall be one cpProtocolInfo for layer 3. - There may be one cpProtocolInfo for layer 2. - type: array - items: - $ref: "#/definitions/CpProtocolInfo" - associatedVnfcCpIds: - description: > - Identifiers of the VnfcCps that share the virtual IP addresse allocated to the VIP CP instance. See note. - type: array - items: - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - vnfLinkPortId: - description: > - Identifier of the "VnfLinkPortInfo" structure in the "VnfVirtualLinkResourceInfo" or - "ExtManagedVirtualLinkInfo" structure. Shall be present if the CP is associated to a - link port on an internal VL (including externally-managed internal VL). - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" - metadata: - description: > - Metadata about this VIP CP. - type: array - items: - $ref: "SOL002SOL003_def.yaml#/definitions/KeyValuePairs" \ No newline at end of file -- GitLab From eee3529c2f029f3a0173b26c2b860364ff21e696 Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Mon, 31 Oct 2022 16:45:35 +0500 Subject: [PATCH 20/27] separate common definitions files for SOL002 and SOL003 --- .../SOL002VNFConfiguration_def.yaml | 16 +- .../VNFFaultManagement.yaml | 4 +- .../SOL002VNFFaultManagement_def.yaml | 24 +- ...002VNFFaultManagementNotification_def.yaml | 8 +- src/SOL002/VNFIndicator/VNFIndicator.yaml | 16 +- .../definitions/SOL002VNFIndicator_def.yaml} | 48 +- .../SOL002VNFIndicatorNotification_def.yaml | 28 +- .../VNFLifecycleCoordination.yaml | 8 +- .../SOL002VNFLifecycleCoordination_def.yaml | 36 +- ...NFLifecycleManagementNotification_def.yaml | 14 +- .../VNFPerformanceManagement.yaml | 8 +- .../SOL002VNFPerformanceManagement_def.yaml | 6 - .../VNFPerformanceManagementNotification.yaml | 4 +- ...PerformanceManagementNotification_def.yaml | 201 ++++ .../VNFFaultManagement.yaml | 4 +- .../SOL003VNFFaultManagement_def.yaml | 28 +- src/SOL003/VNFIndicator/VNFIndicator.yaml | 16 +- .../definitions/SOL003VNFIndicator_def.yaml | 302 ++++++ .../VNFIndicatorNotification.yaml | 4 +- .../SOL003VNFIndicatorNotification_def.yaml | 154 +++ .../VNFLifecycleOperationGranting.yaml | 4 +- ...L003VNFLifecycleOperationGranting_def.yaml | 116 +-- ...3VNFPackageManagementNotification_def.yaml | 28 +- .../VNFPerformanceManagement.yaml | 8 +- .../VNFPerformanceManagementNotification.yaml | 4 +- ...PerformanceManagementNotification_def.yaml | 201 ++++ .../VNFSnapshotPackageManagement.yaml | 4 +- ...OL003VNFSnapshotPackageManagement_def.yaml | 74 +- ...edResourcesQuotaAvailableNotification.yaml | 2 +- ...sourcesQuotaAvailableNotification_def.yaml | 16 +- src/definitions/SOL002SOL003_def.yaml | 974 ------------------ src/endpoints/SOL002SOL003_endpoints.yaml | 2 +- src/responses/SOL002SOL003_resp.yaml | 34 +- 33 files changed, 1137 insertions(+), 1259 deletions(-) rename src/{definitions/SOL002SOL003VNFIndicator_def.yaml => SOL002/VNFIndicator/definitions/SOL002VNFIndicator_def.yaml} (82%) create mode 100644 src/SOL002/VNFPerformanceManagementNotification/definitions/SOL002VNFPerformanceManagementNotification_def.yaml create mode 100644 src/SOL003/VNFIndicator/definitions/SOL003VNFIndicator_def.yaml create mode 100644 src/SOL003/VNFIndicatorNotification/definitions/SOL003VNFIndicatorNotification_def.yaml create mode 100644 src/SOL003/VNFPerformanceManagementNotification/definitions/SOL003VNFPerformanceManagementNotification_def.yaml delete mode 100644 src/definitions/SOL002SOL003_def.yaml diff --git a/src/SOL002/VNFConfiguration/definitions/SOL002VNFConfiguration_def.yaml b/src/SOL002/VNFConfiguration/definitions/SOL002VNFConfiguration_def.yaml index 3354c655..4430ed6d 100644 --- a/src/SOL002/VNFConfiguration/definitions/SOL002VNFConfiguration_def.yaml +++ b/src/SOL002/VNFConfiguration/definitions/SOL002VNFConfiguration_def.yaml @@ -53,7 +53,7 @@ definitions: as "deleteIdList" as defined below this table. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" VnfConfiguration: description: > @@ -90,7 +90,7 @@ definitions: description: > Additional configurable properties of the VNF instance declared in the VNFD as "VnfConfigurableProperties". see note. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs' VnfcConfigurationData: description: > @@ -105,7 +105,7 @@ definitions: description: > Identifier of a VNFC instance to which this set of configuration data applies. The identifier references the "id" attribute in a "VnfcInfo" structure. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf' intCpConfig: description: > Configuration parameters for the internal CPs of the VNFC instance. @@ -116,7 +116,7 @@ definitions: description: > Additional configurable properties of the VNFC instance declared in the VNFD as "VnfcConfigurableProperties". See note. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs' CpConfiguration: description: > @@ -130,11 +130,11 @@ definitions: cpId: description: > Identifier of a CP instance within the namespace of a specific VNF instance or a VNFC instance. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf' cpdId: description: > Identifier of the CPD in the VNFD. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd' addresses: description: > Network address and port assigned to the CP. @@ -167,11 +167,11 @@ definitions: macAddress: description: > Mac address. See NOTE 2. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/MacAddress' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/MacAddress' ipAddress: description: > IP address. See NOTE 2. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/IpAddress' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/IpAddress' useDynamicAddress: description: > Set to true if an address shall be assigned dynamically. Otherwise set to false. diff --git a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml index 458607ad..6d9c762e 100644 --- a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml @@ -600,7 +600,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" IndividualAlarmEscalate.Post.204: description: | @@ -736,7 +736,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" IndividualSubscription.Get.200: description: | diff --git a/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml b/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml index a239500b..6ee93cc1 100644 --- a/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml +++ b/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml @@ -44,11 +44,11 @@ definitions: id: description: > Identifier of this Alarm. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" managedObjectId: description: > Identifier of the affected VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfcInstanceIds: description: > Identifiers of the affected VNFC instances. Each identifier references the @@ -56,7 +56,7 @@ definitions: at least one VNFC instance. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" rootCauseFaultyResource: description: > The virtualised resources that are causing the VNF fault. Shall be present if the alarm affects @@ -66,23 +66,23 @@ definitions: description: > Time stamp indicating when the alarm is raised by the managed object. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" alarmChangedTime: description: > Time stamp indicating when the alarm was last changed. It shall be present if the alarm has been updated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" alarmClearedTime: description: > Time stamp indicating when the alarm was cleared. It shall be present if the alarm has been cleared. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" alarmAcknowledgedTime: description: > Time stamp indicating when the alarm was acknowledged. It shall be present if the alarm has been acknowledged. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" ackState: description: > Acknowledgement state of the alarm. @@ -100,7 +100,7 @@ definitions: eventTime: description: > Time stamp indicating when the fault was observed. See note 2. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" eventType: description: > Type of event. @@ -128,13 +128,13 @@ definitions: Attribute indicating if this fault is the root for other correlated alarms. If TRUE, then the alarms listed in the attribute CorrelatedAlarmId are caused by this fault. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Boolean" correlatedAlarmIds: description: > List of identifiers of other alarms correlated to this fault. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" faultDetails: description: > Provides additional information about the fault. See notes 1 and 2. @@ -151,13 +151,13 @@ definitions: self: description: > URI of this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" objectInstance: description: > Link to the resource representing the VNF instance to which the notified alarm is correlated. Shall be present if the VNF instance information is accessible as a resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" PerceivedSeverityRequest: description: > diff --git a/src/SOL002/VNFFaultManagementNotification/definitions/SOL002VNFFaultManagementNotification_def.yaml b/src/SOL002/VNFFaultManagementNotification/definitions/SOL002VNFFaultManagementNotification_def.yaml index b3fa5747..6a50e59d 100644 --- a/src/SOL002/VNFFaultManagementNotification/definitions/SOL002VNFFaultManagementNotification_def.yaml +++ b/src/SOL002/VNFFaultManagementNotification/definitions/SOL002VNFFaultManagementNotification_def.yaml @@ -23,7 +23,7 @@ definitions: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these notifications shall have the same value. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" notificationType: description: > Discriminator for the different notification types. Shall be set to @@ -34,11 +34,11 @@ definitions: subscriptionId: description: > Identifier of the subscription that this notification relates to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" timeStamp: description: > Date-time of the generation of the notification. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" alarm: description: > Information about an alarm including AlarmId, affected VNF @@ -54,7 +54,7 @@ definitions: subscription: description: > Link to the related subscription. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" AlarmClearedNotification: description: > diff --git a/src/SOL002/VNFIndicator/VNFIndicator.yaml b/src/SOL002/VNFIndicator/VNFIndicator.yaml index 4bf1cefe..a0c6f59e 100644 --- a/src/SOL002/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL002/VNFIndicator/VNFIndicator.yaml @@ -380,7 +380,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscriptionRequest + $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscriptionRequest required: true responses: @@ -420,7 +420,7 @@ components: schema: type: array items: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator + $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicator VnfIndicators.Get.200: description: | @@ -458,7 +458,7 @@ components: schema: type: array items: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator + $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicator VnfIndividualIndicator.Get.200: description: | @@ -481,7 +481,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator + $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicator VnfIndicatorSubscriptions.Get.200: description: | @@ -519,7 +519,7 @@ components: schema: type: array items: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription + $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription VnfIndicatorSubscription.Post.201: description: | @@ -560,7 +560,7 @@ components: schema: type: array items: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription + $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription VnfIndicatorSubscription.Post.422: description: | @@ -599,7 +599,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" VnfIndicatorSubscription.Get.200: description: | @@ -622,7 +622,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription + $ref: definitions/SOL002VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription VnfIndicatorSubscription.Delete.204: description: | diff --git a/src/definitions/SOL002SOL003VNFIndicator_def.yaml b/src/SOL002/VNFIndicator/definitions/SOL002VNFIndicator_def.yaml similarity index 82% rename from src/definitions/SOL002SOL003VNFIndicator_def.yaml rename to src/SOL002/VNFIndicator/definitions/SOL002VNFIndicator_def.yaml index 14ed7fdc..69888697 100644 --- a/src/definitions/SOL002SOL003VNFIndicator_def.yaml +++ b/src/SOL002/VNFIndicator/definitions/SOL002VNFIndicator_def.yaml @@ -17,7 +17,7 @@ definitions: id: description: > Identifier of this VNF indicator. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" name: description: > Human readable name of the indicator. Shall be present if defined in @@ -30,7 +30,7 @@ definitions: vnfInstanceId: description: > Identifier of the "Individual VNF instance" which provides the indicator value. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" _links: description: > Links for this resource. @@ -42,11 +42,11 @@ definitions: self: description: > URI of this resource. - $ref: "SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" vnfInstance: description: > Link to the related "Individual VNF instance" resource. - $ref: "SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" VnfIndicatorNotificationsFilter: description: > @@ -64,7 +64,7 @@ definitions: vnfInstanceSubscriptionFilter: description: > Filter criteria to select VNF instances about which to notify. - $ref: "SOL002SOL003_def.yaml#/definitions/VnfInstanceSubscriptionFilter" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/VnfInstanceSubscriptionFilter" notificationTypes: description: > Match particular notification types. @@ -82,7 +82,7 @@ definitions: Match particular VNF indicator identifiers. type: array items: - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" VnfIndicatorSubscription: description: > @@ -97,7 +97,7 @@ definitions: id: description: > Identifier of this "Individual subscription" resource. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" filter: description: > Filter settings for this subscription, to define the subset of all @@ -120,7 +120,7 @@ definitions: self: description: > URI of this resource. - $ref: "SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" VnfIndicatorSubscriptionRequest: description: > @@ -140,7 +140,7 @@ definitions: callbackUri: description: > The URI of the endpoint to send the notification to. - $ref: "SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Uri" authentication: description: > Authentication parameters to configure the use of Authorization when @@ -148,7 +148,7 @@ definitions: in clause 8.3.4 of ETSI GS NFV-SOL 013. This attribute shall only be present if the subscriber requires authorization of notifications. - $ref: "SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/SubscriptionAuthentication" VnfIndicatorValueChangeNotification: description: > @@ -172,7 +172,7 @@ definitions: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these notifications shall have the same value. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" notificationType: description: > Discriminator for the different notification types. Shall be set to @@ -183,15 +183,15 @@ definitions: subscriptionId: description: > Identifier of the subscription that this notification relates to. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" timeStamp: description: > Date-time of the generation of the notification. - $ref: "SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" vnfIndicatorId: description: > Identifier of the VNF indicator whose value has changed. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" name: description: > Human readable name of the VNF indicator. Shall be present if @@ -204,7 +204,7 @@ definitions: vnfInstanceId: description: > Identifier of the VNF instance which provides the indicator value. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" _links: description: > Links for this resource. @@ -217,11 +217,11 @@ definitions: description: > Link to the related "Individual VNF instance" resource. Shall be present if the VNF instance information is accessible as a resource. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" subscription: description: > Link to the related subscription. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" SupportedIndicatorsChangeNotification: description: > @@ -247,7 +247,7 @@ definitions: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these notifications shall have the same value. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" notificationType: description: > Discriminator for the different notification types. Shall be set to @@ -258,15 +258,15 @@ definitions: subscriptionId: description: > Identifier of the subscription that this notification relates to. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" timeStamp: description: > Date-time of the generation of the notification. - $ref: "SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" vnfInstanceId: description: > Identifier of the VNF instance which provides the indicator value. - $ref: "SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" supportedIndicators: description: > Set of VNF indicators supported by the VNF instance. @@ -279,7 +279,7 @@ definitions: vnfIndicatorId: description: > Identifier of the VNF indicator whose value has changed. - $ref: "SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" name: description: > Human readable name of the VNF indicator. Shall be present if defined in the VNFD. See note. @@ -295,8 +295,8 @@ definitions: description: > Link to the related "Individual VNF instance" resource. Shall be present if the VNF instance information is accessible as a resource. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" subscription: description: > Link to the related subscription. - $ref: "SOL002SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" \ No newline at end of file diff --git a/src/SOL002/VNFIndicatorNotification/definitions/SOL002VNFIndicatorNotification_def.yaml b/src/SOL002/VNFIndicatorNotification/definitions/SOL002VNFIndicatorNotification_def.yaml index bc95b94f..9c6b4812 100644 --- a/src/SOL002/VNFIndicatorNotification/definitions/SOL002VNFIndicatorNotification_def.yaml +++ b/src/SOL002/VNFIndicatorNotification/definitions/SOL002VNFIndicatorNotification_def.yaml @@ -23,7 +23,7 @@ definitions: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these notifications shall have the same value. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Identifier' notificationType: description: > Discriminator for the different notification types. @@ -32,15 +32,15 @@ definitions: subscriptionId: description: > Identifier of the subscription that this notification relates to. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Identifier' timeStamp: description: > Date-time of the generation of the notification. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/DateTime' vnfIndicatorId: description: > Identifier of the VNF indicator whose value has changed. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd' name: description: > Human readable name of the VNF indicator. Shall be present if defined in the VNFD. @@ -53,7 +53,7 @@ definitions: vnfInstanceId: description: > Identifier of the VNF instance which provides the indicator value. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Identifier' _links: description: > Links to resources related to this resource. @@ -66,11 +66,11 @@ definitions: vnfInstance: description: > Link to the related "Individual VNF instance" resource. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Link' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Link' subscription: description: > Link to the related subscription. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Link' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Link' SupportedIndicatorsChangeNotification: description: | @@ -91,7 +91,7 @@ definitions: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these notifications shall have the same value. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Identifier' notificationType: description: | Discriminator for the different notification types. Shall be set to "SupportedIndicatorsChangeNotification" @@ -100,15 +100,15 @@ definitions: subscriptionId: description: | Identifier of the subscription that this notification relates to. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Identifier' timeStamp: description: | Date-time of the generation of the notification. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/DateTime' vnfInstanceId: description: | Identifier of the VNF instance which provides the indicator value. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/Identifier' supportedIndicators: description: | Set of VNF indicators supported by the VNF instance. @@ -121,7 +121,7 @@ definitions: vnfIndicatorId: description: | Identifier of the VNF indicator whose value has changed. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf' name: description: | Human readable name of the VNF indicator. Shall be present if defined in the VNFD. @@ -138,8 +138,8 @@ definitions: description: | Link to the related "Individual VNF instance" resource. Shall be present if the VNF instance information is accessible as a resource. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink' + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink' subscription: description: | Link to the related subscription. - $ref: '../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink' \ No newline at end of file + $ref: '../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink' \ No newline at end of file diff --git a/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml b/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml index c1bf5854..a2793c11 100644 --- a/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml +++ b/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml @@ -307,7 +307,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" Coordination.Post.409: description: > @@ -345,7 +345,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" Coordination.Post.503: description: > @@ -387,7 +387,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" LcmCoord.Get.200: description: | @@ -536,4 +536,4 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" diff --git a/src/SOL002/VNFLifecycleCoordination/definitions/SOL002VNFLifecycleCoordination_def.yaml b/src/SOL002/VNFLifecycleCoordination/definitions/SOL002VNFLifecycleCoordination_def.yaml index ce9dbbe9..1a2dc0b8 100644 --- a/src/SOL002/VNFLifecycleCoordination/definitions/SOL002VNFLifecycleCoordination_def.yaml +++ b/src/SOL002/VNFLifecycleCoordination/definitions/SOL002VNFLifecycleCoordination_def.yaml @@ -18,26 +18,26 @@ definitions: id: description: > Identifier of this coordination result. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" coordinationResult: description: > The result of executing the coordination action which also implies the action to be performed by the VNFM as the result of this coordination. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/LcmCoordResultType" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/LcmCoordResultType" vnfInstanceId: description: > Identifier of the VNF instance which this coordination request is related to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfLcmOpOccId: description: > The identifier of the VNF lifecycle management operation occurrence related to the coordination. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" lcmOperationType: description: > Indicates the type of the LCM operation with which coordination is requested. Shall be the same as the value of the "operation" attribute in the LcmOpOcc structure that is referenced by the "vnfLcmOpOccId". - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/LcmOperationForCoordType" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/LcmOperationForCoordType" coordinationActionName: description: > Indicates the actual LCM coordination action. @@ -47,7 +47,7 @@ definitions: description: > Additional parameters returned by the coordination action, e.g. on the reason for the indicated coordinationResult. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" warnings: description: > Warning messages that were generated while the operation was executing. @@ -61,7 +61,7 @@ definitions: If provided, the error information should be represented in the "error" attribute of the related VnfLcmOpOcc data structure. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" _links: description: > Links to resources related to this resource. @@ -74,15 +74,15 @@ definitions: self: description: > URI of this resource - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" vnfLcmOpOcc: description: > Related lifecycle management operation occurrence. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" vnfInstance: description: > Related VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" LcmCoordRequest: type: object @@ -96,26 +96,26 @@ definitions: vnfInstanceId: description: > Identifier of the VNF instance which this coordination request is related to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" vnfLcmOpOccId: description: > The identifier of the VNF lifecycle management operation occurrence related to the coordination. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" lcmOperationType: description: > Indicates the type of the LCM operation with which coordination is requested. Shall be the same as the value of the "operation" attribute in the LcmOpOcc structure that is referenced by the "vnfLcmOpOccId". - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/LcmOperationForCoordType" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/LcmOperationForCoordType" coordinationActionName: description: > Indicates the LCM coordination action. The coordination actions that a VNF supports are declared in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" inputParams: description: > Additional parameters passed as input to the coordination action. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" _links: description: > Links to resources related to this request. @@ -127,11 +127,11 @@ definitions: vnfLcmOpOcc: description: > Related lifecycle management operation occurrence. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" vnfInstance: description: > Related VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Link" inputParams: type: object @@ -141,4 +141,4 @@ definitions: vnfcInstanceIds: description: > Identifier of the VNF instance which this coordination request is related to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" diff --git a/src/SOL002/VNFLifecycleManagementNotification/definitions/SOL002VNFLifecycleManagementNotification_def.yaml b/src/SOL002/VNFLifecycleManagementNotification/definitions/SOL002VNFLifecycleManagementNotification_def.yaml index 9287a74e..3c7c9ba2 100644 --- a/src/SOL002/VNFLifecycleManagementNotification/definitions/SOL002VNFLifecycleManagementNotification_def.yaml +++ b/src/SOL002/VNFLifecycleManagementNotification/definitions/SOL002VNFLifecycleManagementNotification_def.yaml @@ -66,7 +66,7 @@ definitions: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these notifications shall have the same value. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" notificationType: description: > Discriminator for the different notification types. Shall be set to @@ -77,11 +77,11 @@ definitions: subscriptionId: description: > Identifier of the subscription that this notification relates to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" timeStamp: description: > Date-time of the generation of the notification. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" notificationStatus: description: > Indicates whether this notification reports about the start of a @@ -102,11 +102,11 @@ definitions: vnfInstanceId: description: > The identifier of the VNF instance affected. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" operation: description: > The lifecycle management operation. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/LcmOperationType" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/LcmOperationType" isAutomaticInvocation: description: > Set to true if this VNF LCM operation occurrence has been triggered @@ -125,7 +125,7 @@ definitions: description: > The identifier of the VNF lifecycle management operation occurrence associated to the notification. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" affectedVnfcs: description: > Information about VNFC instances that were affected during the @@ -199,7 +199,7 @@ definitions: the LCM operation. Shall be present if the "operationState" attribute is "FAILED_TEMP" or "FAILED", and shall be absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" _links: description: > Links to resources related to this notification. diff --git a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 83dc5325..1a75bec0 100644 --- a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -683,7 +683,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" IndividualPmJob.Get.200: description: | @@ -841,7 +841,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" IndividualPmJobReport.Get.200: description: | @@ -995,7 +995,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" IndividualThreshold.Get.200: @@ -1148,4 +1148,4 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" diff --git a/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml b/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml index a2c048a3..6b6d6133 100644 --- a/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml +++ b/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml @@ -106,12 +106,6 @@ definitions: requires authorization of notifications. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/SubscriptionAuthentication" - CrossingDirectionType: - type: string - enum: - - UP - - DOWN - PerformanceInformationAvailableNotification: description: > This notification informs the receiver that performance information is diff --git a/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml b/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml index b7795f46..91f501a9 100644 --- a/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml +++ b/src/SOL002/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml @@ -139,7 +139,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PerformanceInformationAvailableNotification + $ref: "definitions/SOL002VNFPerformanceManagementNotification_def.yaml#/definitions/PerformanceInformationAvailableNotification" required: true ThresholdCrossedNotification: @@ -148,7 +148,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/ThresholdCrossedNotification + $ref: "definitions/SOL002VNFPerformanceManagementNotification_def.yaml#/definitions/ThresholdCrossedNotification" required: true responses: diff --git a/src/SOL002/VNFPerformanceManagementNotification/definitions/SOL002VNFPerformanceManagementNotification_def.yaml b/src/SOL002/VNFPerformanceManagementNotification/definitions/SOL002VNFPerformanceManagementNotification_def.yaml new file mode 100644 index 00000000..3fafae20 --- /dev/null +++ b/src/SOL002/VNFPerformanceManagementNotification/definitions/SOL002VNFPerformanceManagementNotification_def.yaml @@ -0,0 +1,201 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt + +definitions: + PerformanceInformationAvailableNotification: + description: > + This notification informs the receiver that performance information is + available. + The notification shall be triggered by the VNFM when new performance + information collected by a PM job is available. + The periodicity of triggering this notification is influenced by the + "reportingPeriod" attribute in the "PmJobCriteria" data structure. + type: object + required: + - id + - notificationType + - timeStamp + - pmJobId + - objectType + - objectInstanceId + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "PerformanceInformationAvailableNotification" for this notification + type. + type: string + enum: + - PerformanceInformationAvailableNotification + timeStamp: + description: > + Date and time of the generation of the notification. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" + pmJobId: + description: > + Identifier of the PM job for which performance information is available. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + objectType: + description: > + Type of the measured object. + The applicable measured object type for a measurement + is defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + objectInstanceId: + description: > + Identifier of the measured object instance. as per clause 6.2 of ETSI GS NFV-IFA 027. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + subObjectInstanceIds: + description: > + Identifiers of the sub-object instances of the measured + object instance for which the measurements have been taken. + Shall be present if the related PM job has been set up to + measure only a subset of all sub-object instances of the + measured object instance and a sub-object is defined in clause + 6.2 of ETSI GS NFV-IFA 027 for the related measured object type. + Shall be absent otherwise. + type: array + items: + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - pmJob + - performanceReport + properties: + objectInstance: + description: > + Link to the resource representing the measured object instance to which the + notification applies. Shall be present if the measured object instance + information is accessible as a resource. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" + pmJob: + description: > + Link to the resource that represents the PM job for which + performance information is available. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" + performanceReport: + description: > + Link from which the available performance information of data + type "PerformanceReport" can be obtained. This link should point + to an "Individual performance report" resource. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" + + ThresholdCrossedNotification: + description: > + This type represents a notification that is sent when a threshold has been crossed. + It shall comply with the provisions defined in table 6.5.2.4-1. + + NOTE: The timing of sending this notification is determined by the capability of the + producing entity to evaluate the threshold crossing condition. + + The notification shall be triggered by the VNFM when a threshold has been crossed. + + NOTE: The sub-object allows to structure the measured object, but is not to be confused + with sub-counters which allow to structure the measurement. + type: object + required: + - id + - notificationType + - timeStamp + - thresholdId + - crossingDirection + - objectType + - objectInstanceId + - performanceMetric + - performanceValue + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "ThresholdCrossedNotification" for this notification type. + type: string + enum: + - ThresholdCrossedNotification + timeStamp: + description: > + Date and time of the generation of the notification. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" + thresholdId: + description: > + Identifier of the threshold which has been crossed. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + crossingDirection: + description: > + An indication of whether the threshold was crossed in upward or + downward direction. + $ref: "#/definitions/CrossingDirectionType" + objectType: + description: > + Type of the measured object. + The applicable measured object type for a measurement is defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + objectInstanceId: + description: > + Identifier that identifies a VNF instance. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" + subObjectInstanceId: + description: > + Identifier of the sub-object of the measured object to which the measurement applies. + Shall be present if this is required in clause 6.2 of ETSI GS NFV-IFA 027 for the related + measured object type. + See note. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" + performanceMetric: + description: > + Performance metric associated with the threshold. + This attribute shall contain the related "Measurement Name" + value as defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + performanceValue: + description: > + Value of the metric that resulted in threshold crossing. + The type of this attribute shall correspond to the related + "Measurement Unit" as defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: object + context: + description: > + Measurement context information related to the measured value. + The set of applicable keys is defined per measurement in the + related "Measurement Context" in clause 7.2 of ETSI GS NFV-IFA 027. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - threshold + properties: + objectInstance: + description: > + Link to the resource representing the measured object instance to which the + notified change applies. Shall be present if the measured object instance + information is accessible as a resource. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" + threshold: + description: > + Link to the resource that represents the threshold that was + crossed. + $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" + + CrossingDirectionType: + type: string + enum: + - UP + - DOWN \ No newline at end of file diff --git a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml index 71fa445d..ae995874 100644 --- a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml @@ -522,7 +522,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualAlarm.Patch.412: description: | @@ -726,7 +726,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualSubscription.Get.200: description: | diff --git a/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml b/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml index c55df14c..b2c28a64 100644 --- a/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml +++ b/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml @@ -39,11 +39,11 @@ definitions: id: description: > Identifier of this Alarm. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" managedObjectId: description: > Identifier of the affected VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" rootCauseFaultyResource: description: > The virtualised resources that are causing the VNF fault. @@ -53,22 +53,22 @@ definitions: description: > Time stamp indicating when the alarm is raised by the managed object. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" alarmChangedTime: description: > Time stamp indicating when the alarm was last changed. It shall be present if the alarm has been updated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" alarmClearedTime: description: > Time stamp indicating when the alarm was cleared. It shall be present if the alarm has been cleared. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" alarmAcknowledgedTime: description: > Time stamp indicating when the alarm was acknowledged. It shall be present if the alarm has been acknowledged. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" ackState: description: > Acknowledgement state of the alarm. @@ -86,7 +86,7 @@ definitions: eventTime: description: > Time stamp indicating when the fault was observed. See note 2. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" eventType: description: > Type of event. @@ -120,7 +120,7 @@ definitions: List of identifiers of other alarms correlated to this fault. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" faultDetails: description: > Provides additional information about the fault. See notes 1 and 2. @@ -137,13 +137,13 @@ definitions: self: description: > URI of this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" objectInstance: description: > Link to the resource representing the VNF instance to which the notified alarm is correlated. Shall be present if the VNF instance information is accessible as a resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" AlarmNotification: description: > @@ -166,7 +166,7 @@ definitions: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these notifications shall have the same value. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" notificationType: description: > Discriminator for the different notification types. Shall be set to @@ -177,11 +177,11 @@ definitions: subscriptionId: description: > Identifier of the subscription that this notification relates to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" timeStamp: description: > Date-time of the generation of the notification. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" alarm: description: > Information about an alarm including AlarmId, affected VNF @@ -197,7 +197,7 @@ definitions: subscription: description: > Link to the related subscription. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" FmSubscriptionRequest: diff --git a/src/SOL003/VNFIndicator/VNFIndicator.yaml b/src/SOL003/VNFIndicator/VNFIndicator.yaml index 4647d505..d638db96 100644 --- a/src/SOL003/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL003/VNFIndicator/VNFIndicator.yaml @@ -385,7 +385,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscriptionRequest + $ref: definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscriptionRequest required: true responses: @@ -428,7 +428,7 @@ components: schema: type: array items: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator + $ref: "definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator" VnfInstanceIndicators.Get.200: description: | @@ -470,7 +470,7 @@ components: schema: type: array items: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator + $ref: definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator VnfInstanceIndividualIndicator.Get.200: description: | @@ -495,7 +495,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator + $ref: definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicator Subscriptions.Post.201: description: | @@ -532,7 +532,7 @@ components: schema: type: array items: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription + $ref: definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription Subscriptions.Post.303: description: | @@ -608,7 +608,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" Subscriptions.Get.200: description: | 200 OK @@ -649,7 +649,7 @@ components: schema: type: array items: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription + $ref: definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription IndividualSubscription.Get.200: description: | @@ -675,7 +675,7 @@ components: content: application/json: schema: - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription + $ref: definitions/SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorSubscription IndividualSubscription.Delete.204: description: | diff --git a/src/SOL003/VNFIndicator/definitions/SOL003VNFIndicator_def.yaml b/src/SOL003/VNFIndicator/definitions/SOL003VNFIndicator_def.yaml new file mode 100644 index 00000000..887a492d --- /dev/null +++ b/src/SOL003/VNFIndicator/definitions/SOL003VNFIndicator_def.yaml @@ -0,0 +1,302 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt + +definitions: + VnfIndicator: + description: > + This type represents a VNF indicator value. It shall comply with the provisions defined in table 8.5.2.2-1. + + NOTE: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications. + type: object + required: + - id + - value + - vnfInstanceId + - _links + properties: + id: + description: > + Identifier of this VNF indicator. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" + name: + description: > + Human readable name of the indicator. Shall be present if defined in + the VNFD. + type: string + value: + description: > + Provides the value of the indicator. The value format is defined in the VNFD. See note. + type: object + vnfInstanceId: + description: > + Identifier of the "Individual VNF instance" which provides the indicator value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + _links: + description: > + Links for this resource. + type: object + required: + - self + - vnfInstance + properties: + self: + description: > + URI of this resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" + vnfInstance: + description: > + Link to the related "Individual VNF instance" resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" + + VnfIndicatorNotificationsFilter: + description: > + This type represents a subscription filter for notifications related to VNF indicators. + It shall comply with the provisions defined in table 8.5.3.2-1. + At a particular nesting level in the filter structure, the following applies: + All attributes shall match in order for the filter to match (logical "and" between different + filter attributes). If an attribute is an array, the attribute shall match if at least one of + the values in the array matches (logical "or" between the values of one filter attribute). + + NOTE: The permitted values of the "notificationTypes" attribute are spelled exactly as the names + of the notification types to facilitate automated code generation systems. + type: object + properties: + vnfInstanceSubscriptionFilter: + description: > + Filter criteria to select VNF instances about which to notify. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VnfInstanceSubscriptionFilter" + notificationTypes: + description: > + Match particular notification types. + + Permitted values: + - VnfIndicatorValueChangeNotification + - SupportedIndicatorsChangeNotification + See note. + type: string + enum: + - VnfIndicatorValueChangeNotification + - SupportedIndicatorsChangeNotification + indicatorIds: + description: > + Match particular VNF indicator identifiers. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" + + VnfIndicatorSubscription: + description: > + This type represents a subscription related to notifications about VNF + indicator value changes. + type: object + required: + - id + - callbackUri + - _links + properties: + id: + description: > + Identifier of this "Individual subscription" resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + filter: + description: > + Filter settings for this subscription, to define the subset of all + notifications this subscription relates to. A particular + notification is sent to the subscriber if the filter matches, or if + there is no filter. + $ref: "#/definitions/VnfIndicatorNotificationsFilter" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + type: string + format: url + _links: + description: > + Links for this resource. + type: object + required: + - self + properties: + self: + description: > + URI of this resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" + + VnfIndicatorSubscriptionRequest: + description: > + This type represents a subscription request related to VNF indicator + value change notifications. + type: object + required: + - callbackUri + properties: + filter: + description: > + Filter settings for this subscription, to define the subset of all + notifications this subscription relates to. A particular + notification is sent to the subscriber if the filter matches, or if + there is no filter. + $ref: "#/definitions/VnfIndicatorNotificationsFilter" + callbackUri: + description: > + The URI of the endpoint to send the notification to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" + authentication: + description: > + Authentication parameters to configure the use of Authorization when + sending notifications corresponding to this subscription, as defined + in clause 8.3.4 of ETSI GS NFV-SOL 013. + This attribute shall only be present if the subscriber requires + authorization of notifications. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/SubscriptionAuthentication" + + VnfIndicatorValueChangeNotification: + description: > + This type represents a VNF indicator value change notification. It shall comply with the provisions defined in table 8.5.2.5-1. + The notification shall be triggered by the VNFM when the value of an indicator has changed. + + NOTE: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - vnfIndicatorId + - value + - vnfInstanceId + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "VnfIndicatorValueChangeNotification" for this notification type. + type: string + enum: + - VnfIndicatorValueChangeNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + vnfIndicatorId: + description: > + Identifier of the VNF indicator whose value has changed. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" + name: + description: > + Human readable name of the VNF indicator. Shall be present if + defined in the VNFD. + type: string + value: + description: > + Provides the value of the VNF indicator. The value format is defined in the VNFD. See note. + type: object + vnfInstanceId: + description: > + Identifier of the VNF instance which provides the indicator value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + _links: + description: > + Links for this resource. + type: object + required: + - vnfInstance + - subscription + properties: + vnfInstance: + description: > + Link to the related "Individual VNF instance" resource. Shall be present + if the VNF instance information is accessible as a resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + subscription: + description: > + Link to the related subscription. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + + SupportedIndicatorsChangeNotification: + description: > + This type represents a notification to inform the receiver that the set of indicators supported + by a VNF instance has changed. It shall comply with the provisions defined in table 8.5.2.6-1. + + The notification shall be triggered by the VNFM when the set of supported VNF indicators has changed + as a side effect of the "Change current VNF package" operation. It may be triggered by the VNFM when + a VNF has been instantiated. + + NOTE: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - vnfInstanceId + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple times + due to multiple subscriptions, the "id" attribute of all these notifications + shall have the same value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "SupportedIndicatorsChangeNotification" for this notification type. + type: string + enum: + - VnfIndicatorValueChangeNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + vnfInstanceId: + description: > + Identifier of the VNF instance which provides the indicator value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + supportedIndicators: + description: > + Set of VNF indicators supported by the VNF instance. + type: array + items: + type: object + required: + - vnfIndicatorId + properties: + vnfIndicatorId: + description: > + Identifier of the VNF indicator whose value has changed. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" + name: + description: > + Human readable name of the VNF indicator. Shall be present if defined in the VNFD. See note. + type: string + _links: + description: > + Links for this resource. + type: object + required: + - subscription + properties: + vnfInstance: + description: > + Link to the related "Individual VNF instance" resource. Shall be present + if the VNF instance information is accessible as a resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + subscription: + description: > + Link to the related subscription. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file diff --git a/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml b/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml index 60df450f..66c2b3bb 100644 --- a/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml +++ b/src/SOL003/VNFIndicatorNotification/VNFIndicatorNotification.yaml @@ -93,8 +93,8 @@ components: application/json: schema: oneOf: - - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/VnfIndicatorValueChangeNotification - - $ref: ../../definitions/SOL002SOL003VNFIndicator_def.yaml#/definitions/SupportedIndicatorsChangeNotification + - $ref: definitions/SOL003VNFIndicatorNotification_def.yaml#/definitions/VnfIndicatorValueChangeNotification + - $ref: definitions/SOL003VNFIndicatorNotification_def.yaml#/definitions/SupportedIndicatorsChangeNotification required: true responses: diff --git a/src/SOL003/VNFIndicatorNotification/definitions/SOL003VNFIndicatorNotification_def.yaml b/src/SOL003/VNFIndicatorNotification/definitions/SOL003VNFIndicatorNotification_def.yaml new file mode 100644 index 00000000..aa004ddb --- /dev/null +++ b/src/SOL003/VNFIndicatorNotification/definitions/SOL003VNFIndicatorNotification_def.yaml @@ -0,0 +1,154 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt + +definitions: + VnfIndicatorValueChangeNotification: + description: > + This type represents a VNF indicator value change notification. It shall comply with the provisions defined in table 8.5.2.5-1. + The notification shall be triggered by the VNFM when the value of an indicator has changed. + + NOTE: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - vnfIndicatorId + - value + - vnfInstanceId + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "VnfIndicatorValueChangeNotification" for this notification type. + type: string + enum: + - VnfIndicatorValueChangeNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + vnfIndicatorId: + description: > + Identifier of the VNF indicator whose value has changed. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" + name: + description: > + Human readable name of the VNF indicator. Shall be present if + defined in the VNFD. + type: string + value: + description: > + Provides the value of the VNF indicator. The value format is defined in the VNFD. See note. + type: object + vnfInstanceId: + description: > + Identifier of the VNF instance which provides the indicator value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + _links: + description: > + Links for this resource. + type: object + required: + - vnfInstance + - subscription + properties: + vnfInstance: + description: > + Link to the related "Individual VNF instance" resource. Shall be present + if the VNF instance information is accessible as a resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + subscription: + description: > + Link to the related subscription. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + + SupportedIndicatorsChangeNotification: + description: > + This type represents a notification to inform the receiver that the set of indicators supported + by a VNF instance has changed. It shall comply with the provisions defined in table 8.5.2.6-1. + + The notification shall be triggered by the VNFM when the set of supported VNF indicators has changed + as a side effect of the "Change current VNF package" operation. It may be triggered by the VNFM when + a VNF has been instantiated. + + NOTE: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - vnfInstanceId + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple times + due to multiple subscriptions, the "id" attribute of all these notifications + shall have the same value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "SupportedIndicatorsChangeNotification" for this notification type. + type: string + enum: + - VnfIndicatorValueChangeNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + vnfInstanceId: + description: > + Identifier of the VNF instance which provides the indicator value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + supportedIndicators: + description: > + Set of VNF indicators supported by the VNF instance. + type: array + items: + type: object + required: + - vnfIndicatorId + properties: + vnfIndicatorId: + description: > + Identifier of the VNF indicator whose value has changed. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" + name: + description: > + Human readable name of the VNF indicator. Shall be present if defined in the VNFD. See note. + type: string + _links: + description: > + Links for this resource. + type: object + required: + - subscription + properties: + vnfInstance: + description: > + Link to the related "Individual VNF instance" resource. Shall be present + if the VNF instance information is accessible as a resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + subscription: + description: > + Link to the related subscription. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file diff --git a/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml b/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml index 3b038c32..2fafdf68 100644 --- a/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml +++ b/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml @@ -243,7 +243,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualGrant.Get.200: description: | @@ -327,4 +327,4 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" \ No newline at end of file + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" \ No newline at end of file diff --git a/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml b/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml index 0e888be6..892a2bac 100644 --- a/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml +++ b/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml @@ -45,12 +45,12 @@ definitions: to. Shall also be provided for VNFs that not yet exist but are planned to exist in the future, i.e. if the grant is requested for InstantiateVNF. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfLcmOpOccId: description: > The identifier of the VNF lifecycle management operation occurrence associated to the GrantRequest. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfdId: description: > Identifier of the VNFD that defines the VNF for which the LCM @@ -58,25 +58,25 @@ definitions: In case of the "Change current VNF package operation, this identifier refers to the VNFD which defines the VNF before the LCM operation to be granted. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" dstVnfdId: description: > Identifier of the "destination" VNFD which will define the VNF after executing the "Change current VNF package" LCM operation to be granted. Shall be included if the operation changes the current VNF Package and shall be absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" flavourId: description: > Identifier of the VNF deployment flavour of the VNFD that defines the VNF for which the LCM operation is to be granted. Shall be provided when instantiating the VNF or changing the deployment flavour of the VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" operation: description: > The lifecycle management operation for which granting is requested. See note 1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/GrantedLcmOperationType" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/GrantedLcmOperationType" isAutomaticInvocation: description: > Set to true if this VNF LCM operation occurrence has been triggered @@ -90,7 +90,7 @@ definitions: If operation=INSTANTIATE, the identifier of the instantiation level may be provided as an alternative way to define the resources to be added. This attribute shall only be used if operation=INSTANTIATE. See note 2. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" addResources: description: > List of resource definitions in the VNFD for resources to be added by the LCM operation @@ -148,7 +148,7 @@ definitions: description: > Additional parameters passed by the VNFM, specific to the VNF and the LCM operation. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" _links: description: > Links to resources related to this request. @@ -160,11 +160,11 @@ definitions: vnfLcmOpOcc: description: > Related lifecycle management operation occurrence. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" vnfInstance: description: > Related VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" Grant: description: > @@ -231,16 +231,16 @@ definitions: id: description: > Identifier of the grant. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfInstanceId: description: > Identifier of the related VNF instance. See note 6. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfLcmOpOccId: description: > Identifier of the related VNF lifecycle management operation occurrence. See note 6. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vimConnectionInfo: description: > Provides information regarding VIM connections that are approved to be used @@ -257,7 +257,7 @@ definitions: configured to the VNFM in another way, present otherwise. See note 1. type: object additionalProperties: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/VimConnectionInfo" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/VimConnectionInfo" zones: description: > Identifies resource zones where the resources are approved to be @@ -347,7 +347,7 @@ definitions: compared to the entries that were passed in the LCM operation which is related to this granting exchange. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ExtVirtualLinkData" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ExtVirtualLinkData" extManagedVirtualLinks: description: > Information about internal VLs that are managed by other entities than the VNFM. See notes 4, 5, 7 and 8. @@ -358,7 +358,7 @@ definitions: description: > Additional parameters passed by the NFVO, specific to the VNF and the LCM operation. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" _links: description: > Links to resources related to this resource. @@ -371,15 +371,15 @@ definitions: self: description: > URI of this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" vnfLcmOpOcc: description: > Related VNF lifecycle management operation occurrence. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" vnfInstance: description: > Related VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" ResourceDefinition: description: > @@ -403,7 +403,7 @@ definitions: description: > Identifier of this "ResourceDefinition" structure, unique at least within the scope of the "GrantRequest" structure. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" type: description: > Type of the resource definition referenced. @@ -424,12 +424,12 @@ definitions: resource. Shall only be present if a VDU is applicable to this resource, i.e. if "type" has the value "COMPUTE". - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" vnfdId: description: > Identifier of the VNFD to which resourceTemplateId and vduId refer. Shall be present if the operation to be granted changes the current VNF Package. May be absent otherwise. See note 2. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" resourceTemplateId: description: > Reference to the applicable resource template in the VNFD as follows: @@ -437,7 +437,7 @@ definitions: - if type="COMPUTE": VirtualComputeDesc - if type="LINKPORT" : VnfExtCpd - if type="STORAGE" : VirtualStorageDesc - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" secondaryResourceTemplateId: description: > Reference to a secondary resource template (VnfExtCpd) in the VNFD. @@ -445,13 +445,13 @@ definitions: one exposing a VNFC CP instance (based on a VnfExtCpd referenced by "resourceTemplateId") and another one exposing a VIP CP instance (based on a VnfExtCpd referenced by this attribute). Shall be absent otherwise. See note 1. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" resource: description: > Resource information for an existing resource. Shall be present for resources that are planned to be deleted or modified. Shall be absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" snapshotResDef: description: > Information to identify a snapshot resource. Shall only be present if the @@ -471,13 +471,13 @@ definitions: description: > Identifier of the related "ResourceDefinition" structure from the related "GrantRequest" structure. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" reservationId: description: > The reservation identifier applicable to the VNFC/VirtualLink/VirtualStorage/compute host. It shall be present for new resources when policy is GRANT_RESERVE and an applicable reservation exists; shall not be present otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVim" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim" vimConnectionId: description: > Identifier of the VIM connection to be used to manage this resource. @@ -488,7 +488,7 @@ definitions: attribute of the "VnfInstance" structure. This attribute shall only be supported when VNF-related Resource Management in direct mode is applicable. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" resourceProviderId: description: > Identifies the entity responsible for the management of the @@ -497,7 +497,7 @@ definitions: This attribute shall only be supported when VNF-related Resource Management in indirect mode is applicable. The identification scheme is outside the scope of the present document. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" zoneId: description: > Reference to the identifier of the "ZoneInfo" structure in the @@ -505,7 +505,7 @@ definitions: resource is to be placed. Shall be present for new resources if the zones concept is applicable to them (typically, Compute resources), and shall be absent for resources that have already been allocated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" resourceGroupId: description: > Identifier of the "infrastructure resource group", logical grouping @@ -519,7 +519,7 @@ definitions: for new resources. This attribute shall be absent for resources that have already been allocated. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVim" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim" ZoneInfo: description: > @@ -533,12 +533,12 @@ definitions: description: > The identifier of this ZoneInfo instance, for the purpose of referencing it from other structures in the "Grant" structure. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" zoneId: description: > The identifier of the resource zone, as managed by the resource management layer (typically, the VIM). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vimConnectionId: description: > Identifier of the connection to the VIM that manages the resource @@ -548,7 +548,7 @@ definitions: attribute of the "VnfInstance" structure. This attribute shall only be supported and present when VNF-related Resource Management in direct mode is applicable. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" resourceProviderId: description: > Identifies the entity responsible for the management the resource @@ -556,7 +556,7 @@ definitions: This attribute shall only be supported and present when VNF-related Resource Management in indirect mode is applicable. The identification scheme is outside the scope of the present document. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" ZoneGroupInfo: description: > @@ -579,7 +579,7 @@ definitions: group. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" PlacementConstraint: description: > @@ -641,7 +641,7 @@ definitions: due to capacity constraints and/or due to the actual placement of existing resources, i.e. if resource placement cannot honour the placement constraint, the request is processed in a best effort manner. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Boolean" VimConstraint: description: > @@ -700,7 +700,7 @@ definitions: An actual resource-management-level identifier (idType=RES_MGMT), or an identifier that references a "ResourceDefinition" structure in the related "GrantRequest" structure (idType=GRANT). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVim" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim" vimConnectionId: description: > Identifier of the VIM connection for managing the resource. It shall @@ -710,7 +710,7 @@ definitions: attribute of the "VnfInstance" structure. This attribute shall only be supported when VNF-related resource management in direct mode is applicable. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" resourceProviderId: description: > Identifier of the resource provider. It shall only be present when @@ -718,7 +718,7 @@ definitions: This attribute shall only be supported when VNF-related resource management in indirect mode is applicable. The identification scheme is outside the scope of the present document. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" VimComputeResourceFlavour: description: > @@ -743,7 +743,7 @@ definitions: attribute of the "VnfInstance" structure. This attribute shall only be supported and present if VNF-related resource management in direct mode is applicable. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" resourceProviderId: description: > Identifies the entity responsible for the management of the @@ -751,17 +751,17 @@ definitions: This attribute shall only be supported and present if VNF-related resource management in indirect mode is applicable. The identification scheme is outside the scope of the present document. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfdVirtualComputeDescId: description: > Identifier which references the virtual compute descriptor in the VNFD that maps to this flavour. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" vimFlavourId: description: > Identifier of the compute resource flavour in the resource management layer (i.e. VIM). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVim" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim" VimSoftwareImage: description: > @@ -782,7 +782,7 @@ definitions: attribute of the "VnfInstance" structure. This attribute shall only be supported and present if VNF-related resource management in direct mode is applicable. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" resourceProviderId: description: > Identifies the entity responsible for the management of the @@ -790,17 +790,17 @@ definitions: This attribute shall only be supported and present if VNF-related resource management in indirect mode is applicable. The identification scheme is outside the scope of the present document. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfdSoftwareImageId: description: > Identifier which references the software image descriptor in the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" vimSoftwareImageId: description: > Identifier of the software image in the resource management layer (i.e. VIM). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVim" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim" SnapshotResourceDefinition: description: > @@ -827,7 +827,7 @@ definitions: Identifier of the VNF snapshot related to the resource change for the VNF instance. Shall only be present if the operation to be granted concerns to creating a VNF snapshot from the VNF or to reverting the VNF to a VNF snapshot. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfcSnapshotId: description: > Reference to the information about a specific VNFC snapshot (refer to "VnfcSnapshotInfo") of @@ -835,21 +835,21 @@ definitions: the "vnfSnapshotId" attribute. Shall only be present if the operation to be granted concerns to reverting the VNF to a VNF snapshot, and the resource is planned to be added based on the VNFC snapshot, and the type of resource is "COMPUTE" or "STORAGE". See notes 1 and 2. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" storageSnapshotId: description: > Reference to a snapshotted storage resource associated to the VNFC snapshot. Shall only be present if the operation to be granted concerns to reverting the VNF to a VNF snapshot, and the storage resource is planned to be added based on the VNFC snapshot, and the type of resource is "STORAGE". See note 2. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" snapshotResource: description: > Resource information for an existing snapshot resource. Shall only be present if the operation to be granted concerns to reverting the VNF to a VNF snapshot and the resource is planned to be added based on an existing VNF snapshot that has been created by the VNFM. Shall be absent otherwise. See note 2. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ResourceHandle" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ResourceHandle" VimSnapshotResource: description: > @@ -869,31 +869,31 @@ definitions: obtained from the "vimConnectionInfo" attribute of the "VnfInstance" structure. This attribute shall only be supported and present if VNF-related resource management in direct mode is applicable. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" resourceProviderId: description: > Identifies the entity responsible for the management of the virtualised resource. This attribute shall only be supported and present if VNF-related resource management in indirect mode is applicable. The identification scheme is outside the scope of the present document. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfSnapshotId: description: > Identifier of the VNF snapshot (referring to the "id" attribute in the "VnfSnapshot" data structure) related to this VIM snapshot resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfcSnapshotId: description: > Identifier of the information about a specific VNFC snapshot (refer to "VnfcSnapshotInfo") of the VNF snapshot. The identifier is unique within the scope of a VNF snapshot, identified by the "vnfSnapshotId" attribute. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" storageSnapshotId: description: > Identifier of the virtual storage resource that has been snapshotted as referred in the VNFC snapshot information. Shall only be present if the snapshot resource in the VIM is a storage resource (as indicated by "type=STORAGE" in the parent resource definition). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" vimSnapshotResourceId: description: > Identifier of the snapshot resource in the resource management layer (i.e. VIM). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVim" \ No newline at end of file + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim" \ No newline at end of file diff --git a/src/SOL003/VNFPackageManagementNotification/definitions/SOL003VNFPackageManagementNotification_def.yaml b/src/SOL003/VNFPackageManagementNotification/definitions/SOL003VNFPackageManagementNotification_def.yaml index c78f7e22..a207343f 100644 --- a/src/SOL003/VNFPackageManagementNotification/definitions/SOL003VNFPackageManagementNotification_def.yaml +++ b/src/SOL003/VNFPackageManagementNotification/definitions/SOL003VNFPackageManagementNotification_def.yaml @@ -26,7 +26,7 @@ definitions: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these notifications shall have the same value. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" notificationType: description: > Discriminator for the different notification types. @@ -38,30 +38,30 @@ definitions: subscriptionId: description: > Identifier of the subscription that this notification relates to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" timeStamp: description: > Date-time of the generation of the notification. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" vnfPkgId: description: > Identifier of the VNF package. This identifier is allocated by the NFVO. Its value is the same as the value of the "id" attribute of the related "Individual VNF package" resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfdId: description: > This identifier, which is managed by the VNF provider, identifies the VNF package and the VNFD in a globally unique way. It's copied from the VNFD of the on-boarded VNF package. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfmInfo: description: > Specifies VNFMs compatible with the VNF. This information is copied from the VNFD. See table 10.5.2.2-1. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" _links: description: > Links to resources related to this notification. @@ -98,7 +98,7 @@ definitions: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these notifications shall have the same value. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" notificationType: description: > Discriminator for the different notification types. @@ -109,23 +109,23 @@ definitions: subscriptionId: description: > Identifier of the subscription that this notification relates to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" timeStamp: description: > Date-time of the generation of the notification. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" vnfPkgId: description: > Identifier of the VNF package. This identifier is allocated by the NFVO. Its value is the same as the value of the "id" attribute of the related "Individual VNF package" resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfdId: description: > Identifier of the VNFD contained in the VNF package, which also identifies the VNF package. This identifier is allocated by the VNF provider and copied from the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" changeType: description: > The type of change of the VNF package. @@ -166,15 +166,15 @@ definitions: identifier which is managed by the NFVO. This attribute shall be provided by the NFVO but is deprecated and can be removed in future versions of the present document. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" vnfPackageByVnfdId: description: > Link to the resource representing the VNF package to which the notified change applies, i.e. the "Individual VNF package resource" that represents the VNF package, identified by the "vnfdId" identifier which is assigned by the VNF vendor. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" subscription: description: > Link to the related subscription. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 7e7a4cb0..81c702a3 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -580,7 +580,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" PmJobs.Get.200: description: | @@ -786,7 +786,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualPmJob.Delete.200: description: | @@ -924,7 +924,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" Thresholds.Get.200: description: | @@ -1129,7 +1129,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualThreshold.Delete.200: description: | diff --git a/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml b/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml index 45643d96..989265f8 100644 --- a/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml +++ b/src/SOL003/VNFPerformanceManagementNotification/VNFPerformanceManagementNotification.yaml @@ -149,7 +149,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/PerformanceInformationAvailableNotification" + $ref: "definitions/SOL003VNFPerformanceManagementNotification_def.yaml#/definitions/PerformanceInformationAvailableNotification" required: true ThresholdCrossedNotification: @@ -158,7 +158,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003VNFPerformanceManagement_def.yaml#/definitions/ThresholdCrossedNotification" + $ref: "definitions/SOL003VNFPerformanceManagementNotification_def.yaml#/definitions/ThresholdCrossedNotification" required: true responses: diff --git a/src/SOL003/VNFPerformanceManagementNotification/definitions/SOL003VNFPerformanceManagementNotification_def.yaml b/src/SOL003/VNFPerformanceManagementNotification/definitions/SOL003VNFPerformanceManagementNotification_def.yaml new file mode 100644 index 00000000..22f4f694 --- /dev/null +++ b/src/SOL003/VNFPerformanceManagementNotification/definitions/SOL003VNFPerformanceManagementNotification_def.yaml @@ -0,0 +1,201 @@ +# Copyright (c) ETSI 2017. +# https://forge.etsi.org/etsi-forge-copyright-notice.txt + +definitions: + CrossingDirectionType: + type: string + enum: + - UP + - DOWN + + PerformanceInformationAvailableNotification: + description: > + This notification informs the receiver that performance information is + available. + The notification shall be triggered by the VNFM when new performance + information collected by a PM job is available. + The periodicity of triggering this notification is influenced by the + "reportingPeriod" attribute in the "PmJobCriteria" data structure. + type: object + required: + - id + - notificationType + - timeStamp + - pmJobId + - objectType + - objectInstanceId + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "PerformanceInformationAvailableNotification" for this notification + type. + type: string + enum: + - PerformanceInformationAvailableNotification + timeStamp: + description: > + Date and time of the generation of the notification. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + pmJobId: + description: > + Identifier of the PM job for which performance information is available. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + objectType: + description: > + Type of the measured object. + The applicable measured object type for a measurement + is defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + objectInstanceId: + description: > + Identifier of the measured object instance. as per clause 6.2 of ETSI GS NFV-IFA 027. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + subObjectInstanceIds: + description: > + Identifiers of the sub-object instances of the measured + object instance for which the measurements have been taken. + Shall be present if the related PM job has been set up to + measure only a subset of all sub-object instances of the + measured object instance and a sub-object is defined in clause + 6.2 of ETSI GS NFV-IFA 027 for the related measured object type. + Shall be absent otherwise. + type: array + items: + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - pmJob + - performanceReport + properties: + objectInstance: + description: > + Link to the resource representing the measured object instance to which the + notification applies. Shall be present if the measured object instance + information is accessible as a resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + pmJob: + description: > + Link to the resource that represents the PM job for which + performance information is available. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + performanceReport: + description: > + Link from which the available performance information of data + type "PerformanceReport" can be obtained. This link should point + to an "Individual performance report" resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + + ThresholdCrossedNotification: + description: > + This type represents a notification that is sent when a threshold has been crossed. + It shall comply with the provisions defined in table 6.5.2.4-1. + + NOTE: The timing of sending this notification is determined by the capability of the + producing entity to evaluate the threshold crossing condition. + + The notification shall be triggered by the VNFM when a threshold has been crossed. + + NOTE: The sub-object allows to structure the measured object, but is not to be confused + with sub-counters which allow to structure the measurement. + type: object + required: + - id + - notificationType + - timeStamp + - thresholdId + - crossingDirection + - objectType + - objectInstanceId + - performanceMetric + - performanceValue + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "ThresholdCrossedNotification" for this notification type. + type: string + enum: + - ThresholdCrossedNotification + timeStamp: + description: > + Date and time of the generation of the notification. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + thresholdId: + description: > + Identifier of the threshold which has been crossed. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + crossingDirection: + description: > + An indication of whether the threshold was crossed in upward or + downward direction. + $ref: "#/definitions/CrossingDirectionType" + objectType: + description: > + Type of the measured object. + The applicable measured object type for a measurement is defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + objectInstanceId: + description: > + Identifier that identifies a VNF instance. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + subObjectInstanceId: + description: > + Identifier of the sub-object of the measured object to which the measurement applies. + Shall be present if this is required in clause 6.2 of ETSI GS NFV-IFA 027 for the related + measured object type. + See note. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" + performanceMetric: + description: > + Performance metric associated with the threshold. + This attribute shall contain the related "Measurement Name" + value as defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: string + performanceValue: + description: > + Value of the metric that resulted in threshold crossing. + The type of this attribute shall correspond to the related + "Measurement Unit" as defined in clause 7.2 of ETSI GS NFV-IFA 027. + type: object + context: + description: > + Measurement context information related to the measured value. + The set of applicable keys is defined per measurement in the + related "Measurement Context" in clause 7.2 of ETSI GS NFV-IFA 027. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" + _links: + description: > + Links to resources related to this notification. + type: object + required: + - threshold + properties: + objectInstance: + description: > + Link to the resource representing the measured object instance to which the + notified change applies. Shall be present if the measured object instance + information is accessible as a resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" + threshold: + description: > + Link to the resource that represents the threshold that was + crossed. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file diff --git a/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml b/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml index 8aefd30c..475a0f74 100644 --- a/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml +++ b/src/SOL003/VNFSnapshotPackageManagement/VNFSnapshotPackageManagement.yaml @@ -482,7 +482,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" PackageContent.Get.416: description: | @@ -634,7 +634,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualArtifact.Get.416: description: | diff --git a/src/SOL003/VNFSnapshotPackageManagement/definitions/SOL003VNFSnapshotPackageManagement_def.yaml b/src/SOL003/VNFSnapshotPackageManagement/definitions/SOL003VNFSnapshotPackageManagement_def.yaml index 24963fe4..3b205586 100644 --- a/src/SOL003/VNFSnapshotPackageManagement/definitions/SOL003VNFSnapshotPackageManagement_def.yaml +++ b/src/SOL003/VNFSnapshotPackageManagement/definitions/SOL003VNFSnapshotPackageManagement_def.yaml @@ -21,7 +21,7 @@ definitions: description: > Identifier of the VNF snapshot packageinformation held by the NFVO. This identifier is allocated by the NFVO. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfSnapshotPkgUniqueId: description: > Identifier of the VNF snapshot package, which identifies the VNF snapshot package in @@ -29,29 +29,29 @@ definitions: Multiples instances of the same VNF snapshot package share the same vnfSnapshotPkgUniqueId. See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" name: description: > Human-readable name of the VNF snapshot package. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" checksum: description: > Checksum of the stored VNF snapshot package. Hash algorithms applicable to VNF snapshot packages are defined in ETSI GS NFV-SOL 010. See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Checksum" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Checksum" createdAt: description: > Timestamp indicating when the VNF snapshot package creation has been completed. See note. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" vnfSnapshotId: description: > Identifier of specific VNF snapshot in the VNF snapshot package. This identifier is allocated by the VNFM during the VNF snapshot creation. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfcSnapshotInfoIds: description: > Identifiers of information held by the VNFM about specific VNFC snapshots part @@ -61,12 +61,12 @@ definitions: See note. type: object items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" isFullSnapshot: description: > Value is TRUE in case of a "full" VNF snapshot package, i.e., containing all snapshotted VNFC instances; otherwise the value is FALSE. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Boolean" vnfdInfo: description: > VNFD of the snapshotted VNF instance that is contained in the stored VNF snapshot package. @@ -121,7 +121,7 @@ definitions: cancelled. If the value of the "state" attribute is "BUILDING", "UPLOADING", "PROCESSING" or "EXTRACTING" and the operation is being cancelled, this attribute shall be set to true. Otherwise, it shall be set to false. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Boolean" failureDetails: description: > Failure details associated to current error state of the VNF snapshot package state. @@ -154,11 +154,11 @@ definitions: Failure details containing error information (such as failed uploading or processing operation, affected artifact, reason for cancellation, etc.). See clause 6.3 of ETSI GS NFV-SOL 013 for the details of "ProblemDetails" structure. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" userDefinedData: description: > User defined data for the VNF snapshot package to be built/uploaded. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" _links: description: > Links to resources related to this resource. @@ -170,11 +170,11 @@ definitions: self: description: > URI of this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" packageContent: description: > Link to the "VNF snapshot package content" resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" VnfcSnapshotImageInfo: description: > @@ -209,24 +209,24 @@ definitions: "storageResourceId" attribute in the "VnfcSnapshotInfo" of the corresponding storage snapshot resource. When onboarding an existing VNF snapshot package, the NFVO shall set the value of this attribute as provided in the manifest file in the VNF snapshot package (refer to ETSI GS NFV-SOL 010). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierLocal" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" name: description: > Name of the VNFC snapshot image. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" checksum: description: > Checksum of the snapshot image file. Hash algorithms applicable to VNF snapshot package artifacts are defined in ETSI GS NFV-SOL 010. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Checksum" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Checksum" isEncrypted: description: > Reflects whether the artifact is encrypted (true) or not (false). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Boolean" vnfcInstanceId: description: > Identifier of the snapshotted VNFC instance that this snapshot image belongs to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnf" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" containerFormat: description: > Container format indicates whether the snapshot image is in a file format that @@ -283,23 +283,23 @@ definitions: createdAt: description: > Timestamp indicating when the VNFC snapshot image was created. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" minDisk: description: > The minimal disk for this VNFC snapshot image (in bytes). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/UnsignedInt" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/UnsignedInt" minRam: description: > The minimal RAM for this VNFC snapshot image (in bytes). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/UnsignedInt" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/UnsignedInt" size: description: > Size of this VNFC snapshot image (in bytes). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/UnsignedInt" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/UnsignedInt" userMetadata: description: > User-defined metadata. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" imagePath: description: > Path which identifies the image artifact and also allows to access a copy of the image artifact. @@ -318,14 +318,14 @@ definitions: responsibility of the NFVO to synthesize this path in a manner that avoids any collision of the synthesized artifact path with the paths and names of artifacts included in the snapshot package. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" imageUri: description: > URI of the image artifact as defined in the VNF snapshot package manifest. Shall be present if the image artifact is external to the snapshot package and shall be absent otherwise. EXAMPLE: https://example.com/m%40ster.vhd - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" SnapshotPkgArtifactInfo: description: > @@ -354,28 +354,28 @@ definitions: clause 12.4.5. It is the responsibility of the NFVO to synthesize this path in a manner that avoids any collision of the synthesized artifact path with the paths and names of artifacts included in the snapshot package. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" artifactUri: description: > URI of the artifact as defined in the VNF snapshot package manifest. Shall be present if the artifact is external to the snapshot package and shall be absent otherwise. EXAMPLE: https://example.com/m%40ster.sh - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" checksum: description: > Checksum of the artifact file. Hash algorithms applicable to VNF snapshot package artifacts are defined in ETSI GS NFV-SOL 010. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Checksum" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Checksum" isEncrypted: description: > Reflects whether the artifact is encrypted (true) or not (false). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Boolean" metadata: description: > The metadata of the artifact that are available in the VNF package, such as Content type, size, creation date, etc. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" VnfdInfo: description: > @@ -390,7 +390,7 @@ definitions: avnfdId: description: > VNFD identifier of the snapshotted VNF instance. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfdPath: description: > Path which allows to access a copy of the VNFD. The VNFD is implemented as @@ -401,16 +401,16 @@ definitions: of the path in the package, i.e. it shall not be prefixed by path separator characters such as "." and "/". EXAMPLE: foo/bar/m@ster - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" checksum: description: > Checksum of the VNFD archive file. Hash algorithms applicable to VNF snapshot package artifacts are defined in ETSI GS NFV-SOL 010. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Checksum" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Checksum" isEncrypted: description: > Reflects whether the VNFD archive file is encrypted (true) or not (false). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Boolean" VnfSnapshotRecord: description: > @@ -429,13 +429,13 @@ definitions: path in the package, i.e. it shall not be prefixed by path separator characters such as "." and "/". EXAMPLE: foo/bar/m@ster - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" checksum: description: > Checksum of the VNF snapshot record file. Hash algorithms applicable to VNF snapshot package artifacts are defined in ETSI GS NFV-SOL 010. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Checksum" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Checksum" isEncrypted: description: > Reflects whether the VNF snapshot record file is encrypted (true) or not (false). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Boolean" diff --git a/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml b/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml index a1b11958..3dfb64e6 100644 --- a/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml +++ b/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml @@ -348,7 +348,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" Subscriptions.Get.200: description: | diff --git a/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/definitions/SOL003VirtualisedResourcesQuotaAvailableNotification_def.yaml b/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/definitions/SOL003VirtualisedResourcesQuotaAvailableNotification_def.yaml index 19e58cf7..77fdeee2 100644 --- a/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/definitions/SOL003VirtualisedResourcesQuotaAvailableNotification_def.yaml +++ b/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/definitions/SOL003VirtualisedResourcesQuotaAvailableNotification_def.yaml @@ -21,7 +21,7 @@ definitions: Management in direct mode is applicable. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" resourceProviderIds: description: > Match the entities responsible for the management of the virtualised @@ -31,7 +31,7 @@ definitions: is outside the scope of the present document. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" resourceTypes: description: > Match particular resource types. @@ -49,7 +49,7 @@ definitions: an infrastructure Domain. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVim" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVim" VrQuotaAvailSubscription: description: > @@ -64,7 +64,7 @@ definitions: id: description: > Identifier of this "Individual subscription" resource - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" filter: description: > Input filter for selecting notifications to subscribe to. @@ -74,7 +74,7 @@ definitions: callbackUri: description: > The URI of the endpoint to send the notification to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" _links: description: > Links for this resource @@ -85,7 +85,7 @@ definitions: self: description: > URI of this resource - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" VrQuotaAvailSubscriptionRequest: description: > @@ -104,12 +104,12 @@ definitions: callbackUri: description: > The URI of the endpoint to send the notification to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" authentication: description: > Authentication parameters to configure the use of Authorization when sending notifications corresponding to this subscription, as defined in clause 8.3.4 of ETSI GS NFV-SOL 013. This attribute shall only be present if the subscriber requires authorization of notifications. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/SubscriptionAuthentication" diff --git a/src/definitions/SOL002SOL003_def.yaml b/src/definitions/SOL002SOL003_def.yaml deleted file mode 100644 index 246d12b5..00000000 --- a/src/definitions/SOL002SOL003_def.yaml +++ /dev/null @@ -1,974 +0,0 @@ -# Copyright (c) ETSI 2017. -# https://forge.etsi.org/etsi-forge-copyright-notice.txt - -definitions: - Link: - description: > - This type represents a link to a resource using an absolute URI. - type: object - required: - - href - properties: - href: - description: > - URI of another resource referenced from a resource. - Shall be an absolute URI (i.e. a UTI that contains {apiRoot}). - $ref: "#/definitions/Uri" - - NotificationLink: - description: > - This type represents a link to a resource in a notification, using an absolute or relative URI. - type: object - required: - - href - properties: - href: - description: > - URI of a resource referenced from a notification. - Should be an absolute URI (i.e. a URI that contains - {apiRoot}), however, may be a relative URI (i.e. a URI - where the {apiRoot} part is omitted) if the {apiRoot} - information is not available. - $ref: "#/definitions/Uri" - - KeyValuePairs: - description: > - This type represents a list of key-value pairs. The order of the pairs in the list is not significant. In JSON, - a set of keyvalue pairs is represented as an object. It shall comply with the provisions defined in clause 4 - of IETF RFC 8259. In the following example, a list of key-value pairs with four keys ("aString", "aNumber", - "anArray" and "anObject") is provided to illustrate that the values associated with different keys can be of - different type. - type: object - - ApiVersionInformation: - description: > - This type represents API version information. - type: object - required: - - uriPrefix - - apiVersions - properties: - uriPrefix: - description: > - Specifies the URI prefix for the API, in the following - form {apiRoot}/{apiName}/{apiMajorVersion}/. - type: string - apiVersions: - description: > - Version(s) supported for the API signaled by the - uriPrefix attribute. - type: array - items: - type: object - required: - - version - properties: - version: - description: > - Identifies a supported version. The value of the - version attribute shall be a version identifier as - specified in clause 9.1 (SOL013). - type: string - isDeprecated: - description: > - If such information is available, this attribute indicates - whether use of the version signaled by the version - attribute is deprecated (true) or not (false). - - A deprecated version is still supported by the API producer but is recommended - not to be used any longer. - When a version is no longer supported, it does not appear in the response body. - type: boolean - retirementDate: - description: > - The date and time after which the API version will no - longer be supported. - This attribute may be included if the value of the - isDeprecated attribute is set to true and shall be - absent otherwise. - $ref: "#/definitions/DateTime" - - VnfInstanceSubscriptionFilter: - description: > - This type represents subscription filter criteria to match VNF - instances. - * NOTE 1: The attributes "vnfdIds" and "vnfProductsFromProviders" are alternatives to reference to VNF instances - that are based on certain VNFDs in a filter. They should not be used both in the same filter instance, - but one alternative should be chosen. - NOTE 2: The attributes "vnfInstanceIds" and "vnfInstanceNames" are alternatives to reference to particular VNF - instances in a filter. They should not be used both in the same filter instance, but one alternative - should be chosen. - type: object - anyOf: - - oneOf: - - required: - - vnfdId - - required: - - vnfProductsFromProviders - - oneOf: - - required: - - vnfInstanceIds - - required: - - vnfInstanceNames - properties: - vnfdIds: - description: > - If present, match VNF instances that were created based on a VNFD - identified by one of the vnfdId values listed in this attribute. See note 1. - type: array - items: - $ref: "#/definitions/Identifier" - vnfProductsFromProviders: - description: > - If present, match VNF instances that belong to VNF products from - certain providers. See note 1. - type: array - items: - type: object - required: - - vnfProvider - properties: - vnfProvider: - description: > - Name of the VNF provider to match. - type: string - vnfProducts: - description: > - If present, match VNF instances that belong to VNF products - with certain product names, from one particular provider. - type: array - items: - type: object - required: - - vnfProductName - properties: - vnfProductName: - description: > - Name of the VNF product to match. - type: string - versions: - description: > - If present, match VNF instances that belong to VNF - products with certain versions and a certain product - name, from one particular provider. - type: array - items: - type: object - required: - - vnfSoftwareVersion - properties: - vnfSoftwareVersion: - description: > - Software version to match. - $ref: "#/definitions/Version" - vnfdVersions: - description: > - If present, match VNF instances that belong to VNF - products with certain VNFD versions, a certain - software version and a certain product name, from - one particular provider. - type: array - items: - $ref: "#/definitions/Version" - vnfInstanceIds: - description: > - If present, match VNF instances with an instance identifier listed - in this attribute. See note 2. - type: array - items: - $ref: "#/definitions/Identifier" - vnfInstanceNames: - description: > - If present, match VNF instances with a VNF Instance Name listed in - this attribute. See note 2. - type: array - items: - type: string - - VimConnectionInfo: - description: > - This type represents parameters to connect to a VIM for managing the - resources of a VNF instance. - * NOTE 1: If applicable, this attribute also provides information about the resourceGroupIds - that are accessible using a particular set of credentials. See definition of - "resourceGroupId" in clause 9.5.3.3. - * NOTE 2: Once the connectivity between VNFM and VIM is provided through a secure connection over - HTTP Secure (HTTP over SSL/TLS), and the connection might also be established through a VPN - (for example TLS-based VPN tunnelling) for site-to-site connection, the "accessInfo" JSON data - structure, and the sensitive data related information ("username"/"password" as required properties - for authentication purpose), will be transmitted as plain text through a TLS tunnel without additional - encoding/encryption before transmitting it, making the sensitive data visible to the endpoint. - The base64 encoded certificates are only used by the VNFM to verify the authenticity of the - interface endpoint of the VIM. - type: object - required: - - vimType - properties: - vimId: - description: > - The identifier of the VIM instance. This identifier is managed by - the NFVO. - Shall be present to address additional information about the VIM if - such information has been configured into the VNFM by means outside - the scope of the present document, and should be absent otherwise. - $ref: "#/definitions/Identifier" - vimType: - description: > - Discriminator for the different types of the VIM information. The - value of this attribute determines the structure of the - "interfaceInfo" and "accessInfo" attributes, based on the type of the - VIM. The set of permitted values is expected to change over time as - new types or versions of VIMs become available. - The ETSI NFV registry of VIM-related information provides access to - information about VimConnectionInfo definitions for various VIM - types. The structure of the registry is defined in Annex C of SOL003. - type: string - interfaceInfo: - description: > - Information about the interface or interfaces to the VIM, if - applicable, such as the URI of an interface endpoint to - communicate with the VIM. The applicable keys are dependent on the - content of vimType. - Alternatively, such information may have been configured into the - VNFM and bound to the vimId. - $ref: "#/definitions/KeyValuePairs" - accessInfo: - description: > - Authentication credentials for accessing the VIM, and other - access-related information such as tenants or infrastructure - resource groups (see note 1). The applicable keys are dependent on the - content of vimType. - If the VimConnectionInfo structure is part of an HTTP response - message content, sensitive attributes that are children of this attributes - (such as passwords) shall not be included. - If the VimConnectionInfo structure is part of an HTTP request message content, - sensitive attributes that are children of this attribute (such - as passwords) shall be present if they have not been provisioned out - of band. - - See note 2. - $ref: "#/definitions/KeyValuePairs" - extra: - description: > - VIM type specific additional information. The applicable structure, - and whether or not this attribute is available, is dependent on the - content of vimType. - $ref: "#/definitions/KeyValuePairs" - - ResourceHandle: - required: - - resourceId - type: object - description: > - This type represents the information that allows addressing a virtualised - resource that is used by a VNF instance. Information about the resource - is available from the VIM. - properties: - vimConnectionId: - description: > - Identifier of the VIM connection to manage the resource. This - attribute shall only be supported and present if VNF-related resource - management in direct mode is applicable. The applicable - "VimConnectionInfo" structure, which is referenced by - vimConnectionId, can be obtained from the "vimConnectionInfo" - attribute of the "VnfInstance" structure. - $ref: "#/definitions/Identifier" - resourceProviderId: - description: > - Identifier of the entity responsible for the management of the - resource. This attribute shall only be supported and present when - VNF-related resource management in indirect mode is applicable. The - identification scheme is outside the scope of the present document. - $ref: "#/definitions/Identifier" - resourceId: - description: > - Identifier of the resource in the scope of the VIM or the resource - provider. - $ref: "#/definitions/IdentifierInVim" - vimLevelResourceType: - description: > - The value set of the "vimLevelResourceType" attribute is within the scope - of the VIM or the resource provider and can be used as information that - complements the ResourceHandle. This value set is different from the value - set of the "type" attribute in the ResourceDefinition (refer to clause 9.5.3.2 in SOL003). - type: string - - VnfExtCpData: - description: > - This type represents configuration information for external CPs created. - * NOTE 1: In case this identifier refers to a CPD with trunking enabled, the external CP instances created - from this CPD will represent ports in a trunk. - * NOTE 2: Within one VNF instance, all VNFC instances created from a particular VDU have the same external - connectivity. Thus, given a particular value of the "cpdId" attribute, there shall be one - "cpConfig" entry for each VNFC instance that has been or can be created from a VDU which includes - a CPD identified by the "cpdId" attribute. If the cpConfig represents a subport in a trunk, - all "cpConfig" entries in this list shall have the same segmentationId, which means they are - connected to the same set of external VLs via the trunk. - * NOTE 3: The map entry value shall be set to "null" in order to delete a "VnfExtCpConfig" entry identified - by a particular key value from the map, i.e. for the disconnection of an existing external - CP instance addressed by cpInstanceId in the deleted map entry from a particular external - virtual link, and deletion of that instance in case it represents a subport. Deleting the - last key from the map removes the affected instance of the "VnfExtCpData" structure from - its parent data structure. - * NOTE 4: If, as defined by the input parameters of a "ChangeVnfFlavour", "ChangeExtVnfConnectivity" or - "ChangeCurrentVnfPkg" operation or as part of the Grant response for any of these operations, a - cpConfig map entry identified by a particular map key value is moved into another "ExtVirtualLinkData" - or "VnfExtCpData" structure, this particular cpConfig map entry may be used by an external CP instance - different than the one that has used it before the operation, or by no external CP instance at all. - Renaming a CPD identifier during the "changeCurrentVnfPkg" operation does not count as moving the - related "cpConfig" map entries to a new "extCpData" structure. - type: object - required: - - cpdId - properties: - cpdId: - description: > - The identifier of the CPD in the VNFD. See note 1. - $ref: "#/definitions/IdentifierInVnfd" - cpConfig: - description: > - Map of instance data that need to be configured on the CP instances - created from the respective CPD. - The key of the map which identifies the individual VnfExtCpConfig entries is of type "IdentifierInVnf" - and is managed by the NFVO. - The entries shall be applied by the VNFM according to the rules of JSON Merge Patch (see IETF RFC 7396). - See notes 2, 3 and 4. - type: object - additionalProperties: - $ref: "#/definitions/VnfExtCpConfig" - - VnfExtCpConfig: - description: > - This type represents an externally provided link port or network address - information per instance of an external connection point. In case a link - port is provided, the VNFM shall use that link port when connecting the - external CP to the external VL. In a link port is not provided, the VNFM - shall create a link port on the external VL, and use that link port to - connect the external CP to the external VL. - * NOTE: The following conditions apply to the attributes "linkPortId" and "cpProtocolData": - 1) Void. - 2) At least one of the "linkPortId" and "cpProtocolData" attributes shall be present for an external - CP instance representing a subport that is to be created, or an external CP instance that is to be - created by creating the corresponding VNFC or VNF instance during the current or a subsequent LCM - operation, or for an existing external CP instance that is to be re-configured or added to a - particular external virtual link. - 3) If the "linkPortId" attribute is absent, the VNFM shall create a link port. - 4) If the "cpProtocolData" attribute is absent, the "linkPortId" attribute shall be provided referencing - a pre created link port, and the VNFM can use means outside the scope of the present document to obtain - the pre-configured address information for the connection point from the resource representing - the link port. - 5) If both "cpProtocolData" and "linkportId" are provided, the NFVO shall ensure that the - cpProtocolData can be used with the pre-created link port referenced by "linkPortId". - anyOf: - - required: - - linkPortId - - required: - - cpProtocolData - type: object - properties: - parentCpConfigId: - description: > - Value of the key that identifies the "VnfExtCpConfig" map entry which corresponds to the parent port of the - trunk. Reference to the "VnfExtCpConfig" entry that corresponds to the parent port of the trunk. Only present - in "VnfExtCpConfig" structures that provide configuration information for a CP which represents a sub-port in - a trunk, and if parent ports are supported. - $ref: "#/definitions/IdentifierInVnf" - linkPortId: - description: > - Identifier of a pre-configured link port to which the external CP - will be associated. See note - $ref: "#/definitions/Identifier" - - createExtLinkPort: - description: > - Indicates to the VNFM the need to create a dedicated link port for the external CP. - If set to True, the VNFM shall create a link port. - If set to False, the VNFM shall not create a link port. - This attribute is only applicable for external CP instances without a floating IP address that expose a VIP CP - instance for which a dedicated IP address is allocated. It shall be present in that case and shall be absent otherwise. - type: boolean - - cpProtocolData: - description: > - Parameters for configuring the network protocols on the link port - that connects the CP to a VL. See note. - type: array - items: - $ref: "#/definitions/CpProtocolData" - - CpProtocolData: - description: > - This type represents network protocol data. - * NOTE: This attribute allows to signal the addition of further types of layer and protocol - in future versions of the present document in a backwards-compatible way. In the current - version of the present document, only IP over Ethernet is supported. - type: object - required: - - layerProtocol - properties: - layerProtocol: - description: > - Identifier of layer(s) and protocol(s). See note. - type: string - enum: - - IP_OVER_ETHERNET - ipOverEthernet: - description: > - Network address data for IP over Ethernet to assign to the extCP - instance. Shall be present if layerProtocol is equal to - "IP_OVER_ETHERNET", and shall be absent otherwise. - $ref: "#/definitions/IpOverEthernetAddressData" - - IpOverEthernetAddressData: - description: > - This type represents network address data for IP over Ethernet. - * NOTE 1: At least one of "macAddress" or "ipAddresses" shall be present. - * NOTE 2: Exactly one of "fixedAddresses", "numDynamicAddresses" or "ipAddressRange" shall be present. - * NOTE 3: If the CP instance represents a subport in a trunk, segmentationId shall be present. - Otherwise it shall not be present. - * NOTE 4: Depending on the NFVI networking infrastructure, the segmentationId may indicate the actual - network segment value (e.g. vlan Id, Vxlan segmentation id, etc.) used in the transport header - of the packets or it may be an identifier used between the application and the NFVI networking - infrastructure to identify the network sub-interface of the trunk port in question. In the latter - case the NFVI infrastructure will map this local segmentationId to whatever segmentationId is - actually used by the NFVI’s transport technology. - type: object - anyOf: - - required: - - macAddress - - required: - - ipAddresses - oneOf: - - required: - - fixedAddresses - - required: - - numDynamicAddresses - - required: - - ipAddressRange - properties: - macAddress: - description: > - MAC address. If this attribute is not present, it shall be chosen by - the VIM. See note 1. - $ref: "#/definitions/MacAddress" - segmentationType: - description: > - Specifies the encapsulation type for the traffics coming in and out of the trunk subport. - Permitted values: - - VLAN: the subport uses VLAN as encapsulation type. - - INHERIT: the subport gets its segmentation type from the network it’s connected to. - This attribute may be present for CP instances that represent subports in a trunk and shall be - absent otherwise. If this attribute is not present for a subport CP instance, default value VLAN shall be used. - type: string - enum: - - VLAN - - INHERIT - - segmentationId: - description: > - Identification of the network segment to which the CP instance connects to. See note 3 and note 4. - type: string - ipAddresses: - description: > - List of IP addresses to assign to the CP instance. Each entry - represents IP address data for fixed or dynamic IP address - assignment per subnet. - If this attribute is not present, no IP address shall be assigned. See note 1. - type: array - items: - type: object - required: - - type - properties: - type: - description: > - The type of the IP addresses. - Permitted values: IPV4, IPV6. - type: string - enum: - - IPV4 - - IPV6 - fixedAddresses: - description: > - Fixed addresses to assign (from the subnet defined by - "subnetId" if provided). See note 2. - type: array - items: - $ref: "#/definitions/IpAddress" - numDynamicAddresses: - description: > - Number of dynamic addresses to assign (from the subnet defined - by "subnetId" if provided). See note 2. - type: integer - addressRange: - description: > - An IP address range to be used, e.g. in case of egress - connections. - In case this attribute is present, IP addresses from the range - will be used. See note 2. - type: object - required: - - minAddress - - maxAddress - properties: - minAddress: - description: > - Lowest IP address belonging to the range. - $ref: "#/definitions/IpAddress" - maxAddress: - description: > - Highest IP address belonging to the range. - $ref: "#/definitions/IpAddress" - subnetId: - description: > - Subnet defined by the identifier of the subnet resource in the - VIM. - In case this attribute is present, IP addresses from that - subnet will be assigned; otherwise, IP addresses not bound to - a subnet will be assigned. - $ref: "#/definitions/IdentifierInVim" - - ExtVirtualLinkData: - description: > - This type represents an external VL. - * NOTE: A link port is not needed for an external CP instance that exposes a VIP CP in the following cases: - 1 For a VIP CP directly exposed as extCP: - 1.1 No dedicated IP address is allocated as VIP address, as indicated in the VNFD. - 1.2 A dedicated IP addresss is allocated as VIP address, but the NFVO indicates that no port - is needed (createExtLinkPort in VnfExtCpconfig set to false). - 2 For a VIP CP exposed as extCP via a floating IP address: - 2.1 No dedicated IP address is allocated as VIP address, as indicated in the VNFD, and the VNFC - CP associated to the VIP CP is also exposed via a floating IP addresss. - type: object - required: - - id - - resourceId - - extCps - properties: - id: - description: > - The identifier of the external VL instance. The identifier is - assigned by the NFV-MANO entity that manages this VL instance. - $ref: "#/definitions/Identifier" - vimConnectionId: - description: > - Identifier of the VIM connection to manage this resource. This - attribute shall only be supported and present if VNF-related - resource management in direct mode is applicable. - $ref: "#/definitions/Identifier" - resourceProviderId: - description: > - Identifies the entity responsible for the management of this - resource. This attribute shall only be supported and present - if VNF-related resource management in indirect mode is applicable. - The identification scheme is outside the scope of the present - document. - $ref: "#/definitions/Identifier" - resourceId: - description: > - The identifier of the resource in the scope of the VIM or the - resource provider. - $ref: "#/definitions/IdentifierInVim" - extCps: - description: > - External CPs of the VNF to be connected to this external VL. Entries in the list of external - CP data that are unchanged need not be supplied if the ExtVirtualLinkData structure is part - of a request or response that modifies the external connectivity. - type: array - items: - $ref: "#/definitions/VnfExtCpData" - extLinkPorts: - description: > - Externally provided link ports to be used to connect external - connection points to this external VL. If this attribute is not - present, the VNFM shall create the link ports on the external VL - unless the extCp exposes a VIP CP and a link port is not needed - for it based on the conditions defined below. See note. - type: array - items: - $ref: "#/definitions/ExtLinkPortData" - - Identifier: - description: > - An identifier with the intention of being globally unique. - type: string - - DateTime: - description: > - Date-time stamp. - Representation: String formatted according to IETF RFC 3339. - type: string - format: date-time - - Uri: - description: > - String formatted according to IETF RFC 3986. - type: string - - Boolean: - description: > - The Boolean is a data type having two values (true and false). - type: boolean - - MacAddress: - description: > - A MAC address. Representation: string that consists of groups of two hexadecimal digits, - separated by hyphens or colons. - type: string - format: MAC - - IpAddress: - description: > - An IPV4 or IPV6 address. Representation: In case of an IPV4 address, string that consists of four decimal - integers separated by dots, each integer ranging from 0 to 255. In case of an IPV6 address, string that - consists of groups of zero to four hexadecimal digits, separated by colons. - type: string - format: IP - - Version: - description: > - A version. - type: string - - String: - description: > - A string defined in IETF RFC 8259. - type: string - - Number: - description: > - A number defined in IETF RFC 8259. - type: number - - UnsignedInt: - description: > - Unsigned integer number - type: integer - minimum: 0 - - IdentifierInVnfd: - description: > - An identifier that is unique within a VNF descriptor. - type: string - - IdentifierInVim: - description: > - An identifier maintained by the VIM or other resource provider. It is - expected to be unique within the VIM instance. - type: string - - IdentifierInVnf: - description: > - An identifier that is unique for the respective type within a VNF - instance, but may not be globally unique. - type: string - - IdentifierLocal: - description: > - An identifier that is unique within a limited local scope other than above listed identifiers, - such as within a complex data structure or within a request-response pair. - Representation: string of variable length. - type: string - - Checksum: #no definition found - description: > - Cheksum description - type: string - -######################################################################################################################## -# TO CHECK IF INCLUDE THESE DATA TYPES IN ANOTHER DEF FILES - - VnfLinkPortData: - description: > - This type represents an externally provided link port to be used to connect a VNFC connection point - to an exernally managed VL. - type: object - required: - - vnfLinkPortId - - resourceHandle - properties: - vnfLinkPortId: - description: > - Identifier of this link port as provided by the entity that has created the link port. - $ref: "#/definitions/Identifier" - resourceHandle: - description: > - Resource handle of the virtualised resource that realizes the link port. - $ref: "#/definitions/ResourceHandle" - - ExtLinkPortData: - description: > - This type represents an externally provided link port to be used to - connect an external connection point to an external VL. - * NOTE: The value of "trunkResourceId" is scoped by the value of "vimConnectionId" in the "resourceHandle" attribute. - type: object - required: - - id - - resourceHandle - properties: - id: - description: > - Identifier of this link port as provided by the entity that has - created the link port. - $ref: "#/definitions/Identifier" - resourceHandle: - description: > - Reference to the virtualised resource realizing this link port. - $ref: "#/definitions/ResourceHandle" - - trunkResourceId: - description: > - Identifier of the trunk resource in the VIM. - Shall be present if the present link port corresponds to the parent - port that the trunk resource is associated with. See note. - $ref: "#/definitions/IdentifierInVim" - - GrantedLcmOperationType: - description: > - The enumeration GrantedLcmOperationType defines the permitted values - to represent VNF lifecycle operation types in grant requests. - Value | Description - ------|------------ - INSTANTIATE | Represents the "Instantiate VNF" LCM operation. - SCALE | Represents the "Scale VNF" LCM operation. - SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM operation. - CHANGE_FLAVOUR | Represents the "Change VNF Flavour" LCM operation. - TERMINATE | Represents the "Terminate VNF" LCM operation. - HEAL | Represents the "Heal VNF" LCM operation. - OPERATE | Represents the "Operate VNF" LCM operation. - CHANGE_EXT_CONN | Represents the "Change external VNF connectivity" LCM operation. - CHANGE_VNFPKG | Represents the "Change current VNF package" LCM operation. - CREATE_SNAPSHOT | Represents the "Create VNF snapshot" LCM operation. - REVERT_TO_SNAPSHOT | Represents the "Revert to VNF snapshot" LCM operation. - type: string - enum: - - INSTANTIATE - - SCALE - - SCALE_TO_LEVEL - - CHANGE_FLAVOUR - - TERMINATE - - HEAL - - OPERATE - - CHANGE_EXT_CONN - - CHANGE_VNFPKG - - CREATE_SNAPSHOT - - REVERT_TO_SNAPSHOT - - LcmOperationType: - description: > - The enumeration LcmOpType defines the permitted values to represent - VNF lifecycle operation types in VNF lifecycle management operation - occurrence resources and VNF lifecycle management operation occurrence - notifications. - It shall comply with the provisions defined in table 5.5.4.5-1. - - Value | Description - ------|------------ - INSTANTIATE | Represents the "Instantiate VNF" LCM operation. - SCALE | Represents the "Scale VNF" LCM operation. - SCALE_TO_LEVEL | Represents the "Scale VNF to Level" LCM operation. - CHANGE_FLAVOUR | Represents the "Change VNF Flavour" LCM operation. - TERMINATE | Represents the "Terminate VNF" LCM operation. - HEAL | Represents the "Heal VNF" LCM operation. - OPERATE | Represents the "Operate VNF" LCM operation. - CHANGE_EXT_CONN | Represents the "Change external VNF connectivity" LCM operation. - MODIFY_INFO | Represents the "Modify VNF Information" LCM operation. - CREATE_SNAPSHOT | Represents the "Create VNF Snapshot" LCM operation. - REVERT_TO_SNAPSHOT | Represents the “Revert-To VNF Snapshot" LCM operation. - CHANGE_VNFPKG | Represents the "Change current VNF package" LCM operation. - type: string - enum: - - INSTANTIATE - - SCALE - - SCALE_TO_LEVEL - - CHANGE_FLAVOUR - - TERMINATE - - HEAL - - OPERATE - - CHANGE_EXT_CONN - - MODIFY_INFO - - CREATE_SNAPSHOT - - REVERT_TO_SNAPSHOT - - CHANGE_VNFPKG - - ProblemDetails: - #SOL003 location: 4.3.5.3 - description: > - The definition of the general "ProblemDetails" data structure from - IETF RFC 7807 is reproduced inthis structure. Compared to the - general framework defined in IETF RFC 7807, the "status" and - "detail" attributes are mandated to be included by the present document, - to ensure that the response contains additional textual information about - an error. IETF RFC 7807 foresees extensibility of the - "ProblemDetails" type. It is possible that particular APIs in the present - document, or particular implementations, define extensions to define - additional attributes that provide more information about the error. - The description column only provides some explanation of the meaning to - Facilitate understanding of the design. For a full description, see - IETF RFC 7807. - type: object - required: - - status - - detail - properties: - type: - description: > - A URI reference according to IETF RFC 3986 that identifies the - problem type. It is encouraged that the URI provides human-readable - documentation for the problem (e.g. using HTML) when dereferenced. - When this member is not present, its value is assumed to be - "about:blank". - type: string - format: URI - title: - description: > - A short, human-readable summary of the problem type. It should not - change from occurrence to occurrence of the problem, except for - purposes of localization. If type is given and other than - "about:blank", this attribute shall also be provided. - A short, human-readable summary of the problem - type. It SHOULD NOT change from occurrence to occurrence of the - problem, except for purposes of localization (e.g., using - proactive content negotiation; see [RFC7231], Section 3.4). - type: string - status: - description: > - The HTTP status code for this occurrence of the problem. - The HTTP status code ([RFC7231], Section 6) generated by the origin - server for this occurrence of the problem. - type: integer - detail: - description: > - A human-readable explanation specific to this occurrence of the - problem. - type: string - instance: - description: > - A URI reference that identifies the specific occurrence of the - problem. It may yield further information if dereferenced. - type: string - format: URI - #TODO: How to express "any additional attributes"? - - SubscriptionAuthentication: - description: > - * NOTE: The clientId and clientPassword passed in a subscription shall not be the same as the clientId and - clientPassword that are used to obtain authorization for API requests. Client credentials may differ between - subscriptions. The value of clientPassword should be generated by a random process - type: object - required: - - authType - properties: - authType: - description: > - Defines the types of Authentication / Authorization which the API - consumer is willing to accept when receiving a notification. - Permitted values: - * BASIC: In every HTTP request to the notification endpoint, use - HTTP Basic authentication with the client credentials. - * OAUTH2_CLIENT_CREDENTIALS: In every HTTP request to the - notification endpoint, use an OAuth 2.0 Bearer token, obtained - using the client credentials grant type. - * TLS_CERT: Every HTTP request to the notification endpoint is sent - over a mutually authenticated TLS session, i.e. not only the - server is authenticated, but also the client is authenticated - during the TLS tunnel setup. - type: array - items: - type: string - enum: - - BASIC - - OAUTH2_CLIENT_CREDENTIALS - - TLS_CERT - paramsBasic: - description: > - Parameters for authentication/authorization using BASIC. - Shall be present if authType is "BASIC" and the contained - information has not been provisioned out of band. - Shall be absent otherwise. - type: object - properties: - userName: - description: > - Username to be used in HTTP Basic authentication. Shall be - present if it has not been provisioned out of band. - type: string - password: - description: > - Password to be used in HTTP Basic authentication. Shall be - present if it has not been provisioned out of band. - type: string - paramsOauth2ClientCredentials: - description: > - Parameters for authentication/authorization using - OAUTH2_CLIENT_CREDENTIALS. - Shall be present if authType is "OAUTH2_CLIENT_CREDENTIALS" and the - contained information has not been provisioned out of band. - Shall be absent otherwise. - type: object - properties: - clientId: - description: > - Client identifier to be used in the access token request of the - OAuth 2.0 client credentials grant type. - Shall be present if it has not been provisioned out of band. See note. - type: string - clientPassword: - description: > - Client password to be used in the access token request of the - OAuth 2.0 client credentials grant type. - Shall be present if it has not been provisioned out of band. See note. - type: string - tokenEndpoint: - description: > - The token endpoint from which the access token can be obtained. - Shall be present if it has not been provisioned out of band. - $ref: "#/definitions/Uri" - LcmCoordResultType: - description: > - The enumeration LcmCoordResultType defines the permitted values - to represent the result of executing an LCM coordination action. - The coordination result also implies the action to be performed by - the VNFM as the follow-up to this coordination. - Value | Description - ------|------------ - CONTINUE | The related LCM operation shall be continued, staying in the state "PROCESSING". - ABORT | The related LCM operation shall be aborted by transitioning into the state "FAILED_TEMP". - CANCELLED | The coordination action has been cancelled upon request of the API consumer, i.e. the VNFM. - The related LCM operation shall be aborted by transitioning into the state "FAILED_TEMP". - type: string - enum: - - CONTINUE - - ABORT - - CANCELLED - - LcmOperationForCoordType: - description: > - The enumeration LcmOperationForCoordType defines the permitted values to - represent VNF lifecycle operation types in VNF LCM operation coordination actions. - * INSTANTIATE: Represents the "Instantiate VNF" LCM operation. - * SCALE: Represents the "Scale VNF" LCM operation. - * SCALE_TO_LEVEL: Represents the "Scale VNF to Level" LCM operation. - * CHANGE_FLAVOUR: Represents the "Change VNF Flavour" LCM operation. - * TERMINATE: Represents the "Terminate VNF" LCM operation. - * HEAL: Represents the "Heal VNF" LCM operation. - * OPERATE: Represents the "Operate VNF" LCM operation. - * CHANGE_EXT_CONN: Represents the "Change external VNF connectivity" LCM operation. - * MODIFY_INFO: Represents the "Modify VNF Information" LCM operation. - * CREATE_SNAPSHOT: Represents the "Create VNF Snapshot" LCM operation. - * REVERT_TO_SNAPSHOT: Represents the "Revert To VNF Snapshot" LCM operation. - * CHANGE_VNFPKG: Represents the "Change current VNF package" LCM operation. - type: string - enum: - - INSTANTIATE - - SCALE - - SCALE_TO_LEVEL - - CHANGE_FLAVOUR - - TERMINATE - - HEAL - - OPERATE - - CHANGE_EXT_CONN - - MODIFY_INFO - - CREATE_SNAPSHOT - - REVERT_TO_SNAPSHOT - - CHANGE_VNFPKG \ No newline at end of file diff --git a/src/endpoints/SOL002SOL003_endpoints.yaml b/src/endpoints/SOL002SOL003_endpoints.yaml index cfdfd0ce..4e4e1a11 100644 --- a/src/endpoints/SOL002SOL003_endpoints.yaml +++ b/src/endpoints/SOL002SOL003_endpoints.yaml @@ -89,4 +89,4 @@ components: content: application/json: schema: - $ref: '../definitions/SOL002SOL003_def.yaml#/definitions/ApiVersionInformation' \ No newline at end of file + $ref: '../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ApiVersionInformation' \ No newline at end of file diff --git a/src/responses/SOL002SOL003_resp.yaml b/src/responses/SOL002SOL003_resp.yaml index d1e0e089..78d92fe9 100644 --- a/src/responses/SOL002SOL003_resp.yaml +++ b/src/responses/SOL002SOL003_resp.yaml @@ -40,7 +40,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 303: description: > @@ -123,7 +123,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 401: description: > @@ -159,7 +159,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 403: description: > @@ -195,7 +195,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 404: description: > @@ -236,7 +236,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 405: description: > @@ -270,7 +270,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 406: description: > @@ -305,7 +305,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 409: description: > @@ -336,7 +336,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 412: description: > @@ -372,7 +372,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 413: description: > @@ -407,7 +407,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 414: description: > @@ -442,7 +442,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 416: description: > @@ -473,7 +473,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 422: description: > @@ -511,7 +511,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 429: description: > @@ -551,7 +551,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 500: description: > @@ -587,7 +587,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 503: description: > @@ -623,7 +623,7 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" 504: description: > @@ -658,4 +658,4 @@ components: content: application/json: schema: - $ref: "../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" \ No newline at end of file + $ref: "../SOL002/General_Definitions/SOL002_def.yaml#/definitions/ProblemDetails" \ No newline at end of file -- GitLab From 6313e98260a57d76399464a0073f142c13f71a21 Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Mon, 31 Oct 2022 16:59:04 +0500 Subject: [PATCH 21/27] fix data model references --- .../SOL003VNFLifecycleManagement_def.yaml | 2 +- .../VNFPackageManagement.yaml | 22 ++--- .../SOL003VNFPackageManagement_def.yaml | 84 +++++++++---------- 3 files changed, 54 insertions(+), 54 deletions(-) diff --git a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml index b2a4cc54..0c63aafd 100644 --- a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml +++ b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml @@ -754,7 +754,7 @@ definitions: vnfdVersion: description: > Identifies the version of the VNFD. The value is copied from the VNFD. - $ref: "../../..//definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Version" vnfConfigurableProperties: description: > Additional VNF-specific attributes that provide the current values of the configurable diff --git a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml index 08672ede..c26c2586 100644 --- a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml +++ b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml @@ -1139,7 +1139,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" VnfdInIndividualOnboardedVnfPackage.Get.200: description: | @@ -1213,7 +1213,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" ManifestInIndividualVnfPackage.Get.200: description: | @@ -1331,7 +1331,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" ManifestInIndividualOnboardedVnfPackage.Get.200: description: | @@ -1449,7 +1449,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualVnfPackageContent.Get.200: description: | @@ -1557,7 +1557,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualVnfPackageContent.Get.416: description: | @@ -1653,7 +1653,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualOnboardedVnfPackageContent.Get.416: description: | @@ -1774,7 +1774,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualVnfPackageArtifact.Get.416: description: | @@ -1840,7 +1840,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualOnboardedVnfPackageArtifact.Get.416: description: | @@ -1906,7 +1906,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualVnfPackageArtifacts.Get.416: description: | @@ -1975,7 +1975,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" IndividualOnboardedVnfPackageArtifacts.Get.416: description: | @@ -2464,7 +2464,7 @@ components: content: application/json: schema: - $ref: "../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" Subscriptions.Get.200: description: | diff --git a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml index bf14caf9..8e94cc63 100644 --- a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml +++ b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml @@ -22,7 +22,7 @@ definitions: description: > Identifier of the on-boarded VNF package. This identifier is allocated by the NFVO. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfdId: description: > This identifier, which is managed by the VNF provider, identifies @@ -30,19 +30,19 @@ definitions: It's copied from the VNFD of the on-boarded VNF package. It shall be present after the VNF package content has been on-boarded and absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfProvider: description: > Provider of the VNF package and the VNFD. This information is copied from the VNFD. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" vnfProductName: description: > Name to identify the VNF product. Invariant for the VNF product lifetime. This information is copied from the VNFD. It shall be present after the VNF package content has been on-boarded and absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" vnfSoftwareVersion: description: > Software version of the VNF. This is changed when there is any @@ -50,13 +50,13 @@ definitions: This information is copied from the VNFD. It shall be present after the VNF package content has been on-boarded and absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Version" vnfdVersion: description: > The version of the VNFD. This information is copied from the VNFD. It shall be present after the VNF package content has been on-boarded and absent otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Version" compatibleSpecificationVersions: description: > Indicates which versions of the ETSI GS NFV-SOL 004 specification the @@ -64,14 +64,14 @@ definitions: Each entry shall be formatted as defined in clause 4.3.2 of ETSI GS NFV-SOL 004. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Version" checksum: description: > Checksum of the on-boarded VNF package. It shall be present after the VNF package content has been on-boarded and absent otherwise. Permitted hash algorithms are defined in ETSI GS NFV-SOL 004. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Checksum" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Checksum" packageSecurityOption: description: > Signals the security option used by the package as defined in clause 5.1 of ETSI GS NFV-SOL 004. @@ -84,7 +84,7 @@ definitions: signingCertificate: description: > The singleton signing certificate if it is included as a file in the VNF package. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" softwareImages: description: > Information about VNF package artifacts that are software images. @@ -128,11 +128,11 @@ definitions: It shall be present after the VNF package content has been on-boarded and absent otherwise. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" userDefinedData: description: > User defined data for the VNF package. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" onboardingFailureDetails: description: > Failure details of current onboarding procedure. See clause 6.3 of ETSI GS NFV-SOL 013 @@ -140,7 +140,7 @@ definitions: If "onboardingState" is "ERROR", this attribute shall be present and contain error information (such as failed onboarding or processing operation, affected artifact etc.), unless it has been requested to be excluded via an attribute selector. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/ProblemDetails" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" _links: description: > Links to resources related to this resource. @@ -152,15 +152,15 @@ definitions: self: description: > URI of this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" vnfd: description: > Link to the "VNFD in an individual VNf package" resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" packageContent: description: > Link to the "VNF package content" resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" PkgmSubscriptionRequest: description: > @@ -180,7 +180,7 @@ definitions: callbackUri: description: > The URI of the endpoint to send the notification to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" authentication: description: > Authentication parameters to configure the use of Authorization when @@ -188,7 +188,7 @@ definitions: in clause 8.3.4 of ETSI GS NFV-SOL 013. This attribute shall only be present if the subscriber requires authorization of notifications. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/SubscriptionAuthentication" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/SubscriptionAuthentication" PkgmSubscription: description: > @@ -203,7 +203,7 @@ definitions: id: description: > Identifier of this "Individual subscription" resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" filter: description: > Filter settings for this subscription, to define the subset of all @@ -214,7 +214,7 @@ definitions: callbackUri: description: > The URI of the endpoint to send the notification to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" _links: description: > Links to resources related to this resource. @@ -225,7 +225,7 @@ definitions: self: description: > URI of this resource. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Link" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" VnfPackageSoftwareImageInfo: description: > @@ -254,28 +254,28 @@ definitions: id: description: > Identifier of the software image. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/IdentifierInVnfd" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnfd" name: description: > Name of the software image. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" provider: description: > Provider of the software image. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" version: description: > Version of the software image. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Version" checksum: description: > Checksum of the software image file. Permitted hash algorithms are defined in ETSI GS NFV-SOL 004. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Checksum" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Checksum" isEncrypted: description: > Reflects whether the image is encrypted (true) or not (false). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Boolean" containerFormat: description: > Container format indicates whether the software image is in a file @@ -330,7 +330,7 @@ definitions: createdAt: description: > Time when this software image was created. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" minDisk: description: > The minimal disk for this software image in bytes. @@ -346,7 +346,7 @@ definitions: userMetadata: description: > User-defined data. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" imagePath: description: > Path which identifies the image artifact and also @@ -375,7 +375,7 @@ definitions: manifest. Shall be present if the image artifact is external to the VNF package and shall be absent otherwise. EXAMPLE: https://example.com/m%40ster.vhd - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" VnfPackageArtifactInfo: description: > @@ -413,7 +413,7 @@ definitions: NFVO to synthesize this path in a manner that avoids any collision of the synthesized artifact path with the paths and names of artifacts included in the package. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" artifactURI: description: > URI of the artifact as defined in the VNF package manifest. @@ -422,22 +422,22 @@ definitions: EXAMPLE: https://example.com/m%40ster.sh type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Uri" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" checksum: description: > Checksum of the artifact file. Permitted hash algorithms are defined in ETSI GS NFV-SOL 004. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Checksum" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Checksum" isEncrypted: description: > Reflects whether the artifact is encrypted (true) or not (false). - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Boolean" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Boolean" nonManoArtifactSetId: description: > Non-MANO artifact set identifier of the non-MANO artifact set to which the artifact belongs, as defined in clause 4.3.7 of ETSI GS NFV-SOL 004. Shall be provided if the artifact is a non-MANO artifact, and shall be omitted otherwise. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" artifactClassification: description: > Marks specific types of artifacts as defined in the VNF package. @@ -456,7 +456,7 @@ definitions: description: > The metadata of the artifact that are available in the VNF package, such as Content type, size, creation date, etc. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/KeyValuePairs" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" PkgmNotificationsFilter: description: > @@ -509,7 +509,7 @@ definitions: vnfProvider: description: > Name of the VNF provider to match. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" vnfProducts: description: > If present, match VNF packages that contain VNF products with @@ -523,7 +523,7 @@ definitions: vnfProductName: description: > Name of the VNF product to match. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" versions: description: > If present, match VNF packages that contain VNF products @@ -538,7 +538,7 @@ definitions: vnfSoftwareVersion: description: > VNF software version to match. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Version" vnfdVersions: description: > If present, match VNF packages that contain VNF @@ -547,14 +547,14 @@ definitions: one particular provider. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Version" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Version" vnfdId: description: > Match VNF packages with a VNFD identifier listed in the attribute. See note 2. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" vnfPkgId: description: > Match VNF packages with a package identifier listed in the @@ -565,7 +565,7 @@ definitions: See note 2. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" operationalState: description: > Match particular operational states of the VNF package. @@ -585,7 +585,7 @@ definitions: Match strings that specify VNFMs compatible with the VNF. See table 10.5.2.2-1. type: array items: - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/String" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/String" PackageOperationalStateType: description: > -- GitLab From 41aeb69c544a100379adcbbcd3a0112665e9b269 Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Mon, 31 Oct 2022 18:08:22 +0500 Subject: [PATCH 22/27] separate notification definitions files for SOL002 and SOL003 --- .../definitions/SOL002VNFIndicator_def.yaml | 151 ------------ .../VNFLifecycleManagement.yaml | 2 +- .../SOL002VNFLifecycleManagement_def.yaml | 89 ------- .../SOL002VNFPerformanceManagement_def.yaml | 192 --------------- .../SOL003VNFFaultManagement_def.yaml | 55 ----- .../VNFFaultManagementNotification.yaml | 2 +- ...003VNFFaultManagementNotification_def.yaml | 10 +- .../SOL003VNFLifecycleManagement_def.yaml | 218 ------------------ .../VNFLifecycleManagementNotification.yaml | 2 +- ...NFLifecycleManagementNotification_def.yaml | 218 ++++++++++++++++++ .../SOL003VNFPerformanceManagement_def.yaml | 198 ---------------- 11 files changed, 226 insertions(+), 911 deletions(-) diff --git a/src/SOL002/VNFIndicator/definitions/SOL002VNFIndicator_def.yaml b/src/SOL002/VNFIndicator/definitions/SOL002VNFIndicator_def.yaml index 69888697..bd2ab00c 100644 --- a/src/SOL002/VNFIndicator/definitions/SOL002VNFIndicator_def.yaml +++ b/src/SOL002/VNFIndicator/definitions/SOL002VNFIndicator_def.yaml @@ -149,154 +149,3 @@ definitions: This attribute shall only be present if the subscriber requires authorization of notifications. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/SubscriptionAuthentication" - - VnfIndicatorValueChangeNotification: - description: > - This type represents a VNF indicator value change notification. It shall comply with the provisions defined in table 8.5.2.5-1. - The notification shall be triggered by the VNFM when the value of an indicator has changed. - - NOTE: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - vnfIndicatorId - - value - - vnfInstanceId - - _links - properties: - id: - description: > - Identifier of this notification. If a notification is sent multiple - times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "VnfIndicatorValueChangeNotification" for this notification type. - type: string - enum: - - VnfIndicatorValueChangeNotification - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" - vnfIndicatorId: - description: > - Identifier of the VNF indicator whose value has changed. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" - name: - description: > - Human readable name of the VNF indicator. Shall be present if - defined in the VNFD. - type: string - value: - description: > - Provides the value of the VNF indicator. The value format is defined in the VNFD. See note. - type: object - vnfInstanceId: - description: > - Identifier of the VNF instance which provides the indicator value. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - _links: - description: > - Links for this resource. - type: object - required: - - vnfInstance - - subscription - properties: - vnfInstance: - description: > - Link to the related "Individual VNF instance" resource. Shall be present - if the VNF instance information is accessible as a resource. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" - subscription: - description: > - Link to the related subscription. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" - - SupportedIndicatorsChangeNotification: - description: > - This type represents a notification to inform the receiver that the set of indicators supported - by a VNF instance has changed. It shall comply with the provisions defined in table 8.5.2.6-1. - - The notification shall be triggered by the VNFM when the set of supported VNF indicators has changed - as a side effect of the "Change current VNF package" operation. It may be triggered by the VNFM when - a VNF has been instantiated. - - NOTE: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - vnfInstanceId - - _links - properties: - id: - description: > - Identifier of this notification. If a notification is sent multiple times - due to multiple subscriptions, the "id" attribute of all these notifications - shall have the same value. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "SupportedIndicatorsChangeNotification" for this notification type. - type: string - enum: - - VnfIndicatorValueChangeNotification - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" - vnfInstanceId: - description: > - Identifier of the VNF instance which provides the indicator value. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - supportedIndicators: - description: > - Set of VNF indicators supported by the VNF instance. - type: array - items: - type: object - required: - - vnfIndicatorId - properties: - vnfIndicatorId: - description: > - Identifier of the VNF indicator whose value has changed. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnfd" - name: - description: > - Human readable name of the VNF indicator. Shall be present if defined in the VNFD. See note. - type: string - _links: - description: > - Links for this resource. - type: object - required: - - subscription - properties: - vnfInstance: - description: > - Link to the related "Individual VNF instance" resource. Shall be present - if the VNF instance information is accessible as a resource. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" - subscription: - description: > - Link to the related subscription. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" \ No newline at end of file diff --git a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml index 8f5a0857..b13fe555 100644 --- a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -1684,7 +1684,7 @@ components: content: application/json: schema: - $ref: "definitions/SOL002VNFLifecycleManagement_def.yaml#/definitions/VnfIdentifierDeletionNotification" + $ref: "../VNFLifecycleManagementNotification/definitions/SOL002VNFLifecycleManagementNotification_def.yaml#/definitions/VnfIdentifierDeletionNotification" IndividualVnfInstance.Delete.409: description: | diff --git a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml index 4627272a..cf01a164 100644 --- a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml +++ b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml @@ -2600,95 +2600,6 @@ definitions: - FORCEFUL ######################################################################################################################## - VnfIdentifierCreationNotification: - description: > - This type represents a VNF identifier creation notification, which - informs the receiver of the creation of a new "Individual VNF instance" resource and - the associated VNF instance identifier. - This notification shall be triggered by the VNFM when it has created an - "Individual VNF instance" resource and the associated VNF instance identifier. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - vnfInstanceId - - _links - properties: - id: - description: > - Identifier of the VNF instance. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "VnfIdentifierCreationNotification" for this notification type. - type: string - enum: - - VnfIdentifierCreationNotification - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" - vnfInstanceId: - description: > - The created VNF instance identifier. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - _links: - description: > - Links to resources related to this notification. - $ref: "#/definitions/LccnLinks" - - VnfIdentifierDeletionNotification: - description: > - This type represents a VNF identifier deletion notification, which - informs the receiver of the deletion of a new "Individual VNF instance" resource and - the associated VNF instance identifier. - This notification shall be triggered by the VNFM when it has deleted an - "Individual VNF instance" resource and the associated VNF instance identifier. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - vnfInstanceId - - _links - properties: - id: - description: > - Identifier of this notification. If a notification is sent multiple - times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "VnfIdentifierDeletionNotification" for this notification type. - type: string - enum: - - VnfIdentifierDeletionNotification - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" - vnfInstanceId: - description: > - The deleted VNF instance identifier. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - _links: - description: > - Links to resources related to this notification. - $ref: "#/definitions/LccnLinks" VnfcInfoModifications: description: > diff --git a/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml b/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml index 6b6d6133..b457282f 100644 --- a/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml +++ b/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml @@ -106,94 +106,6 @@ definitions: requires authorization of notifications. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/SubscriptionAuthentication" - PerformanceInformationAvailableNotification: - description: > - This notification informs the receiver that performance information is - available. - The notification shall be triggered by the VNFM when new performance - information collected by a PM job is available. - The periodicity of triggering this notification is influenced by the - "reportingPeriod" attribute in the "PmJobCriteria" data structure. - type: object - required: - - id - - notificationType - - timeStamp - - pmJobId - - objectType - - objectInstanceId - - _links - properties: - id: - description: > - Identifier of this notification. If a notification is sent multiple - times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "PerformanceInformationAvailableNotification" for this notification - type. - type: string - enum: - - PerformanceInformationAvailableNotification - timeStamp: - description: > - Date and time of the generation of the notification. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" - pmJobId: - description: > - Identifier of the PM job for which performance information is available. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - objectType: - description: > - Type of the measured object. - The applicable measured object type for a measurement - is defined in clause 7.2 of ETSI GS NFV-IFA 027. - type: string - objectInstanceId: - description: > - Identifier of the measured object instance. as per clause 6.2 of ETSI GS NFV-IFA 027. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - subObjectInstanceIds: - description: > - Identifiers of the sub-object instances of the measured - object instance for which the measurements have been taken. - Shall be present if the related PM job has been set up to - measure only a subset of all sub-object instances of the - measured object instance and a sub-object is defined in clause - 6.2 of ETSI GS NFV-IFA 027 for the related measured object type. - Shall be absent otherwise. - type: array - items: - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" - _links: - description: > - Links to resources related to this notification. - type: object - required: - - pmJob - - performanceReport - properties: - objectInstance: - description: > - Link to the resource representing the measured object instance to which the - notification applies. Shall be present if the measured object instance - information is accessible as a resource. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" - pmJob: - description: > - Link to the resource that represents the PM job for which - performance information is available. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" - performanceReport: - description: > - Link from which the available performance information of data - type "PerformanceReport" can be obtained. This link should point - to an "Individual performance report" resource. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" - PerformanceReport: description: > This type defines the format of a performance report provided by the VNFM to the NFVO as a result of collecting @@ -608,107 +520,3 @@ definitions: minimum: 0 maximum: 1024 format: float - - ThresholdCrossedNotification: - description: > - This type represents a notification that is sent when a threshold has been crossed. - It shall comply with the provisions defined in table 6.5.2.4-1. - - NOTE: The timing of sending this notification is determined by the capability of the - producing entity to evaluate the threshold crossing condition. - - The notification shall be triggered by the VNFM when a threshold has been crossed. - - NOTE: The sub-object allows to structure the measured object, but is not to be confused - with sub-counters which allow to structure the measurement. - type: object - required: - - id - - notificationType - - timeStamp - - thresholdId - - crossingDirection - - objectType - - objectInstanceId - - performanceMetric - - performanceValue - - _links - properties: - id: - description: > - Identifier of this notification. If a notification is sent multiple - times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "ThresholdCrossedNotification" for this notification type. - type: string - enum: - - ThresholdCrossedNotification - timeStamp: - description: > - Date and time of the generation of the notification. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/DateTime" - thresholdId: - description: > - Identifier of the threshold which has been crossed. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - crossingDirection: - description: > - An indication of whether the threshold was crossed in upward or - downward direction. - $ref: "#/definitions/CrossingDirectionType" - objectType: - description: > - Type of the measured object. - The applicable measured object type for a measurement is defined in clause 7.2 of ETSI GS NFV-IFA 027. - type: string - objectInstanceId: - description: > - Identifier that identifies a VNF instance. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Identifier" - subObjectInstanceId: - description: > - Identifier of the sub-object of the measured object to which the measurement applies. - Shall be present if this is required in clause 6.2 of ETSI GS NFV-IFA 027 for the related - measured object type. - See note. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVnf" - performanceMetric: - description: > - Performance metric associated with the threshold. - This attribute shall contain the related "Measurement Name" - value as defined in clause 7.2 of ETSI GS NFV-IFA 027. - type: string - performanceValue: - description: > - Value of the metric that resulted in threshold crossing. - The type of this attribute shall correspond to the related - "Measurement Unit" as defined in clause 7.2 of ETSI GS NFV-IFA 027. - type: object - context: - description: > - Measurement context information related to the measured value. - The set of applicable keys is defined per measurement in the - related "Measurement Context" in clause 7.2 of ETSI GS NFV-IFA 027. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" - _links: - description: > - Links to resources related to this notification. - type: object - required: - - threshold - properties: - objectInstance: - description: > - Link to the resource representing the measured object instance to which the - notified change applies. Shall be present if the measured object instance - information is accessible as a resource. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" - threshold: - description: > - Link to the resource that represents the threshold that was - crossed. - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/NotificationLink" \ No newline at end of file diff --git a/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml b/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml index b2c28a64..4b1a39cc 100644 --- a/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml +++ b/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml @@ -144,61 +144,6 @@ definitions: notified alarm is correlated. Shall be present if the VNF instance information is accessible as a resource. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Link" - - AlarmNotification: - description: > - This type represents an alarm notification about VNF faults. - This notification shall be triggered by the VNFM when: - * An alarm has been created. - * An alarm has been updated, e.g. if the severity of the alarm has - changed. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - alarm - - _links - properties: - id: - description: > - Identifier of this notification. If a notification is sent multiple - times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "AlarmNotification" for this notification type. - type: string - enum: - - AlarmNotification - subscriptionId: - description: > - Identifier of the subscription that this notification relates to. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" - alarm: - description: > - Information about an alarm including AlarmId, affected VNF - identifier, and FaultDetails. - $ref: "#/definitions/Alarm" - _links: - description: > - Links to resources related to this notification. - type: object - required: - - subscription - properties: - subscription: - description: > - Link to the related subscription. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" - FmSubscriptionRequest: description: > diff --git a/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml b/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml index 5560db4b..63b38864 100644 --- a/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml +++ b/src/SOL003/VNFFaultManagementNotification/VNFFaultManagementNotification.yaml @@ -202,7 +202,7 @@ components: content: application/json: schema: - $ref: "../VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml#/definitions/AlarmNotification" + $ref: "definitions/SOL003VNFFaultManagementNotification_def.yaml#/definitions/AlarmNotification" required: true AlarmClearedNotification: diff --git a/src/SOL003/VNFFaultManagementNotification/definitions/SOL003VNFFaultManagementNotification_def.yaml b/src/SOL003/VNFFaultManagementNotification/definitions/SOL003VNFFaultManagementNotification_def.yaml index 81a0cf00..8eb4e572 100644 --- a/src/SOL003/VNFFaultManagementNotification/definitions/SOL003VNFFaultManagementNotification_def.yaml +++ b/src/SOL003/VNFFaultManagementNotification/definitions/SOL003VNFFaultManagementNotification_def.yaml @@ -23,7 +23,7 @@ definitions: Identifier of this notification. If a notification is sent multiple times due to multiple subscriptions, the "id" attribute of all these notifications shall have the same value. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" notificationType: description: > Discriminator for the different notification types. Shall be set to @@ -34,16 +34,16 @@ definitions: subscriptionId: description: > Identifier of the subscription that this notification relates to. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/Identifier" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" timeStamp: description: > Date-time of the generation of the notification. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/DateTime" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" alarm: description: > Information about an alarm including AlarmId, affected VNF identifier, and FaultDetails. - $ref: "../../VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml#/definitions/Alarm" + $ref: "../../VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml#/definitions/Alarm" _links: description: > Links to resources related to this notification. @@ -54,7 +54,7 @@ definitions: subscription: description: > Link to the related subscription. - $ref: "../../../definitions/SOL002SOL003_def.yaml#/definitions/NotificationLink" + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" AlarmClearedNotification: description: > diff --git a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml index 0c63aafd..387e8c05 100644 --- a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml +++ b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml @@ -1996,224 +1996,6 @@ definitions: It shall be present when an applicable GrantInfo for the granted resource exists. See note. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierLocal" - VnfLcmOperationOccurrenceNotification: - description: > - This type represents a VNF lifecycle management operation occurrence notification, which - informs the receiver of changes in the VNF lifecycle caused by a VNF LCM operation occurrence. - It shall comply with the provisions defined in table 5.5.2.17-1. - The support of the notification is mandatory. - - This notification shall be triggered by the VNFM when there is a change in the state of a VNF LCM - operation occurrence that changes the VNF lifecycle, which represents an occurrence of one the - following LCM operations: - - Instantiation of the VNF - - Scaling of the VNF instance (including auto-scaling) - - Healing of the VNF instance (including auto-healing) - - Change of the state of the VNF instance (i.e. Operate VNF) - - Change of the deployment flavour of the VNF instance - - Change of the external connectivity of the VNF instance - - Change of the current VNF package - - Termination of the VNF instance - - Modification of VNF instance information and/or VNF configurable properties through the "PATCH" - method on the "Individual VNF instance" resource - - Creation of a VNF snapshot - - Reversion of the VNF instance to a VNF snapshot - - Clause 5.6.2 defines the states and state transition of a VNF LCM operation occurrence, and also - specifies details of the notifications to be emitted at each state transition. - If this is the initial notification about the start of a VNF LCM operation occurrence, it is assumed - that the notification is sent by the VNFM before any action (including sending the grant request) is - taken as part of the LCM operation. Due to possible race conditions, the "start" notification, the grant - request and the LCM operation acknowledgment (i.e. the "202 Accepted" response) can arrive in any order - at the NFVO, and the NFVO shall be able to handle such a situation. - If this is a notification about a final or intermediate result state of a VNF LCM operation occurrence, - the notification shall be sent after all related actions of the LCM operation that led to this state have - been executed. - The new state shall be set in the "Individual VNF LCM operation occurrence" resource before the notification - about the state change is sent. - The amount of information provided in the LCM operation occurrence notifications to be issued by the VNFM when - a particular subscription matches can be controlled by the API consumer using the "verbosity" attribute in the - subscription request (see clause 5.5.2.15). The "verbosity" setting in a particular individual subscription shall - only apply to the LCM operation occurrence notifications triggered by that subscription. However, it shall not - affect the amount of information in the "VnfLcmOpOcc" structure (see clause 5.5.2.13) which represents the "Individual - LCM operation occurrence" resource associated with each of the notifications. - See clause 5.6.2.2 for further provisions regarding sending this notification, including in cases of handling LCM - operation errors. - - NOTE 1: Shall be present if the "notificationStatus" is set to "RESULT", the "verbosity" attribute is set to "FULL" - and the operation has performed any resource modification. Shall be absent otherwise. This attribute contains - information about the cumulative changes to virtualised resources that were performed so far by the VNF LCM - operation occurrence and by any of the error handling procedures for that operation occurrence. - NOTE 2: For a particular affected VL, there shall be as many "AffectedVirtualLink" entries as needed for signalling - the different types of changes, i.e. one per virtual link and change type. For instance, in the case of signaling - affected VL instances involving the addition of a particular VL instance with links ports, one "AffectedVirtualLink" - entry signals the addition of the VL by using the "changeType" attribute of "AffectedVirtualLink" structure equal to - "ADDED", and another "AffectedVirtualLink" entry signals the addition of externally visible VNF link ports of the VL - by using the "changeType" equal to "LINK_PORT_ADDED". - Note 3: Not more than one of changedInfo and modificationsTriggeredByVnfPkgChange shall be present. - type: object - required: - - id - - notificationType - - subscriptionId - - timeStamp - - notificationStatus - - operationState - - vnfInstanceId - - operation - - isAutomaticInvocation - - vnfLcmOpOccId - - _links - properties: - id: - description: > - Identifier of this notification. If a notification is sent multiple - times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "VnfLcmOperationOccurrenceNotification" for this notification type. - type: string - enum: - - VnfLcmOperationOccurrenceNotification - subscriptionId: - description: > - Identifier of the subscription that this notification relates to.Shall be set to the value of the "id" attribute - of the "LccnSubscription" representing the associated "Individual subscription" resource. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" - timeStamp: - description: > - Date-time of the generation of the notification. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" - notificationStatus: - description: > - Indicates whether this notification reports about the start of a - lifecycle operation or the result of a lifecycle operation. - Permitted values: - * START: Informs about the start of the VNF LCM operation - occurrence. - * RESULT: Informs about the final or intermediate result of the VNF - LCM operation occurrence. - type: string - enum: - - START - - RESULT - operationState: - description: > - The state of the VNF LCM operation occurrence. - $ref: "#/definitions/LcmOperationStateType" - vnfInstanceId: - description: > - The identifier of the VNF instance affected. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" - operation: - description: > - The lifecycle management operation. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/LcmOperationType" - isAutomaticInvocation: - description: > - Set to true if this VNF LCM operation occurrence has been triggered - by an automated procedure inside the VNFM - (i.e. ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf - triggered by auto-heal). - Set to false otherwise. - type: boolean - verbosity: - description: > - This attribute signals the verbosity of the notification. If it is not present, it shall default to the value "FULL". - If the value is "SHORT", full change details can be obtained by performing a GET request on the "Individual LCM - operation occurrence" resource that is signalled by the "vnfLcmOpOcc" child attribute of the "_links" attribute. - $ref: '#/definitions/LcmOpOccNotificationVerbosityType' - vnfLcmOpOccId: - description: > - The identifier of the VNF lifecycle management operation occurrence associated to the notification. Shall be - set to the value of the "id" attribute of the "VnfLcmOpOcc" representing the associate "Individual VNF lifecycle - management operation occurrence" resource. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" - affectedVnfcs: - description: > - Information about VNFC instances that were affected during the lifecycle operation. See note 1. - type: array - items: - $ref: "#/definitions/AffectedVnfc" - affectedVirtualLinks: - description: > - Information about VL instances that were affected during the lifecycle operation. See note 1 and note 2. - type: array - items: - $ref: "#/definitions/AffectedVirtualLink" - affectedExtLinkPorts: - description: > - Information about external VNF link ports that were affected during the lifecycle operation. See note 1. - type: array - items: - $ref: "#/definitions/AffectedExtLinkPort" - affectedVirtualStorages: - description: > - Information about virtualised storage instances that were affected during the lifecycle operation. See note 1. - type: array - items: - $ref: "#/definitions/AffectedVirtualStorage" - changedInfo: - description: > - Information about the changed VNF instance information, including - changed VNF configurable properties. - Shall be present if the "notificationStatus" is set to "RESULT", - the "operation" attribute is not equal to "CHANGE_VNFPKG", the - "verbosity" attribute is set to "FULL" and the operation has performed - any changes to VNF instance information, including VNF configurable - properties. Shall be absent otherwise. See note 3. - $ref: "#/definitions/VnfInfoModifications" - - affectedVipCps: - description: > - Information about virtual IP CP instances that were affected during the execution of the lifecycle management - operation, if this notification represents the result of a lifecycle management operation occurrence. - - Shall be present if the "notificationStatus" is set to "RESULT", the "verbosity" attribute is set to "FULL" - and the operation has made any changes to the VIP CP instances of the VNF instance. Shall be absent otherwise. - Only information about VIP CP instances that have been added, deleted or modified shall be provided. - type: array - items: - $ref: "#/definitions/AffectedVipCp" - - - changedExtConnectivity: - description: > - Information about changed external connectivity, if this notification - represents the result of a lifecycle operation occurrence. - Shall be present if the "notificationStatus" is set to "RESULT", - the "verbosity" attribute is set to "FULL" and the operation has made - any changes to the external connectivity of the VNF instance. Shall be - absent otherwise. Only information about external VL instances that - have been added or modified shall be provided. - type: array - items: - $ref: "#/definitions/ExtVirtualLinkInfo" - modificationsTriggeredByVnfPkgChange: - description: > - Information about performed changes of "VnfInstance" attributes triggered by changing the current VNF package. - Shall be present if the "notificationStatus" is set to "RESULT", the "operation" attribute is equal to - "CHANGE_VNFPKG", the "verbosity" attribute is set to "FULL" and the operation has performed any changes to - "VnfInstance" attributes. Shall be absent otherwise. See note 3. - $ref: "#/definitions/ModificationsTriggeredByVnfPkgChange" - error: - description: > - Details of the latest error, if one has occurred during executing - the LCM operation (see clause 6.3 of ETSI GS NFV-SOL 013). - Shall be present if the "operationState" attribute is "FAILED_TEMP", "FAILED" - or "ROLLED_BACK" and shall be absent otherwise. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" - _links: - description: > - Links to resources related to this notification. - The link URIs in this structure shall be set to point to the - resources identified by the corresponding identifier attributes - in this notification. - $ref: "#/definitions/LccnLinks" - AffectedVirtualLink: description: > This type provides information about added, deleted, modified and diff --git a/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml b/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml index ca45c2de..270e08f2 100644 --- a/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml +++ b/src/SOL003/VNFLifecycleManagementNotification/VNFLifecycleManagementNotification.yaml @@ -195,7 +195,7 @@ components: content: application/json: schema: - $ref: "../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfLcmOperationOccurrenceNotification" + $ref: "definitions/SOL003VNFLifecycleManagementNotification_def.yaml#/definitions/VnfLcmOperationOccurrenceNotification" required: true VnfIdentifierCreationNotification: diff --git a/src/SOL003/VNFLifecycleManagementNotification/definitions/SOL003VNFLifecycleManagementNotification_def.yaml b/src/SOL003/VNFLifecycleManagementNotification/definitions/SOL003VNFLifecycleManagementNotification_def.yaml index 89a7ed7a..4888c017 100644 --- a/src/SOL003/VNFLifecycleManagementNotification/definitions/SOL003VNFLifecycleManagementNotification_def.yaml +++ b/src/SOL003/VNFLifecycleManagementNotification/definitions/SOL003VNFLifecycleManagementNotification_def.yaml @@ -90,4 +90,222 @@ definitions: _links: description: > Links to resources related to this notification. + $ref: "../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnLinks" + + VnfLcmOperationOccurrenceNotification: + description: > + This type represents a VNF lifecycle management operation occurrence notification, which + informs the receiver of changes in the VNF lifecycle caused by a VNF LCM operation occurrence. + It shall comply with the provisions defined in table 5.5.2.17-1. + The support of the notification is mandatory. + + This notification shall be triggered by the VNFM when there is a change in the state of a VNF LCM + operation occurrence that changes the VNF lifecycle, which represents an occurrence of one the + following LCM operations: + - Instantiation of the VNF + - Scaling of the VNF instance (including auto-scaling) + - Healing of the VNF instance (including auto-healing) + - Change of the state of the VNF instance (i.e. Operate VNF) + - Change of the deployment flavour of the VNF instance + - Change of the external connectivity of the VNF instance + - Change of the current VNF package + - Termination of the VNF instance + - Modification of VNF instance information and/or VNF configurable properties through the "PATCH" + method on the "Individual VNF instance" resource + - Creation of a VNF snapshot + - Reversion of the VNF instance to a VNF snapshot + + Clause 5.6.2 defines the states and state transition of a VNF LCM operation occurrence, and also + specifies details of the notifications to be emitted at each state transition. + If this is the initial notification about the start of a VNF LCM operation occurrence, it is assumed + that the notification is sent by the VNFM before any action (including sending the grant request) is + taken as part of the LCM operation. Due to possible race conditions, the "start" notification, the grant + request and the LCM operation acknowledgment (i.e. the "202 Accepted" response) can arrive in any order + at the NFVO, and the NFVO shall be able to handle such a situation. + If this is a notification about a final or intermediate result state of a VNF LCM operation occurrence, + the notification shall be sent after all related actions of the LCM operation that led to this state have + been executed. + The new state shall be set in the "Individual VNF LCM operation occurrence" resource before the notification + about the state change is sent. + The amount of information provided in the LCM operation occurrence notifications to be issued by the VNFM when + a particular subscription matches can be controlled by the API consumer using the "verbosity" attribute in the + subscription request (see clause 5.5.2.15). The "verbosity" setting in a particular individual subscription shall + only apply to the LCM operation occurrence notifications triggered by that subscription. However, it shall not + affect the amount of information in the "VnfLcmOpOcc" structure (see clause 5.5.2.13) which represents the "Individual + LCM operation occurrence" resource associated with each of the notifications. + See clause 5.6.2.2 for further provisions regarding sending this notification, including in cases of handling LCM + operation errors. + + NOTE 1: Shall be present if the "notificationStatus" is set to "RESULT", the "verbosity" attribute is set to "FULL" + and the operation has performed any resource modification. Shall be absent otherwise. This attribute contains + information about the cumulative changes to virtualised resources that were performed so far by the VNF LCM + operation occurrence and by any of the error handling procedures for that operation occurrence. + NOTE 2: For a particular affected VL, there shall be as many "AffectedVirtualLink" entries as needed for signalling + the different types of changes, i.e. one per virtual link and change type. For instance, in the case of signaling + affected VL instances involving the addition of a particular VL instance with links ports, one "AffectedVirtualLink" + entry signals the addition of the VL by using the "changeType" attribute of "AffectedVirtualLink" structure equal to + "ADDED", and another "AffectedVirtualLink" entry signals the addition of externally visible VNF link ports of the VL + by using the "changeType" equal to "LINK_PORT_ADDED". + Note 3: Not more than one of changedInfo and modificationsTriggeredByVnfPkgChange shall be present. + type: object + required: + - id + - notificationType + - subscriptionId + - timeStamp + - notificationStatus + - operationState + - vnfInstanceId + - operation + - isAutomaticInvocation + - vnfLcmOpOccId + - _links + properties: + id: + description: > + Identifier of this notification. If a notification is sent multiple + times due to multiple subscriptions, the "id" attribute of all these + notifications shall have the same value. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + notificationType: + description: > + Discriminator for the different notification types. Shall be set to + "VnfLcmOperationOccurrenceNotification" for this notification type. + type: string + enum: + - VnfLcmOperationOccurrenceNotification + subscriptionId: + description: > + Identifier of the subscription that this notification relates to.Shall be set to the value of the "id" attribute + of the "LccnSubscription" representing the associated "Individual subscription" resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + timeStamp: + description: > + Date-time of the generation of the notification. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" + notificationStatus: + description: > + Indicates whether this notification reports about the start of a + lifecycle operation or the result of a lifecycle operation. + Permitted values: + * START: Informs about the start of the VNF LCM operation + occurrence. + * RESULT: Informs about the final or intermediate result of the VNF + LCM operation occurrence. + type: string + enum: + - START + - RESULT + operationState: + description: > + The state of the VNF LCM operation occurrence. + $ref: "../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/LcmOperationStateType" + vnfInstanceId: + description: > + The identifier of the VNF instance affected. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + operation: + description: > + The lifecycle management operation. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/LcmOperationType" + isAutomaticInvocation: + description: > + Set to true if this VNF LCM operation occurrence has been triggered + by an automated procedure inside the VNFM + (i.e. ScaleVnf / ScaleVnfToLevel triggered by auto-scale, or HealVnf + triggered by auto-heal). + Set to false otherwise. + type: boolean + verbosity: + description: > + This attribute signals the verbosity of the notification. If it is not present, it shall default to the value "FULL". + If the value is "SHORT", full change details can be obtained by performing a GET request on the "Individual LCM + operation occurrence" resource that is signalled by the "vnfLcmOpOcc" child attribute of the "_links" attribute. + $ref: '../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/LcmOpOccNotificationVerbosityType' + vnfLcmOpOccId: + description: > + The identifier of the VNF lifecycle management operation occurrence associated to the notification. Shall be + set to the value of the "id" attribute of the "VnfLcmOpOcc" representing the associate "Individual VNF lifecycle + management operation occurrence" resource. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" + affectedVnfcs: + description: > + Information about VNFC instances that were affected during the lifecycle operation. See note 1. + type: array + items: + $ref: "../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedVnfc" + affectedVirtualLinks: + description: > + Information about VL instances that were affected during the lifecycle operation. See note 1 and note 2. + type: array + items: + $ref: "../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedVirtualLink" + affectedExtLinkPorts: + description: > + Information about external VNF link ports that were affected during the lifecycle operation. See note 1. + type: array + items: + $ref: "../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedExtLinkPort" + affectedVirtualStorages: + description: > + Information about virtualised storage instances that were affected during the lifecycle operation. See note 1. + type: array + items: + $ref: "../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedVirtualStorage" + changedInfo: + description: > + Information about the changed VNF instance information, including + changed VNF configurable properties. + Shall be present if the "notificationStatus" is set to "RESULT", + the "operation" attribute is not equal to "CHANGE_VNFPKG", the + "verbosity" attribute is set to "FULL" and the operation has performed + any changes to VNF instance information, including VNF configurable + properties. Shall be absent otherwise. See note 3. + $ref: "../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/VnfInfoModifications" + + affectedVipCps: + description: > + Information about virtual IP CP instances that were affected during the execution of the lifecycle management + operation, if this notification represents the result of a lifecycle management operation occurrence. + + Shall be present if the "notificationStatus" is set to "RESULT", the "verbosity" attribute is set to "FULL" + and the operation has made any changes to the VIP CP instances of the VNF instance. Shall be absent otherwise. + Only information about VIP CP instances that have been added, deleted or modified shall be provided. + type: array + items: + $ref: "../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/AffectedVipCp" + + + changedExtConnectivity: + description: > + Information about changed external connectivity, if this notification + represents the result of a lifecycle operation occurrence. + Shall be present if the "notificationStatus" is set to "RESULT", + the "verbosity" attribute is set to "FULL" and the operation has made + any changes to the external connectivity of the VNF instance. Shall be + absent otherwise. Only information about external VL instances that + have been added or modified shall be provided. + type: array + items: + $ref: "../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ExtVirtualLinkInfo" + modificationsTriggeredByVnfPkgChange: + description: > + Information about performed changes of "VnfInstance" attributes triggered by changing the current VNF package. + Shall be present if the "notificationStatus" is set to "RESULT", the "operation" attribute is equal to + "CHANGE_VNFPKG", the "verbosity" attribute is set to "FULL" and the operation has performed any changes to + "VnfInstance" attributes. Shall be absent otherwise. See note 3. + $ref: "../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/ModificationsTriggeredByVnfPkgChange" + error: + description: > + Details of the latest error, if one has occurred during executing + the LCM operation (see clause 6.3 of ETSI GS NFV-SOL 013). + Shall be present if the "operationState" attribute is "FAILED_TEMP", "FAILED" + or "ROLLED_BACK" and shall be absent otherwise. + $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/ProblemDetails" + _links: + description: > + Links to resources related to this notification. + The link URIs in this structure shall be set to point to the + resources identified by the corresponding identifier attributes + in this notification. $ref: "../../VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml#/definitions/LccnLinks" \ No newline at end of file diff --git a/src/SOL003/VNFPerformanceManagement/definitions/SOL003VNFPerformanceManagement_def.yaml b/src/SOL003/VNFPerformanceManagement/definitions/SOL003VNFPerformanceManagement_def.yaml index 5c3bc723..5de311d3 100644 --- a/src/SOL003/VNFPerformanceManagement/definitions/SOL003VNFPerformanceManagement_def.yaml +++ b/src/SOL003/VNFPerformanceManagement/definitions/SOL003VNFPerformanceManagement_def.yaml @@ -106,100 +106,6 @@ definitions: requires authorization of notifications. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/SubscriptionAuthentication" - CrossingDirectionType: - type: string - enum: - - UP - - DOWN - - PerformanceInformationAvailableNotification: - description: > - This notification informs the receiver that performance information is - available. - The notification shall be triggered by the VNFM when new performance - information collected by a PM job is available. - The periodicity of triggering this notification is influenced by the - "reportingPeriod" attribute in the "PmJobCriteria" data structure. - type: object - required: - - id - - notificationType - - timeStamp - - pmJobId - - objectType - - objectInstanceId - - _links - properties: - id: - description: > - Identifier of this notification. If a notification is sent multiple - times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "PerformanceInformationAvailableNotification" for this notification - type. - type: string - enum: - - PerformanceInformationAvailableNotification - timeStamp: - description: > - Date and time of the generation of the notification. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" - pmJobId: - description: > - Identifier of the PM job for which performance information is available. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" - objectType: - description: > - Type of the measured object. - The applicable measured object type for a measurement - is defined in clause 7.2 of ETSI GS NFV-IFA 027. - type: string - objectInstanceId: - description: > - Identifier of the measured object instance. as per clause 6.2 of ETSI GS NFV-IFA 027. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" - subObjectInstanceIds: - description: > - Identifiers of the sub-object instances of the measured - object instance for which the measurements have been taken. - Shall be present if the related PM job has been set up to - measure only a subset of all sub-object instances of the - measured object instance and a sub-object is defined in clause - 6.2 of ETSI GS NFV-IFA 027 for the related measured object type. - Shall be absent otherwise. - type: array - items: - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" - _links: - description: > - Links to resources related to this notification. - type: object - required: - - pmJob - - performanceReport - properties: - objectInstance: - description: > - Link to the resource representing the measured object instance to which the - notification applies. Shall be present if the measured object instance - information is accessible as a resource. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" - pmJob: - description: > - Link to the resource that represents the PM job for which - performance information is available. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" - performanceReport: - description: > - Link from which the available performance information of data - type "PerformanceReport" can be obtained. This link should point - to an "Individual performance report" resource. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" - PerformanceReport: description: > This type defines the format of a performance report provided by the VNFM to the NFVO as a result of collecting @@ -614,107 +520,3 @@ definitions: minimum: 0 maximum: 1024 format: float - - ThresholdCrossedNotification: - description: > - This type represents a notification that is sent when a threshold has been crossed. - It shall comply with the provisions defined in table 6.5.2.4-1. - - NOTE: The timing of sending this notification is determined by the capability of the - producing entity to evaluate the threshold crossing condition. - - The notification shall be triggered by the VNFM when a threshold has been crossed. - - NOTE: The sub-object allows to structure the measured object, but is not to be confused - with sub-counters which allow to structure the measurement. - type: object - required: - - id - - notificationType - - timeStamp - - thresholdId - - crossingDirection - - objectType - - objectInstanceId - - performanceMetric - - performanceValue - - _links - properties: - id: - description: > - Identifier of this notification. If a notification is sent multiple - times due to multiple subscriptions, the "id" attribute of all these - notifications shall have the same value. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" - notificationType: - description: > - Discriminator for the different notification types. Shall be set to - "ThresholdCrossedNotification" for this notification type. - type: string - enum: - - ThresholdCrossedNotification - timeStamp: - description: > - Date and time of the generation of the notification. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/DateTime" - thresholdId: - description: > - Identifier of the threshold which has been crossed. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" - crossingDirection: - description: > - An indication of whether the threshold was crossed in upward or - downward direction. - $ref: "#/definitions/CrossingDirectionType" - objectType: - description: > - Type of the measured object. - The applicable measured object type for a measurement is defined in clause 7.2 of ETSI GS NFV-IFA 027. - type: string - objectInstanceId: - description: > - Identifier that identifies a VNF instance. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" - subObjectInstanceId: - description: > - Identifier of the sub-object of the measured object to which the measurement applies. - Shall be present if this is required in clause 6.2 of ETSI GS NFV-IFA 027 for the related - measured object type. - See note. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/IdentifierInVnf" - performanceMetric: - description: > - Performance metric associated with the threshold. - This attribute shall contain the related "Measurement Name" - value as defined in clause 7.2 of ETSI GS NFV-IFA 027. - type: string - performanceValue: - description: > - Value of the metric that resulted in threshold crossing. - The type of this attribute shall correspond to the related - "Measurement Unit" as defined in clause 7.2 of ETSI GS NFV-IFA 027. - type: object - context: - description: > - Measurement context information related to the measured value. - The set of applicable keys is defined per measurement in the - related "Measurement Context" in clause 7.2 of ETSI GS NFV-IFA 027. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" - _links: - description: > - Links to resources related to this notification. - type: object - required: - - threshold - properties: - objectInstance: - description: > - Link to the resource representing the measured object instance to which the - notified change applies. Shall be present if the measured object instance - information is accessible as a resource. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" - threshold: - description: > - Link to the resource that represents the threshold that was - crossed. - $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/NotificationLink" \ No newline at end of file -- GitLab From 992f0d8cb4956714b0b96e5b5f7c49cef9fa343e Mon Sep 17 00:00:00 2001 From: Mubeena Ishaq Date: Mon, 31 Oct 2022 06:12:19 -0700 Subject: [PATCH 23/27] Update SOL003 HTTP section --- .../VNFFaultManagement.yaml | 15 ++++++++++ src/SOL003/VNFIndicator/VNFIndicator.yaml | 1 - .../VNFLifecycleManagement.yaml | 15 ++++++++++ .../VNFPerformanceManagement.yaml | 30 +++++++++++++++++++ 4 files changed, 60 insertions(+), 1 deletion(-) diff --git a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml index ae995874..e02bd04d 100644 --- a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml @@ -477,6 +477,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: diff --git a/src/SOL003/VNFIndicator/VNFIndicator.yaml b/src/SOL003/VNFIndicator/VNFIndicator.yaml index d638db96..d2b6bf64 100644 --- a/src/SOL003/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL003/VNFIndicator/VNFIndicator.yaml @@ -583,7 +583,6 @@ components: tested the Notification endpoint as described in clause 8.4.7.3.2 and the test has failed. In this case, the "detail" attribute in the "ProblemDetails" structure shall convey more information about the error. - headers: WWW-Authenticate: description: | diff --git a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml index ec690d59..e23d4da2 100644 --- a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -4068,6 +4068,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 81c702a3..178506e1 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -709,6 +709,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: @@ -1050,6 +1065,21 @@ components: explode: false schema: type: string + ETag: + description: > + Used to provide the current entity-tag for the selected resource representation. It can be sent in + "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + Last-Modified: + description: > + Used to provide a timestamp indicating the date and time at which the server believes the selected resource + representation was last modified. It can be sent in "200 OK", "201 Created" and "204 No Content" responses. + style: simple + schema: + type: string + format: date-time content: application/json: schema: -- GitLab From 9d6ca42237097efa7847fff337addd4bf60d794c Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Tue, 1 Nov 2022 10:50:35 +0500 Subject: [PATCH 24/27] update descriptions in SOL003 --- .../VNFPackageManagement.yaml | 29 +++++++++---------- .../SOL003VNFPackageManagement_def.yaml | 4 +-- 2 files changed, 15 insertions(+), 18 deletions(-) diff --git a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml index c26c2586..1fb1ffac 100644 --- a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml +++ b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml @@ -2014,7 +2014,7 @@ components: a single consecutive byte range from the content of the VNF package file has been read successfully according to the request. The response body shall contain the requested part of the VNF package file. - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. The "Content-Type" HTTP header shall be set as defined above for the "200 OK" response. headers: Content-Range: @@ -2176,7 +2176,7 @@ components: Shall be returned when the whole content of the archive containing the artifact files has been read successfully. - The payload body shall be a ZIP archive containing the requested + The message content shall be a ZIP archive containing the requested set of artifacts selected according to the provisions specified above in this clause, and, if the flag "include_signatures" was provided in the related request, the applicable signature files and, if available, @@ -2219,7 +2219,7 @@ components: successfully according to the request. The response body shall contain the requested part of the archive. The "Content-Type" HTTP header shall be set to "application/zip". - The "Content-Range" HTTP header shall be provided according to IETF RFC 7233. + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. headers: Content-Range: required : true @@ -2261,7 +2261,7 @@ components: been read successfully. If the "include_signatures" request URI parameter was not provided in - the related request, the payload body shall contain a copy of the artifact + the related request, the message content shall contain a copy of the artifact file from the VNF package, as defined by ETSI GS NFV-SOL 004 and the "Content-Type" HTTP header shall be set according to the content type of the artifact file. If the artifact is encrypted, the header shall be set to the value "application/cms" @@ -2269,7 +2269,7 @@ components: to the value "application/octet-stream". If the "include_signatures" request URI parameter was provided in the related request, - the "Content-Type" HTTP header shall be set to "application/zip and the payload body + the "Content-Type" HTTP header shall be set to "application/zip and the messgae content shall contain a ZIP archive which includes: • a copy of the artifact file from the VNF package, as defined by ETSI GS NFV SOL 004; • the related security information (individual signature file and optional related @@ -2305,17 +2305,14 @@ components: description: | 206 PARTIAL CONTENT - If the NFVO supports range requests and the "include_signatures" request - URI parameter was not present in the related request, this response shall - be returned when a single consecutive byte range from the content of the - artifact file, if the NFVO supports range requests has been read successfully - according to the request. - The response body shall contain the requested part of the VNF - package file. - The "Content-Range" HTTP header shall be provided according to - IETF RFC 7233. - The "Content-Type" HTTP header shall be set as defined above for - the "200 OK" response. + If the NFVO supports range requests and the "include_signatures" request URI parameter was not present + in the related request, this response shall be returned when a single consecutive byte range from the + content of the artifact file has been read successfully according to the request. + The response body shall contain the requested part of the artifact file from the VNF package, as defined + by ETSI GS NFV-SOL 004. + The "Content-Type" HTTP header shall be set according to the content type of the artifact file. If the + content type cannot be determined, the header shall be set to the value "application/octet-stream". + The "Content-Range" HTTP header shall be provided according to IETF RFC 9110. headers: Content-Range: required : true diff --git a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml index 8e94cc63..de13c881 100644 --- a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml +++ b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml @@ -382,8 +382,8 @@ definitions: This type represents an artifact other than a software image which is contained in or external to a VNF package. - NOTE : The attribute name "artifactURI" does not comply with the naming convention defined in clause 4.3 in ETSI GS - NFV-SOL 015. This is to maintain the backward compatibility. + NOTE : The attribute name "artifactURI" does not comply with the naming convention defined in clause 4.3 in ETSI GS + NFV-SOL 015. This is to maintain the backward compatibility. type: object required: - artifactPath -- GitLab From 20e183cc097ff94e6985315f309922f48e5f715b Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Tue, 1 Nov 2022 14:16:27 +0500 Subject: [PATCH 25/27] resolve issues in SOL002 and SOL003 --- .../General_Definitions/SOL002_def.yaml | 1 - .../SOL002VNFFaultManagement_def.yaml | 6 +- .../definitions/SOL002VNFIndicator_def.yaml | 5 +- .../SOL002VNFLifecycleManagement_def.yaml | 30 ++++---- .../SOL002VNFPerformanceManagement_def.yaml | 10 +-- ...PerformanceManagementNotification_def.yaml | 3 +- .../General_Definitions/SOL003_def.yaml | 1 - .../SOL003VNFFaultManagement_def.yaml | 3 +- .../definitions/SOL003VNFIndicator_def.yaml | 9 +-- .../SOL003VNFIndicatorNotification_def.yaml | 4 +- .../SOL003VNFLifecycleManagement_def.yaml | 75 +++++++------------ ...NFLifecycleManagementNotification_def.yaml | 1 - ...L003VNFLifecycleOperationGranting_def.yaml | 15 ++-- .../SOL003VNFPackageManagement_def.yaml | 9 +-- .../SOL003VNFPerformanceManagement_def.yaml | 10 +-- ...PerformanceManagementNotification_def.yaml | 3 +- ...OL003VNFSnapshotPackageManagement_def.yaml | 5 +- 17 files changed, 77 insertions(+), 113 deletions(-) diff --git a/src/SOL002/General_Definitions/SOL002_def.yaml b/src/SOL002/General_Definitions/SOL002_def.yaml index 87d054d8..4c8d848e 100644 --- a/src/SOL002/General_Definitions/SOL002_def.yaml +++ b/src/SOL002/General_Definitions/SOL002_def.yaml @@ -427,7 +427,6 @@ definitions: type: string enum: - IP_OVER_ETHERNET - - IP_FOR_VIRTUAL_CP ipOverEthernet: description: > Network address data for IP over Ethernet to assign to the extCP instance. Shall be diff --git a/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml b/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml index 6ee93cc1..50f20ef7 100644 --- a/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml +++ b/src/SOL002/VNFFaultManagement/definitions/SOL002VNFFaultManagement_def.yaml @@ -4,8 +4,7 @@ definitions: Alarm: description: > - The alarm data type encapsulates information about an alarm. It shall comply with the provisions defined in - table 7.5.2.4-1. + The alarm data type encapsulates information about an alarm. If the attribute "faultType" has the value "NFVI_OAM_VIRTUALISED_RESOURCE_STATE_CHANGE", the following provisions apply for the values of the attribute "faultDetails" related to @@ -310,8 +309,7 @@ definitions: FmNotificationsFilter: description: > - This type represents a subscription filter related to notifications about VNF faults. - It shall comply with the provisions defined in table 7.5.3.2-1. + This type represents a subscription filter related to notifications about VNF faults. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical "and" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array diff --git a/src/SOL002/VNFIndicator/definitions/SOL002VNFIndicator_def.yaml b/src/SOL002/VNFIndicator/definitions/SOL002VNFIndicator_def.yaml index bd2ab00c..7d4c4154 100644 --- a/src/SOL002/VNFIndicator/definitions/SOL002VNFIndicator_def.yaml +++ b/src/SOL002/VNFIndicator/definitions/SOL002VNFIndicator_def.yaml @@ -4,7 +4,7 @@ definitions: VnfIndicator: description: > - This type represents a VNF indicator value. It shall comply with the provisions defined in table 8.5.2.2-1. + This type represents a VNF indicator value. NOTE: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications. type: object @@ -50,8 +50,7 @@ definitions: VnfIndicatorNotificationsFilter: description: > - This type represents a subscription filter for notifications related to VNF indicators. - It shall comply with the provisions defined in table 8.5.3.2-1. + This type represents a subscription filter for notifications related to VNF indicators. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical "and" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of diff --git a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml index cf01a164..def2b906 100644 --- a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml +++ b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml @@ -1013,6 +1013,8 @@ definitions: $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/IdentifierInVim" ExtManagedVirtualLinkInfo: + description: > + This type represents an externally-managed internal VL. type: object required: - id @@ -1813,6 +1815,7 @@ definitions: type: string enum: - ADDED + - MODIFIED - REMOVED extCpInstanceId: description: > @@ -1901,6 +1904,8 @@ definitions: $ref: "#/definitions/VnfcInfoModifications" CreateVnfRequest: + description: > + This type represents request parameters for the "Create VNF identifier" operation. type: object required: - vnfdId @@ -1927,8 +1932,7 @@ definitions: ScaleVnfRequest: description: > - This type represents request parameters for the "Scale VNF" operation. It shall comply with the provisions defined in - table 5.5.2.5-1. See clause B.2 in annex B for an explanation of VNF scaling. + This type represents request parameters for the "Scale VNF" operation. type: object required: - type @@ -1967,7 +1971,6 @@ definitions: ScaleVnfToLevelRequest: description: > This type represents request parameters for the "Scale VNF to Level" operation. - It shall comply with the provisions defined in table 5.5.2.6-1. See clause B.2 for an explanation of VNF scaling. NOTE: Either the instantiationLevelId attribute or the scaleInfo attribute shall @@ -2091,7 +2094,7 @@ definitions: ExtVirtualLinkInfo: description: > - This type represents information about an external VL. It shall comply with the provisions defined in table 5.5.3.2-1. + This type represents information about an external VL. NOTE: This attribute reflects the current configuration information that has resulted from merging into this attribute the "VnfExtCpData" information which was passed as part of the "ExtVirtualLinkData" structure in the input of the @@ -2132,8 +2135,7 @@ definitions: VnfLinkPortInfo: description: > - This type represents a link port of an internal VL of a VNF. It shall comply with the provisions - defined in table 5.5.3.8 1. + This type represents a link port of an internal VL of a VNF. NOTE 1: Either cpInstanceId with cpInstanceType set to "EXT_CP" or any combination of cpInstanceId with cpInstanceType set to "VNFC_CP" and vipCpInstanceId (i.e. one or both of them) shall be @@ -2201,7 +2203,7 @@ definitions: ExtLinkPortInfo: description: > This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to - an NS VL. It shall comply with the provisions defined in table 5.5.3.9-1. + an NS VL. NOTE 1: The use cases UC#4 and UC#5 in clause A.4 of ETSI GS NFV-IFA 007 provide examples for such a configuration. NOTE 2: The value of "trunkResourceId" is scoped by the value of "vimConnectionId" in the "resourceHandle" attribute. @@ -2244,7 +2246,6 @@ definitions: CpProtocolInfo: description: > This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses. - It shall comply with the provisions defined in table 5.5.3.9b-1. NOTE: This attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over @@ -2270,8 +2271,7 @@ definitions: IpOverEthernetAddressInfo: description: > - This type represents information about a network address that has been assigned. - It shall comply with the provisions defined in table 5.5.3.10-1. + This type represents information about a network address that has been assigned. NOTE 1: At least one of "macAddress" or "ipAddresses" shall be present. NOTE 2: Exactly one of "addresses" or "addressRange" shall be present. @@ -2387,8 +2387,7 @@ definitions: LifecycleChangeNotificationsFilter: description: > - This type represents a subscription filter related to notifications about VNF lifecycle changes. - It shall comply with the provisions defined in table 5.5.3.12-1. + This type represents a subscription filter related to notifications about VNF lifecycle changes. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical "and" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array @@ -2466,8 +2465,7 @@ definitions: VnfExtCpInfo: description: > - This type represents information about an external CP of a VNF. - It shall comply with the provisions defined in table 5.5.3.17 1. + This type represents information about an external CP of a VNF. NOTE 1: The attributes "associatedVnfcCpId", "associatedVipCpId" and "associatedVnfVirtualLinkId" are mutually exclusive. Exactly one shall be present. @@ -2678,7 +2676,6 @@ definitions: when changing the current VNF package. The attributes that can be included consist of those requested to be modified explicitly in the "ChangeCurrentVnfPkgRequest" data structure, and additional attributes of the "VnfInstance" data structure that were modified implicitly during the operation. - The "ModificationsTriggeredByVnfPkgChange" data type shall comply with the provisions defined in table 5.5.3.21-1. NOTE 1: This attribute represents the delta (semantics as per IETF RFC 7396, JSON Merge Patch) between the value of the attribute at the start of the "Change current VNF package" operation and the value of the attribute @@ -2788,8 +2785,7 @@ definitions: VipCpInfo: description: > - This type provides information related to virtual IP (VIP) CP. It shall comply with the provisions - defined in table 5.5.3.28-1. + This type provides information related to virtual IP (VIP) CP. NOTE 1: It is possible that there is no associated VnfcCp because the VIP CP is available but not associated yet. diff --git a/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml b/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml index b457282f..8ea5be12 100644 --- a/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml +++ b/src/SOL002/VNFPerformanceManagement/definitions/SOL002VNFPerformanceManagement_def.yaml @@ -109,7 +109,7 @@ definitions: PerformanceReport: description: > This type defines the format of a performance report provided by the VNFM to the NFVO as a result of collecting - performance information as part of a PM job. The type shall comply with the provisions defined in table 6.5.2.10-1. + performance information as part of a PM job. NOTE: The sub-object allows to structure the measured object but is not to be confused with sub-counters which allow to structure the measurement value. @@ -289,7 +289,7 @@ definitions: PmJobModifications: description: > - This type represents modifications to a PM job. It shall comply with the provisions defined in table 6.5.2.12-1. + This type represents modifications to a PM job. NOTE: At least one of the attributes defined in this type shall be present in request bodies. type: object @@ -314,7 +314,7 @@ definitions: PmJobCriteria: description: > - This type represents collection criteria for PM jobs. It shall comply with the provisions defined in table 6.5.3.3-1. + This type represents collection criteria for PM jobs. NOTE 1: At the end of each reportingPeriod, the API producer will inform the API consumer about availability of the performance data collected for each completed collection period during this reportingPeriod. @@ -438,7 +438,7 @@ definitions: ThresholdModifications: description: > - This type represents modifications to a threshold. It shall comply with the provisions defined in table 6.5.2.11-1. + This type represents modifications to a threshold. NOTE: At least one of the attributes defined in this type shall be present in request bodies. type: object @@ -462,7 +462,7 @@ definitions: ThresholdCriteria: description: > - This type represents criteria that define a threshold. It shall comply with the provisions defined in table 6.5.3.4-1. + This type represents criteria that define a threshold. NOTE 1: In the present document, simple thresholds are defined. The definition of additional threshold types is left for future specification. diff --git a/src/SOL002/VNFPerformanceManagementNotification/definitions/SOL002VNFPerformanceManagementNotification_def.yaml b/src/SOL002/VNFPerformanceManagementNotification/definitions/SOL002VNFPerformanceManagementNotification_def.yaml index 3fafae20..c03b7b9d 100644 --- a/src/SOL002/VNFPerformanceManagementNotification/definitions/SOL002VNFPerformanceManagementNotification_def.yaml +++ b/src/SOL002/VNFPerformanceManagementNotification/definitions/SOL002VNFPerformanceManagementNotification_def.yaml @@ -92,8 +92,7 @@ definitions: ThresholdCrossedNotification: description: > - This type represents a notification that is sent when a threshold has been crossed. - It shall comply with the provisions defined in table 6.5.2.4-1. + This type represents a notification that is sent when a threshold has been crossed. NOTE: The timing of sending this notification is determined by the capability of the producing entity to evaluate the threshold crossing condition. diff --git a/src/SOL003/General_Definitions/SOL003_def.yaml b/src/SOL003/General_Definitions/SOL003_def.yaml index e20b1a6d..ff668eef 100644 --- a/src/SOL003/General_Definitions/SOL003_def.yaml +++ b/src/SOL003/General_Definitions/SOL003_def.yaml @@ -407,7 +407,6 @@ definitions: type: string enum: - IP_OVER_ETHERNET - - IP_FOR_VIRTUAL_CP ipOverEthernet: description: > Network address data for IP over Ethernet to assign to the external CP diff --git a/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml b/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml index 4b1a39cc..f322e0d8 100644 --- a/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml +++ b/src/SOL003/VNFFaultManagement/definitions/SOL003VNFFaultManagement_def.yaml @@ -284,8 +284,7 @@ definitions: FmNotificationsFilter: description: > - This type represents a subscription filter related to notifications about VNF faults. - It shall comply with the provisions defined in table 7.5.3.2-1. + This type represents a subscription filter related to notifications about VNF faults. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical "and" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array diff --git a/src/SOL003/VNFIndicator/definitions/SOL003VNFIndicator_def.yaml b/src/SOL003/VNFIndicator/definitions/SOL003VNFIndicator_def.yaml index 887a492d..5ad57db1 100644 --- a/src/SOL003/VNFIndicator/definitions/SOL003VNFIndicator_def.yaml +++ b/src/SOL003/VNFIndicator/definitions/SOL003VNFIndicator_def.yaml @@ -4,7 +4,7 @@ definitions: VnfIndicator: description: > - This type represents a VNF indicator value. It shall comply with the provisions defined in table 8.5.2.2-1. + This type represents a VNF indicator value. NOTE: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications. type: object @@ -50,8 +50,7 @@ definitions: VnfIndicatorNotificationsFilter: description: > - This type represents a subscription filter for notifications related to VNF indicators. - It shall comply with the provisions defined in table 8.5.3.2-1. + This type represents a subscription filter for notifications related to VNF indicators. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical "and" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of @@ -152,7 +151,7 @@ definitions: VnfIndicatorValueChangeNotification: description: > - This type represents a VNF indicator value change notification. It shall comply with the provisions defined in table 8.5.2.5-1. + This type represents a VNF indicator value change notification. The notification shall be triggered by the VNFM when the value of an indicator has changed. NOTE: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications. @@ -226,7 +225,7 @@ definitions: SupportedIndicatorsChangeNotification: description: > This type represents a notification to inform the receiver that the set of indicators supported - by a VNF instance has changed. It shall comply with the provisions defined in table 8.5.2.6-1. + by a VNF instance has changed. The notification shall be triggered by the VNFM when the set of supported VNF indicators has changed as a side effect of the "Change current VNF package" operation. It may be triggered by the VNFM when diff --git a/src/SOL003/VNFIndicatorNotification/definitions/SOL003VNFIndicatorNotification_def.yaml b/src/SOL003/VNFIndicatorNotification/definitions/SOL003VNFIndicatorNotification_def.yaml index aa004ddb..0346e792 100644 --- a/src/SOL003/VNFIndicatorNotification/definitions/SOL003VNFIndicatorNotification_def.yaml +++ b/src/SOL003/VNFIndicatorNotification/definitions/SOL003VNFIndicatorNotification_def.yaml @@ -4,7 +4,7 @@ definitions: VnfIndicatorValueChangeNotification: description: > - This type represents a VNF indicator value change notification. It shall comply with the provisions defined in table 8.5.2.5-1. + This type represents a VNF indicator value change notification. The notification shall be triggered by the VNFM when the value of an indicator has changed. NOTE: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications. @@ -78,7 +78,7 @@ definitions: SupportedIndicatorsChangeNotification: description: > This type represents a notification to inform the receiver that the set of indicators supported - by a VNF instance has changed. It shall comply with the provisions defined in table 8.5.2.6-1. + by a VNF instance has changed. The notification shall be triggered by the VNFM when the set of supported VNF indicators has changed as a side effect of the "Change current VNF package" operation. It may be triggered by the VNFM when diff --git a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml index 387e8c05..da895222 100644 --- a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml +++ b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml @@ -4,8 +4,7 @@ definitions: InstantiateVnfRequest: description: > - This type represents request parameters for the "Instantiate VNF" operation. - It shall comply with the provisions defined in table 5.5.2.4-1. + This type represents request parameters for the "Instantiate VNF" operation. NOTE 1: The indication of externally-managed internal VLs is needed in case networks have been pre-configured for use with certain VNFs, for instance @@ -140,8 +139,7 @@ definitions: ChangeVnfFlavourRequest: description: > - This type represents request parameters for the "Change VNF flavour" operation. - It shall comply with the provisions defined in table 5.5.2.7-1. + This type represents request parameters for the "Change VNF flavour" operation. NOTE 1: The indication of externally-managed internal VLs is needed in case networks have been pre-configured for use with certain VNFs, for instance to ensure @@ -219,8 +217,7 @@ definitions: TerminateVnfRequest: description: > - This type represents request parameters for the "Terminate VNF" operation. - It shall comply with the provisions defined in table 5.5.2.8-1. + This type represents request parameters for the "Terminate VNF" operation. NOTE: If the VNF is still in service, requesting forceful termination can adversely impact network service. @@ -281,8 +278,7 @@ definitions: OperateVnfRequest: description: > - This type represents request parameters for the "Operate VNF" operation. - It shall comply with the provisions defined in table 5.5.2.10-1. + This type represents request parameters for the "Operate VNF" operation. NOTE: The "stopType" and "gracefulStopTimeout" attributes shall be absent, when the "changeStateTo" attribute is equal to "STARTED". @@ -362,8 +358,7 @@ definitions: ChangeCurrentVnfPkgRequest: description: > This type represents request parameters for the "Change current VNF package" - operation to replace the VNF package on which a VNF instance is based. - It shall comply with the provisions defined in table 5.5.2.11a-1. + operation to replace the VNF package on which a VNF instance is based. NOTE 1: The indication of externally-managed internal VLs is needed in case networks have been pre-configured for use with certain VNFs, for instance to ensure @@ -490,8 +485,6 @@ definitions: to be modified explicitly in the "VnfInfoModificationRequest" data structure, and additional attributes of the "VnfInstance" data structure that were modified implicitly e.g. when modifying the referenced VNF package. - The "VnfInfoModifications" data type shall comply with the provisions defined in table - 5.5.2.12a-1. NOTE: If present, this attribute (which depends on the value of the "vnfdId" attribute) was modified implicitly following a request to modify the "vnfdId" attribute, by @@ -580,7 +573,6 @@ definitions: LCM operation which takes a snapshot of a VNF instance and populates a previously-created "Individual VNF snapshot" resource with the content of the snapshot. - It shall comply with the provisions defined in table 5.5.2.21-1. type: object required: - vnfSnapshotResId @@ -605,8 +597,7 @@ definitions: description: | This type represents request parameters for the creation of an "Individual VNF snapshot" resource which can be populated with content obtained by invoking the "Create VNF snapshot" - LCM operation or extracted from a VNF snapshot package. It shall comply with the provisions - defined in table 5.5.2.20-1. + LCM operation or extracted from a VNF snapshot package. NOTE: The present attribute shall be provided if the "Individual VNF snapshot" resource is requested to be created as part of a VNF snapshot package extraction. @@ -664,8 +655,7 @@ definitions: This type represents attribute modifications that were performed on an "Individual VNF snapshot" resource. The attributes that can be included consist of those requested to be modified explicitly in the "VnfSnapshotInfoModificationRequest" data structure, and additional attributes of the - "VnfSnapshotInfo" data structure that were modified implicitly. The "VnfSnapshotInfoModifications" - data type shall comply with the provisions defined in table 5.5.2.25-1. + "VnfSnapshotInfo" data structure that were modified implicitly. type: object properties: vnfSnapshotPkgId: @@ -681,7 +671,7 @@ definitions: VnfInstance: description: > - This type represents a VNF instance. It shall comply with the provisions defined in table 5.5.2.2-1. + This type represents a VNF instance. NOTE: Clause B.3.2 provides examples illustrating the relationship among the different run-time information elements (CP, VL and link ports) used to represent the connectivity of a VNF. @@ -720,6 +710,7 @@ definitions: - vnfSoftwareVersion - vnfdVersion - instantiationState + - _links properties: id: description: > @@ -818,6 +809,7 @@ definitions: required: - flavourId - vnfState + - extCpInfo properties: flavourId: description: > @@ -1133,8 +1125,7 @@ definitions: VnfcResourceInfo: description: > This type represents the information on virtualised compute and storage resources - used by a VNFC in a VNF instance. It shall comply with the provisions defined in - table 5.5.3.5-1. + used by a VNFC in a VNF instance. NOTE 1: ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD based on TOSCA specifications. @@ -1248,7 +1239,6 @@ definitions: VnfSnapshotInfo: description: > This type represents an "Individual VNF snapshot" resource. - It shall comply with the provisions defined in table 5.5.2.22-1. type: object required: - id @@ -1312,7 +1302,6 @@ definitions: VnfSnapshot: description: > This type represents a VNF snapshot. - It shall comply with the provisions defined in table 5.5.2.23-1. type: object required: - id @@ -1385,7 +1374,7 @@ definitions: VnfcSnapshotInfo: description: > - This type represents a VNFC snapshot. It shall comply with the provisions defined in table 5.5.3.19-1. + This type represents a VNFC snapshot. NOTE 1: The identifier of the compute snapshot resource is assigned during creation of a VNFC snapshot being returned from the VIM as output data in the response message of the individual resource @@ -1518,8 +1507,7 @@ definitions: AffectedVnfc: description: > - This type provides information about added, deleted, modified and temporary VNFCs. - It shall comply with the provisions in table 5.5.3.13-1. + This type provides information about added, deleted, modified and temporary VNFCs. NOTE: The "resourceDefinitionId" attribute provides information to the API consumer (i.e. the NFVO) to assist in correlating the resource changes performed during @@ -1619,8 +1607,7 @@ definitions: VnfLcmOpOcc: description: > - This type represents a VNF lifecycle management operation occurrence. - It shall comply with the provisions defined in table 5.5.2.13-1. + This type represents a VNF lifecycle management operation occurrence. NOTE 1: This allows the NFVO to obtain the information contained in the latest "result" notification if it has not received it due to an error or a @@ -1951,8 +1938,7 @@ definitions: AffectedExtLinkPort: description: > - This type provides information about added and deleted external link ports (link ports attached to external virtual links). - It shall comply with the provisions in table 5.5.3.14a-1. + This type provides information about added and deleted external link ports (link ports attached to external virtual links). NOTE: The "resourceDefinitionId" attribute provides information to the API consumer (i.e. the NFVO) to assist in correlating the resource changes performed during the LCM operation with the granted resources in a specific Grant exchange, which @@ -1980,6 +1966,7 @@ definitions: type: string enum: - ADDED + - MODIFIED - REMOVED extCpInstanceId: description: > @@ -2091,8 +2078,7 @@ definitions: AffectedVirtualStorage: description: > - This type provides information about added, deleted, modified and temporary virtual storage resources. - It shall comply with the provisions in table 5.5.3.15-1. + This type provides information about added, deleted, modified and temporary virtual storage resources. NOTE: The "resourceDefinitionId" attribute provides information to the API consumer (i.e. the NFVO) to assist in correlating the resource changes performed during the LCM operation with the granted @@ -2160,6 +2146,8 @@ definitions: $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/KeyValuePairs" CreateVnfRequest: + description: > + This type represents request parameters for the "Create VNF identifier" operation. type: object required: - vnfdId @@ -2225,6 +2213,8 @@ definitions: - FORCEFUL ScaleVnfRequest: + description: > + This type represents request parameters for the "Scale VNF" operation. type: object required: - type @@ -2263,8 +2253,6 @@ definitions: ScaleVnfToLevelRequest: description: > This type represents request parameters for the "Scale VNF to Level" operation. - It shall comply with the provisions defined in table 5.5.2.6-1. See clause B.2 - for an explanation of VNF scaling. NOTE: Either the instantiationLevelId attribute or the scaleInfo attribute shall be included. @@ -2333,7 +2321,6 @@ definitions: LifecycleChangeNotificationsFilter: description: > This type represents a subscription filter related to notifications about VNF lifecycle changes. - It shall comply with the provisions defined in table 5.5.3.12-1. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical "and" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array @@ -2471,8 +2458,7 @@ definitions: VnfExtCpInfo: description: > - This type represents information about an external CP of a VNF. - It shall comply with the provisions defined in table 5.5.3.17 1. + This type represents information about an external CP of a VNF. NOTE 1: The attributes "associatedVnfcCpId", "associatedVipCpId" and "associatedVnfVirtualLinkId" are mutually exclusive. Exactly one shall be present. @@ -2548,8 +2534,7 @@ definitions: CpProtocolInfo: description: > - This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses. - It shall comply with the provisions defined in table 5.5.3.9b-1. + This type describes the protocol layer(s) that a CP uses together with protocol-related information, like addresses. NOTE: This attribute allows to signal the addition of further types of layer and protocol in future versions of the present document in a backwards-compatible way. In the current version of the present document, only IP over @@ -2576,8 +2561,7 @@ definitions: IpOverEthernetAddressInfo: description: > - This type represents information about a network address that has been assigned. - It shall comply with the provisions defined in table 5.5.3.10-1. + This type represents information about a network address that has been assigned. NOTE 1: At least one of "macAddress" or "ipAddresses" shall be present. NOTE 2: Exactly one of "addresses" or "addressRange" shall be present. @@ -2666,8 +2650,7 @@ definitions: VipCpInfo: description: > - This type provides information related to virtual IP (VIP) CP. It shall comply with the provisions - defined in table 5.5.3.28-1. + This type provides information related to virtual IP (VIP) CP. NOTE 1: It is possible that there is no associated VnfcCp because the VIP CP is available but not associated yet. @@ -2726,7 +2709,7 @@ definitions: ExtVirtualLinkInfo: description: > - This type represents information about an external VL. It shall comply with the provisions defined in table 5.5.3.2-1. + This type represents information about an external VL. NOTE: This attribute reflects the current configuration information that has resulted from merging into this attribute the "VnfExtCpData" information which was passed as part of the "ExtVirtualLinkData" structure in the input of the @@ -2768,7 +2751,7 @@ definitions: ExtLinkPortInfo: description: > This type represents information about a link port of an external VL, i.e. a port providing connectivity for the VNF to - an NS VL. It shall comply with the provisions defined in table 5.5.3.9-1. + an NS VL. NOTE 1: The use cases UC#4 and UC#5 in clause A.4 of ETSI GS NFV-IFA 007 provide examples for such a configuration. NOTE 2: The value of "trunkResourceId" is scoped by the value of "vimConnectionId" in the "resourceHandle" attribute. @@ -2837,8 +2820,7 @@ definitions: VnfLinkPortInfo: description: > - This type represents a link port of an internal VL of a VNF. It shall comply with the provisions - defined in table 5.5.3.8 1. + This type represents a link port of an internal VL of a VNF. NOTE 1: Either cpInstanceId with cpInstanceType set to "EXT_CP" or any combination of cpInstanceId with cpInstanceType set to "VNFC_CP" and vipCpInstanceId (i.e. one or both of them) shall be @@ -2949,7 +2931,6 @@ definitions: when changing the current VNF package. The attributes that can be included consist of those requested to be modified explicitly in the "ChangeCurrentVnfPkgRequest" data structure, and additional attributes of the "VnfInstance" data structure that were modified implicitly during the operation. - The "ModificationsTriggeredByVnfPkgChange" data type shall comply with the provisions defined in table 5.5.3.21-1. NOTE 1: This attribute represents the delta (semantics as per IETF RFC 7396, JSON Merge Patch) between the value of the attribute at the start of the "Change current VNF package" operation and the value of the attribute diff --git a/src/SOL003/VNFLifecycleManagementNotification/definitions/SOL003VNFLifecycleManagementNotification_def.yaml b/src/SOL003/VNFLifecycleManagementNotification/definitions/SOL003VNFLifecycleManagementNotification_def.yaml index 4888c017..51926089 100644 --- a/src/SOL003/VNFLifecycleManagementNotification/definitions/SOL003VNFLifecycleManagementNotification_def.yaml +++ b/src/SOL003/VNFLifecycleManagementNotification/definitions/SOL003VNFLifecycleManagementNotification_def.yaml @@ -96,7 +96,6 @@ definitions: description: > This type represents a VNF lifecycle management operation occurrence notification, which informs the receiver of changes in the VNF lifecycle caused by a VNF LCM operation occurrence. - It shall comply with the provisions defined in table 5.5.2.17-1. The support of the notification is mandatory. This notification shall be triggered by the VNFM when there is a change in the state of a VNF LCM diff --git a/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml b/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml index 892a2bac..67958e16 100644 --- a/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml +++ b/src/SOL003/VNFLifecycleOperationGranting/definitions/SOL003VNFLifecycleOperationGranting_def.yaml @@ -4,7 +4,7 @@ definitions: GrantRequest: description: > - This type represents a grant request. It shall comply with the provisions defined in table 9.5.2.2-1. + This type represents a grant request. NOTE 1: The VNF LCM operations CreateVnfIdentifier, DeleteVnfIdentifier, QueryVnf and ModifyVnfInformation can be executed by the VNFM without requesting granting. @@ -87,9 +87,9 @@ definitions: type: boolean instantiationLevelId: description: > - If operation=INSTANTIATE, the identifier of the instantiation level may be provided as an - alternative way to define the resources to be added. This attribute shall only be used if - operation=INSTANTIATE. See note 2. + If operation=INSTANTIATE, the identifier of the instantiation level may be provided as an + alternative way to define the resources to be added. This attribute shall only be used if + operation=INSTANTIATE. See note 2. $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Identifier" addResources: description: > @@ -383,8 +383,7 @@ definitions: ResourceDefinition: description: > - This type provides information of an existing or proposed resource used by the VNF. - It shall comply with the provisions defined in table 9.5.3.2-1. + This type provides information of an existing or proposed resource used by the VNF. NOTE 1: The use cases UC#4 and UC#5 in Annex A.4 of ETSI GS NFV-IFA 007 provide examples for such a configuration. @@ -398,6 +397,7 @@ definitions: required: - id - type + - resourceTemplateId properties: id: description: > @@ -804,8 +804,7 @@ definitions: SnapshotResourceDefinition: description: > - This type represents resource definition information related to a snapshot resource. - It shall comply with the provisions defined in table 9.5.3.11-1. + This type represents resource definition information related to a snapshot resource. NOTE 1: If present, the value of the "vduId" (for a related VDU) in the "VnfcResourceInfo" referred by the "vnfcInfoId" of the "VnfcSnapshotInfo" shall match the value of the diff --git a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml index de13c881..8402a141 100644 --- a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml +++ b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml @@ -4,7 +4,7 @@ definitions: VnfPkgInfo: description: > - This type represents the information of a VNF package. It shall comply with the provisions defined in table 10.5.2.2-1. + This type represents the information of a VNF package. NOTE 1: If the value of the onboardingState attribute is not equal to "ONBOARDED", the value of the operationalState attribute shall be equal to "DISABLED". @@ -14,6 +14,7 @@ definitions: type: object required: - id + - onboardingState - operationalState - usageState - _links @@ -229,8 +230,7 @@ definitions: VnfPackageSoftwareImageInfo: description: > - This type represents an artifact contained in or external to a VNF package which represents a software image. - It shall comply with the provisions defined in table 10.5.3.2-1. + This type represents an artifact contained in or external to a VNF package which represents a software image. NOTE 1: The list of permitted values was taken from "Container formats" in OpenStack® documentation: "Disk and container formats for images" (Available at https://docs.openstack.org/glance/pike/user/formats.html). @@ -460,8 +460,7 @@ definitions: PkgmNotificationsFilter: description: > - This type represents a subscription filter related to notifications related to VNF package management. - It shall comply with the provisions defined in table 10.5.3.4-1. + This type represents a subscription filter related to notifications related to VNF package management. At a particular nesting level in the filter structure, the following applies: All attributes shall match in order for the filter to match (logical "and" between different filter attributes). If an attribute is an array, the attribute shall match if at least one of the values in the array matches (logical "or" diff --git a/src/SOL003/VNFPerformanceManagement/definitions/SOL003VNFPerformanceManagement_def.yaml b/src/SOL003/VNFPerformanceManagement/definitions/SOL003VNFPerformanceManagement_def.yaml index 5de311d3..2a52cab1 100644 --- a/src/SOL003/VNFPerformanceManagement/definitions/SOL003VNFPerformanceManagement_def.yaml +++ b/src/SOL003/VNFPerformanceManagement/definitions/SOL003VNFPerformanceManagement_def.yaml @@ -109,7 +109,7 @@ definitions: PerformanceReport: description: > This type defines the format of a performance report provided by the VNFM to the NFVO as a result of collecting - performance information as part of a PM job. The type shall comply with the provisions defined in table 6.5.2.10-1. + performance information as part of a PM job. NOTE: The sub-object allows to structure the measured object but is not to be confused with sub-counters which allow to structure the measurement value. @@ -289,7 +289,7 @@ definitions: PmJobModifications: description: > - This type represents modifications to a PM job. It shall comply with the provisions defined in table 6.5.2.12-1. + This type represents modifications to a PM job. NOTE: At least one of the attributes defined in this type shall be present in request bodies. type: object @@ -314,7 +314,7 @@ definitions: PmJobCriteria: description: > - This type represents collection criteria for PM jobs. It shall comply with the provisions defined in table 6.5.3.3-1. + This type represents collection criteria for PM jobs. NOTE 1: At the end of each reportingPeriod, the API producer will inform the API consumer about availability of the performance data collected for each completed collection period during this reportingPeriod. @@ -438,7 +438,7 @@ definitions: ThresholdModifications: description: > - This type represents modifications to a threshold. It shall comply with the provisions defined in table 6.5.2.11-1. + This type represents modifications to a threshold. NOTE: At least one of the attributes defined in this type shall be present in request bodies. type: object @@ -462,7 +462,7 @@ definitions: ThresholdCriteria: description: > - This type represents criteria that define a threshold. It shall comply with the provisions defined in table 6.5.3.4-1. + This type represents criteria that define a threshold. NOTE 1: In the present document, simple thresholds are defined. The definition of additional threshold types is left for future specification. diff --git a/src/SOL003/VNFPerformanceManagementNotification/definitions/SOL003VNFPerformanceManagementNotification_def.yaml b/src/SOL003/VNFPerformanceManagementNotification/definitions/SOL003VNFPerformanceManagementNotification_def.yaml index 22f4f694..c017f620 100644 --- a/src/SOL003/VNFPerformanceManagementNotification/definitions/SOL003VNFPerformanceManagementNotification_def.yaml +++ b/src/SOL003/VNFPerformanceManagementNotification/definitions/SOL003VNFPerformanceManagementNotification_def.yaml @@ -98,8 +98,7 @@ definitions: ThresholdCrossedNotification: description: > - This type represents a notification that is sent when a threshold has been crossed. - It shall comply with the provisions defined in table 6.5.2.4-1. + This type represents a notification that is sent when a threshold has been crossed. NOTE: The timing of sending this notification is determined by the capability of the producing entity to evaluate the threshold crossing condition. diff --git a/src/SOL003/VNFSnapshotPackageManagement/definitions/SOL003VNFSnapshotPackageManagement_def.yaml b/src/SOL003/VNFSnapshotPackageManagement/definitions/SOL003VNFSnapshotPackageManagement_def.yaml index 3b205586..7c6c1e95 100644 --- a/src/SOL003/VNFSnapshotPackageManagement/definitions/SOL003VNFSnapshotPackageManagement_def.yaml +++ b/src/SOL003/VNFSnapshotPackageManagement/definitions/SOL003VNFSnapshotPackageManagement_def.yaml @@ -4,7 +4,7 @@ definitions: VnfSnapshotPkgInfo: description: > - This type represents the information of a VNF snapshot package. It shall comply with the provisions defined in table 12.5.2.2-1. + This type represents the information of a VNF snapshot package. NOTE: The attribute shall not be present before the VNF snapshot package content has been uploaded or built. Otherwise, this attribute shall be present unless it has been requested to be excluded per attribute selector. @@ -178,8 +178,7 @@ definitions: VnfcSnapshotImageInfo: description: > - This type represents an artifact contained in a VNF snapshot package which represents a snapshot image. - It shall comply with the provisions defined in table 12.5.3.2-1. + This type represents an artifact contained in a VNF snapshot package which represents a snapshot image. NOTE 1: The list of permitted values was taken from "Container formats" in OpenStack® documentation: "Disk and container formats for images" (Available at https://docs.openstack.org/glance/pike/user/formats.html). -- GitLab From 728e0e064e7be2424da99f06e45d8ee65c4aab75 Mon Sep 17 00:00:00 2001 From: Ayesha Ayub Date: Thu, 17 Nov 2022 17:25:01 +0500 Subject: [PATCH 26/27] resolve issues raised by Vlademir in SOL002 and SOL003 v3.7.1 --- .../General_Definitions/SOL002_def.yaml | 85 ------------------- .../VNFFaultManagement.yaml | 4 +- src/SOL002/VNFIndicator/VNFIndicator.yaml | 6 +- .../VNFLCMCoordination.yaml} | 6 +- .../SOL002VNFLCMCoordination_def.yaml} | 0 .../VNFLifecycleManagement.yaml | 6 +- .../SOL002VNFLifecycleManagement_def.yaml | 15 ++-- .../VNFPerformanceManagement.yaml | 4 +- .../VNFFaultManagement.yaml | 4 +- src/SOL003/VNFIndicator/VNFIndicator.yaml | 6 +- .../VNFLifecycleManagement.yaml | 6 +- .../SOL003VNFLifecycleManagement_def.yaml | 2 +- .../VNFLifecycleOperationGranting.yaml | 2 +- .../VNFPackageManagement.yaml | 2 +- .../SOL003VNFPackageManagement_def.yaml | 1 + .../VNFPerformanceManagement.yaml | 4 +- ...edResourcesQuotaAvailableNotification.yaml | 8 +- src/responses/SOL002SOL003_resp.yaml | 79 +++++++++-------- 18 files changed, 80 insertions(+), 160 deletions(-) rename src/SOL002/{VNFLifecycleCoordination/VNFLifecycleCoordination.yaml => VNFLCMCoordination/VNFLCMCoordination.yaml} (98%) rename src/SOL002/{VNFLifecycleCoordination/definitions/SOL002VNFLifecycleCoordination_def.yaml => VNFLCMCoordination/definitions/SOL002VNFLCMCoordination_def.yaml} (100%) diff --git a/src/SOL002/General_Definitions/SOL002_def.yaml b/src/SOL002/General_Definitions/SOL002_def.yaml index 4c8d848e..54e12613 100644 --- a/src/SOL002/General_Definitions/SOL002_def.yaml +++ b/src/SOL002/General_Definitions/SOL002_def.yaml @@ -185,91 +185,6 @@ definitions: items: type: string - VimConnectionInfo: - description: > - This type represents parameters to connect to a VIM, a CISM, a CIR or a MCIOP repository for managing - the resources of a VNF instance. - - This structure is used to convey VIM-related, CISM-related, CIR-related, or MCIOP-repository-relate - dparameters over the Or-Vnfm interface. Additional parameters for a VIM, a CISM, a CIR or a MCIOP - repository may be configured into the VNFM by means outside the scope of the present document and - bound to the identifier of that VIM. - - * NOTE 1: If applicable, this attribute also provides information about the resourceGroupIds - that are accessible using a particular set of credentials. See definition of - "resourceGroupId" in clause 9.5.3.3. - * NOTE 2: Once the connectivity between VNFM and VIM, CISM, CIR or MCIOP repository is provided - through a secure connection over HTTP Secure (HTTP over SSL/TLS), and the connection might also be - established through a VPN (for example TLS-based VPN tunnelling) for site-to-site connection, the - "accessInfo" JSON data structure, and the sensitive data related information ("username"/"password" as - required properties for authentication purpose), will be transmitted as plain text through a TLS tunnel - without additional encoding/encryption before transmitting it, making the sensitive data visible to the - endpoint. The base64 encoded certificates are only used by the VNFM to verify the authenticity of the - interface endpoint of the VIM., CISM, CIR or MCIOP repository. - type: object - required: - - vimType - properties: - vimId: - description: > - The identifier of the VIM, CISM, CIR or MCIOP repository - instance. This identifier is managed by the NFVO. - Shall be present to address additional information about - the VIM, CISM, CIR or MCIOP repository if such - information has been configured into the VNFM by - means outside the scope of the present document and - should be absent otherwise. - $ref: "#/definitions/Identifier" - vimType: - description: > - Discriminator for the different types of the VIM - information. - The value of this attribute determines the structure of the - "interfaceInfo" and "accessInfo" attributes, based on the - type of the VIM., CISM, CIR or MCIOP repository. - The set of permitted values is expected to change over - time as new types or versions of VIMs become available. - The ETSI NFV registry of VIM-related information [i.3] - provides access to information about VimConnectionInfo - definitions for various VIM, CISM, CIR or MCIOP - repository types. The structure of the registry is defined in - annex C. - type: string - interfaceInfo: - description: > - Information about the interface or interfaces to the VIM, - CISM, CIR or MCIOP repository, if applicable, such as - the URI of an interface endpoint to communicate with the - VIM, CISM, CIR or MCIOP repository. The applicable - keys are dependent on the content of vimType. - Alternatively, such information may have been configured - into the VNFM and bound to the vimId. - $ref: "#/definitions/KeyValuePairs" - accessInfo: - description: > - Authentication credentials for accessing the VIM, CISM, - CIR or MCIOP repository and other access-related - information such as tenants or infrastructure resource - groups (see note 1). The applicable keys are dependent - on the content of vimType. - If the VimConnectionInfo structure is part of an HTTP - response payload body, sensitive attributes that are - children of this attributes (such as passwords) shall not - be included. - If the VimConnectionInfo structure is part of an HTTP - request payload body, sensitive attributes that are - children of this attribute (such as passwords) shall be - present if they have not been provisioned out of band. - See note 2. - $ref: "#/definitions/KeyValuePairs" - extra: - description: > - VIM, CISM, CIR or MCIOP repository type specific - additional information. The applicable structure, and - whether or not this attribute is available, is dependent on - the content of vimType. - $ref: "#/definitions/KeyValuePairs" - ResourceHandle: required: - resourceId diff --git a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml index 6d9c762e..9f2c532d 100644 --- a/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL002/VNFFaultManagement/VNFFaultManagement.yaml @@ -380,7 +380,7 @@ components: description: | Identifier of the alarm. This identifier can be retrieved from the "id" attribute of the "alarm" attribute in the AlarmNotification or AlarmClearedNotification. It can also be retrieved from the "id" attribute of - the applicable array element in the payload body of the response to a GET request to the "Alarms" resource. + the applicable array element in the message content of the response to a GET request to the "Alarms" resource. required: true style: simple explode: false @@ -393,7 +393,7 @@ components: description: | Identifier of this subscription. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new subscription resource. It can also be retrieved - from the "id" attribute in the payload body of that response. + from the "id" attribute in the message content of that response. required: true style: simple explode: false diff --git a/src/SOL002/VNFIndicator/VNFIndicator.yaml b/src/SOL002/VNFIndicator/VNFIndicator.yaml index a0c6f59e..3c1c51ab 100644 --- a/src/SOL002/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL002/VNFIndicator/VNFIndicator.yaml @@ -342,7 +342,7 @@ components: Identifier of the VNF instance to which the VNF indicators applies. NOTE: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -354,6 +354,8 @@ components: in: path description: | Identifier of the VNF indicator. + This identifier can be retrieved from the resource referenced by the message content in the response to a + POST request creating a new "Individual VNF instance" resource. required: true style: simple explode: false @@ -367,7 +369,7 @@ components: Identifier of this subscription. NOTE: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new subscription resource. It can also be retrieved - from the "id" attribute in the payload body of that response. + from the "id" attribute in the message content of that response. required: true style: simple explode: false diff --git a/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml b/src/SOL002/VNFLCMCoordination/VNFLCMCoordination.yaml similarity index 98% rename from src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml rename to src/SOL002/VNFLCMCoordination/VNFLCMCoordination.yaml index a2793c11..997d4031 100644 --- a/src/SOL002/VNFLifecycleCoordination/VNFLifecycleCoordination.yaml +++ b/src/SOL002/VNFLCMCoordination/VNFLCMCoordination.yaml @@ -172,7 +172,7 @@ components: content: application/json: schema: - $ref: ./definitions/SOL002VNFLifecycleCoordination_def.yaml#/definitions/LcmCoordRequest + $ref: ./definitions/SOL002VNFLCMCoordination_def.yaml#/definitions/LcmCoordRequest required: true responses: @@ -221,7 +221,7 @@ components: content: application/json: schema: - $ref: ./definitions/SOL002VNFLifecycleCoordination_def.yaml#/definitions/LcmCoord + $ref: ./definitions/SOL002VNFLCMCoordination_def.yaml#/definitions/LcmCoord Coordination_async.Post.202: description: | @@ -418,7 +418,7 @@ components: content: application/json: schema: - $ref: ./definitions/SOL002VNFLifecycleCoordination_def.yaml#/definitions/LcmCoord + $ref: ./definitions/SOL002VNFLCMCoordination_def.yaml#/definitions/LcmCoord LcmCoord.Get.202: description: | diff --git a/src/SOL002/VNFLifecycleCoordination/definitions/SOL002VNFLifecycleCoordination_def.yaml b/src/SOL002/VNFLCMCoordination/definitions/SOL002VNFLCMCoordination_def.yaml similarity index 100% rename from src/SOL002/VNFLifecycleCoordination/definitions/SOL002VNFLifecycleCoordination_def.yaml rename to src/SOL002/VNFLCMCoordination/definitions/SOL002VNFLCMCoordination_def.yaml diff --git a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml index b13fe555..820f6bb4 100644 --- a/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL002/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -1316,7 +1316,7 @@ components: description: | Identifier of the VNF instance. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new VNF instance resource. It can also be retrieved - from the "id" attribute in the payload body of that response. + from the "id" attribute in the message content of that response. required: true style: simple explode: false @@ -1342,7 +1342,7 @@ components: description: | Identifier of this subscription. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new subscription resource. It can also be retrieved from - the "id" attribute in the payload body of that response. + the "id" attribute in the message content of that response. required: true style: simple explode: false @@ -1355,7 +1355,7 @@ components: description: | Identifier of the individual VNF snapshot resource. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new VNF snapshot resource. It can also be - retrieved from the "id" attribute in the payload body of that response. + retrieved from the "id" attribute in the message content of that response. required: true style: simple explode: false diff --git a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml index def2b906..74d4c5ed 100644 --- a/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml +++ b/src/SOL002/VNFLifecycleManagement/definitions/SOL002VNFLifecycleManagement_def.yaml @@ -5,6 +5,9 @@ definitions: VnfInstance: description: > This type represents a VNF instance. + * NOTE: Clause B.3.2 provides examples illustrating the relationship among the different run-time + data types (CP, VL and link ports) used to represent the connectivity of a VNF. + * NOTE 1: Modifying the value of this attribute shall not be performed when conflicts exist between the previous and the newly referred VNF package, i.e. when the new VNFD is changed with respect to the previous VNFD in other aspects than merely referencing @@ -1965,7 +1968,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the scaling process, specific to the VNF being scaled, as declared in the VNFD - as part of "ScaleVnfOpConfig" defined in ETSI GS NFV-IFA 011 [7]. + as part of "ScaleVnfOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" ScaleVnfToLevelRequest: @@ -2001,7 +2004,7 @@ definitions: description: > Additional parameters passed by the NFVO as input to the scaling process, specific to the VNF being scaled, as declared in the - VNFD as part of "ScaleVnfToLevelOpConfig" defined in ETSI GS NFV-IFA 011 [7]. + VNFD as part of "ScaleVnfToLevelOpConfig" defined in ETSI GS NFV-IFA 011. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/KeyValuePairs" CancelMode: @@ -2722,14 +2725,6 @@ definitions: description: > If present, this attribute signals the new value of the "vnfdVersion" attribute in "VnfInstance". See note 2. $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/Version" - vimConnectionInfo: - description: > - If present, this attribute signals the changes to VIM connection info that were passed in the related - "ChangeCurrentVnfPkgRequest" structure. The provisions for sensitive information defined in clause - 4.4.1.6 apply. - type: object - additionalProperties: - $ref: "../../General_Definitions/SOL002_def.yaml#/definitions/VimConnectionInfo" LcmOpOccNotificationVerbosityType: description: > diff --git a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 1a75bec0..6caf2bbc 100644 --- a/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL002/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -495,7 +495,7 @@ components: description: | Identifier of the PM job. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new PM job resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -519,7 +519,7 @@ components: description: | Identifier of the threshold. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new threshold resource. It can also be retrieved from - the "id" attribute in the payload body of that response. + the "id" attribute in the message content of that response. required: true style: simple explode: false diff --git a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml index e02bd04d..9b49837c 100644 --- a/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml +++ b/src/SOL003/VNFFaultManagement/VNFFaultManagement.yaml @@ -325,7 +325,7 @@ components: Identifier of the alarm. This identifier can be retrieved from the "id" attribute of the "alarm" attribute in the AlarmNotification or AlarmClearedNotification. It can also be retrieved from the "id" attribute of the applicable array element in - the payload body of the response to a GET request to the "Alarms" resource. + the message content of the response to a GET request to the "Alarms" resource. required: true style: simple explode: false @@ -340,7 +340,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual subscription" resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false diff --git a/src/SOL003/VNFIndicator/VNFIndicator.yaml b/src/SOL003/VNFIndicator/VNFIndicator.yaml index d2b6bf64..ec13a596 100644 --- a/src/SOL003/VNFIndicator/VNFIndicator.yaml +++ b/src/SOL003/VNFIndicator/VNFIndicator.yaml @@ -343,7 +343,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual VNF instance" resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -356,7 +356,7 @@ components: description: | Identifier of the VNF indicator. This identifier can be retrieved from the resource referenced by the - payload body in the response to a POST request creating a new "Individual VNF + message content in the response to a POST request creating a new "Individual VNF instance" resource. required: true style: simple @@ -372,7 +372,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual subscription" resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false diff --git a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml index e23d4da2..f68ba1b6 100644 --- a/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml +++ b/src/SOL003/VNFLifecycleManagement/VNFLifecycleManagement.yaml @@ -1367,7 +1367,7 @@ components: description: | Identifier of the VNF instance for the VNF snapshot to be reverted to. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual VNF instance" resource. - It can also be retrieved from the "id" attribute in the payload body of that response. + It can also be retrieved from the "id" attribute in the message content of that response. required: true style: simple explode: false @@ -1393,7 +1393,7 @@ components: description: | Identifier of this subscription. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new subscription resource. It can also be retrieved from - the "id" attribute in the payload body of that response. + the "id" attribute in the message content of that response. required: true style: simple explode: false @@ -1407,7 +1407,7 @@ components: Identifier of the "Individual VNF snapshot" resource. This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new VNF snapshot resource. It can also be retrieved from the "id" attribute in - the payload body of that response. + the message content of that response. required: true style: simple explode: false diff --git a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml index da895222..8a46fdc4 100644 --- a/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml +++ b/src/SOL003/VNFLifecycleManagement/definitions/SOL003VNFLifecycleManagement_def.yaml @@ -674,7 +674,7 @@ definitions: This type represents a VNF instance. NOTE: Clause B.3.2 provides examples illustrating the relationship among the different run-time - information elements (CP, VL and link ports) used to represent the connectivity of a VNF. + data types (CP, VL and link ports) used to represent the connectivity of a VNF. NOTE 1: Modifying the value of this attribute shall not be performed when conflicts exist between the previous and the newly referred VNF package, i.e. when the new VNFD is changed with diff --git a/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml b/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml index 2fafdf68..5a67a2c7 100644 --- a/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml +++ b/src/SOL003/VNFLifecycleOperationGranting/VNFLifecycleOperationGranting.yaml @@ -124,7 +124,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request granting a new VNF lifecycle operation. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false diff --git a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml index 1fb1ffac..1b74f2c3 100644 --- a/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml +++ b/src/SOL003/VNFPackageManagement/VNFPackageManagement.yaml @@ -890,7 +890,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual subscription" resource. It can also be retrieved from - the "id" attribute in the payload body of that response. + the "id" attribute in the message content of that response. required: true style: simple explode: false diff --git a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml index 8402a141..d66a2c25 100644 --- a/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml +++ b/src/SOL003/VNFPackageManagement/definitions/SOL003VNFPackageManagement_def.yaml @@ -420,6 +420,7 @@ definitions: Shall be present if the artifact is external to the package and shall be absent otherwise. EXAMPLE: https://example.com/m%40ster.sh + See note. type: array items: $ref: "../../General_Definitions/SOL003_def.yaml#/definitions/Uri" diff --git a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml index 178506e1..7e3a5469 100644 --- a/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml +++ b/src/SOL003/VNFPerformanceManagement/VNFPerformanceManagement.yaml @@ -463,7 +463,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual PM job" resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -489,7 +489,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual threshold" resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false diff --git a/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml b/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml index 3dfb64e6..2140a548 100644 --- a/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml +++ b/src/SOL003/VirtualisedResourcesQuotaAvailableNotification/VirtualisedResourcesQuotaAvailableNotification.yaml @@ -194,7 +194,7 @@ components: This identifier can be retrieved from the resource referenced by the "Location" HTTP header in the response to a POST request creating a new "Individual subscription" resource. It can also be retrieved from the "id" - attribute in the payload body of that response. + attribute in the message content of that response. required: true style: simple explode: false @@ -303,11 +303,11 @@ components: Subscriptions.Post.422: description: | - 422 Unprocessable Entity + 422 Unprocessable Content Shall be returned upon the following error: - The content type of the payload body is - supported and the payload body of a + The content type of the message content is + supported and the message content of a request contains syntactically correct data but the data cannot be processed. The general cause for this error and its diff --git a/src/responses/SOL002SOL003_resp.yaml b/src/responses/SOL002SOL003_resp.yaml index 78d92fe9..bf0abf02 100644 --- a/src/responses/SOL002SOL003_resp.yaml +++ b/src/responses/SOL002SOL003_resp.yaml @@ -77,14 +77,15 @@ components: "ProblemDetails" structure to be returned. If the request is malformed or syntactically incorrect (e.g. if the request URI contains incorrect - query parameters or the payload body contains a syntactically incorrect data structure), - the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided, - and should include in the "detail" attribute more information about the source of the problem. + query parameters or the message content contains a syntactically incorrect data structure), + the API producer shall respond with this response code. More details are defined in IETF RFC 9110. + The "ProblemDetails" structure shall be provided, and should include in the "detail" attribute more + information about the source of the problem. If the response to a GET request which queries a container resource would be so big that the performance of the API producer is adversely affected, and the API producer does not support paging for the affected resource, - it shall respond with this response code. The "ProblemDetails" structure shall be provided, and should include - in the "detail" attribute more information about the source of the problem. + it shall respond with this response code. Clause 5.4.2.2 specifies provisions for the "ProblemDetails" structure + provided in the response body. If there is an application error related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), the API producer shall respond with this response code. @@ -92,11 +93,11 @@ components: about the source of the problem. If the request contains a malformed access token, the API producer should respond with this response. - The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750 - and IETF RFC 7235. The ProblemDetails structure may be provided. + The details of the error shall be returned in the WWW Authenticate HTTP header, as defined in IETF RFC 6750. The + ProblemDetails structure may be provided. The use of this HTTP error response code described above is applicable to the use of the OAuth 2.0 - for the authorization of API requests and notifications, as defined in clauses 4.5.3.3 and 4.5.3.4. + for the authorization of API requests and notifications, as defined in clauses 8.3.3 and 8.3.4. headers: Content-Type: description: The MIME type of the body of the response. @@ -132,7 +133,7 @@ components: If the request contains no access token even though one is required, or if the request contains an authorization token that is invalid (e.g. expired or revoked), the API producer should respond with this response. The details of the error shall be returned in the WWW-Authenticate HTTP header, as defined in IETF RFC 6750 - and IETF RFC 7235. The ProblemDetails structure may be provided. + and IETF RFC 9110. The ProblemDetails structure may be provided. headers: Content-Type: description: The MIME type of the body of the response. @@ -166,9 +167,9 @@ components: 403 FORBIDDEN If the API consumer is not allowed to perform a particular request to a particular resource, - the API producer shall respond with this response code. The "ProblemDetails" structure shall be provided. - It should include in the "detail" attribute information about the source of the problem, - and may indicate how to solve it. + the API producer shall respond with this response code. More details are defined in IETF RFC 9110. + The "ProblemDetails" structure shall be provided. It should include in the "detail" attribute information + about the source of the problem, and may indicate how to solve it. headers: Content-Type: description: The MIME type of the body of the response. @@ -203,13 +204,14 @@ components: If the API producer did not find a current representation for the resource addressed by the URI passed in the request or is not willing to disclose that one exists, it shall respond with this response code. - The "ProblemDetails" structure may be provided, including in the "detail" attribute information about - the source of the problem, e.g. a wrong resource URI variable. + A typical reason for this error can e.g. be that resource URI variables were set wrongly. More details + are defined in IETF RFC 9110. The "ProblemDetails" structure may be provided, including in the "detail" + attribute information about the source of the problem, e.g. a wrong resource URI variable. This response code is not appropriate in case the resource addressed by the URI is a container resource which is designed to contain child resources, but does not contain any child resource at the time the request is received. For a GET request to an existing empty container resource, a typical response - contains a 200 OK response code and a payload body with an empty array. + contains a 200 OK response code and a message content with an empty array. headers: Content-Type: description: The MIME type of the body of the response. @@ -243,7 +245,7 @@ components: 405 METHOD NOT ALLOWED If a particular HTTP method is not supported for a particular resource, the API producer shall respond - with this response code. The "ProblemDetails" structure may be omitted. + with this response code. The "ProblemDetails" structure may be provided. headers: Content-Type: description: The MIME type of the body of the response. @@ -278,7 +280,7 @@ components: If the "Accept" HTTP header does not contain at least one name of a content type that is acceptable to the API producer, the API producer shall respond with this - response code. The "ProblemDetails" structure may be omitted. + response code. The "ProblemDetails" structure may be provided. headers: Content-Type: description: The MIME type of the body of the response. @@ -378,9 +380,9 @@ components: description: > 413 PAYLOAD TOO LARGE - If the payload body of a request is larger than the amount of data the API producer is willing or able to process, - it shall respond with this response code, following the provisions in IETF RFC 7231 for the use - of the "Retry-After" HTTP header and for closing the connection. The "ProblemDetails" structure may be omitted. + If the message content of a request is larger than the amount of data the API producer is willing or able to process, + it shall respond with this response code, following the provisions in IETF RFC 9110 for the use + of the "Retry-After" HTTP header and for closing the connection. The "ProblemDetails" structure may be provided. headers: Content-Type: description: The MIME type of the body of the response. @@ -415,7 +417,8 @@ components: If the request URI of a request is longer than the API producer is willing or able to process, it shall respond with this response code. This condition can e.g. be caused by passing long queries - in the request URI of a GET request. The "ProblemDetails" structure may be omitted. + in the request URI of a GET request. More details are defined in IETF RFC 9110. The "ProblemDetails" + structure may be provided. headers: Content-Type: description: The MIME type of the body of the response. @@ -477,12 +480,13 @@ components: 422: description: > - 422 UNPROCESSABLE ENTITY + 422 UNPROCESSABLE Content - If the payload body of a request contains syntactically correct data (e.g. well-formed JSON) but the data - cannot be processed (e.g. because it fails validation against a schema), the API producer shall respond - with this response code. The "ProblemDetails" structure shall be provided, and should include in the "detail" - attribute more information about the source of the problem. + If the content type of the message content is supported and the message content of a request contains + syntactically correct data (e.g. well-formed JSON) but the data cannot be processed (e.g. because it fails + validation against a schema), the API producer shall respond with this response code. More details are + defined in IETF RFC 9110. The "ProblemDetails" structure shall be provided, and should include in the + "detail" attribute more information about the source of the problem. This error response code is only applicable for methods that have a request body. headers: @@ -519,9 +523,9 @@ components: If the API consumer has sent too many requests in a defined period of time and the API producer is able to detect that condition ("rate limiting"), the API producer shall respond with this response code, - following the provisions in IETF RFC 6585 [17] for the use of the "Retry-After" HTTP header. - The "ProblemDetails" structure shall be provided and shall include in the "detail" attribute more information - about the source of the problem. + following the provisions in IETF RFC 6585 for the use of the "Retry-After" HTTP header. The "ProblemDetails" + structure shall be provided and shall include in the "detail" attribute more information about the source + of the problem. The period of time and allowed number of requests are configured within the API producer by means outside the scope of the present document. @@ -557,9 +561,11 @@ components: description: > 500 INTERNAL SERVER ERROR - If there is an application error not related to the client's input that cannot be easily mapped to any other - HTTP response code ("catch all error"), the API producer shall respond with this response code. - The "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information + If the Server is unable to process the request, and retrying the same request later might eventually + succeed, the server shall respond with this response code. Further, if there is an application error + not related to the client's input that cannot be easily mapped to any other HTTP response code ("catch all error"), + the API producer shall respond with this response code. More details are defined in IETF RFC 9110. The + "ProblemDetails" structure shall be provided, and shall include in the "detail" attribute more information about the source of the problem. headers: Content-Type: @@ -594,9 +600,9 @@ components: 503 SERVICE UNAVAILABLE If the API producer encounters an internal overload situation of itself or of a system it relies on, - it should respond with this response code, following the provisions in IETF RFC 7231 for the use of - the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" - structure may be omitted. + it should respond with this response code, following the provisions in IETF RFC 9110 for the use of + the "Retry-After" HTTP header and for the alternative to refuse the connection. The "ProblemDetails" + structure may be provided. headers: Content-Type: description: The MIME type of the body of the response. @@ -631,7 +637,8 @@ components: If the API producer encounters a timeout while waiting for a response from an upstream server (i.e. a server that the API producer communicates with when fulfilling a request), it should respond - with this response code. + with this response code. More details are defined in IETF RFC 9110. The "ProblemDetails" structure + may be provided. headers: Content-Type: description: The MIME type of the body of the response. -- GitLab From 9dcd59aaedc041fc9f257fcc5fbb83690a9f9728 Mon Sep 17 00:00:00 2001 From: Giacomo Bernini Date: Thu, 19 Jan 2023 13:38:49 +0000 Subject: [PATCH 27/27] Update Readme.md --- Readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Readme.md b/Readme.md index 664b463e..62674af6 100644 --- a/Readme.md +++ b/Readme.md @@ -35,7 +35,7 @@ and the results will be stored in a `build/` directory in the project folder. ## How to raise issues -Change requests can be filed at [ETSI Forge Bugzilla](forge.etsi.org/bugzilla/buglist.cgi?component=Nfv-Openapis&list_id=62&product=NFV). Please report errors, bugs or other issues [here](https://forge.etsi.org/bugzilla/enter_bug.cgi?product=NFV). +Please report errors, bugs or other issues [here](https://forge.etsi.org/rep/nfv/SOL002-SOL003/-/issues). ## How to contribute -- GitLab