Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Changelog Network Slice Booking

## Table of Contents
- [r2.1](#r2.1)
- [r1.2](#r1.2)
- [r1.1](#r1.1)

Expand All @@ -14,6 +15,39 @@ The below sections record the changes for each API version in each release as fo
* for subsequent release-candidate(s), only the delta to the previous release-candidate
* for a public release, the consolidated changes since the previous public release

# r2.1
## Release Notes
This release contains the definition and documentation of

- network-slice-booking v0.2.0-rc.1
- network-slice-assignment v0.1.0-rc.1

The API definition(s) are based on

- Commonalities v1.0.0
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Commonalities v1.0.0
- Commonalities v0.7.0

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For the final Release PR, the API needs to be aligned with the Spring26 Commonalities version. you can find here the changes that may apply: https://lf-camaraproject.atlassian.net/wiki/spaces/CAM/pages/518225924/Analysis+of+Commonalities+0.7.0-rc.1

such changes would need to be applied on main and resynched before the final Release PR

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And same for ICM Spring26 release.

- Identity and Consent Management v0.5.0
## network-slice-booking v0.2.0-rc.1
**network-slice-booking v0.2.0-rc.1 is the first release candidate of the version 0.2.0**
network-slice-booking v0.2.0 will be a minor update of the API, and is backward compatible with v0.1.0.
- API definition **with inline documentation**:
- [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/NetworkSliceBooking/r2.1/code/API_definitions/network-slice-booking.yaml&nocors)
- [View it on Swagger Editor](https://camaraproject.github.io/swagger-ui/?url=https://raw.githubusercontent.com/camaraproject/NetworkSliceBooking/r2.1/code/API_definitions/network-slice-booking.yaml)
- OpenAPI [YAML spec file](https://github.com/camaraproject/NetworkSliceBooking/blob/r2.1/code/API_definitions/network-slice-booking.yaml)
### Changed
* Modify the term session to slice in [#87](https://github.com/camaraproject/NetworkSliceBooking/pull/87)
* Split NetworkSliceBooking422-SERVICE_NOT_APPLICABLE into SERVICE_AREA_NOT_SUPPORTED and RESOURCES_INSUFFICIENT in [#92](https://github.com/camaraproject/NetworkSliceBooking/pull/92)

## network-slice-assignment v0.1.0-rc.1
**network-slice-assignment v0.1.0-rc.1 is the first release-candidate version of the network-slice-assignment API**
- API definition **with inline documentation**:
- [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/NetworkSliceBooking/r2.1/code/API_definitions/network-slice-assignment.yaml&nocors)
- [View it on Swagger Editor](https://camaraproject.github.io/swagger-ui/?url=https://raw.githubusercontent.com/camaraproject/NetworkSliceBooking/r2.1/code/API_definitions/network-slice-assignment.yaml)
- OpenAPI [YAML spec file](https://github.com/camaraproject/NetworkSliceBooking/blob/r2.1/code/API_definitions/network-slice-assignment.yaml)
### Added
* Add network-slice-assignment API initial definition in [#87](https://github.com/camaraproject/NetworkSliceBooking/pull/87)
### Changed
* Modified the paths structure with `sliceId` in path and `device` in request body in [#96](https://github.com/camaraproject/NetworkSliceBooking/pull/96)

# r1.2
## Release Notes
This release contains the definition and documentation of
Expand Down
17 changes: 11 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ Sandbox API Repository to describe, develop, document, and test the NetworkSlice
## Scope
* Service APIs for “Network Slice Booking” (see APIBacklog.md)
* It provides the API consumer with the ability to:
* reserve, dynamically provisioning, query, dynamically delete a slice with customized SLA assurance capabilities, customized service duration, expected slice covered locations.
* reserve, dynamically provisioning, query, dynamically delete a slice with customized SLA assurance capabilities, customized service duration, expected slice covered locations.
* manage user subscription to the network slices.
* Describe, develop, document and test the APIs (with 1-2 Telcos)
* Started: January 2024

Expand All @@ -28,11 +29,15 @@ Sandbox API Repository to describe, develop, document, and test the NetworkSlice
> [!NOTE]
> Please be aware that the project will have frequent updates to the main branch. There are no compatibility guarantees associated with code in any branch, including main, until a new release is created. For example, changes may be reverted before a release is created. **For best results, use the latest available release**.

* **NEW**: The latest public release is [r1.2](https://github.com/camaraproject/NetworkSliceBooking/releases/tag/r1.2) (Fall25), with the following API versions:
* **network-slice-booking v0.1.0**
[[YAML]](https://github.com/camaraproject/NetworkSliceBooking/blob/r1.2/code/API_definitions/network-slice-booking.yaml)
[[ReDoc]](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/NetworkSliceBooking/r1.2/code/API_definitions/network-slice-booking.yaml&nocors)
[[Swagger]](https://camaraproject.github.io/swagger-ui/?url=https://raw.githubusercontent.com/camaraproject/NetworkSliceBooking/r1.2/code/API_definitions/network-slice-booking.yaml)
* **NEW**: The latest pre-release is [r2.1](https://github.com/camaraproject/NetworkSliceBooking/releases/tag/r2.1), with the following API versions:
* **network-slice-booking v0.2.0-rc.1**
[[YAML]](https://github.com/camaraproject/NetworkSliceBooking/blob/r2.1/code/API_definitions/network-slice-booking.yaml)
[[ReDoc]](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/NetworkSliceBooking/r2.1/code/API_definitions/network-slice-booking.yaml&nocors)
[[Swagger]](https://camaraproject.github.io/swagger-ui/?url=https://raw.githubusercontent.com/camaraproject/NetworkSliceBooking/r2.1/code/API_definitions/network-slice-booking.yaml)
* **network-slice-assignment v0.1.0-rc.1**
[[YAML]](https://github.com/camaraproject/NetworkSliceBooking/blob/r2.1/code/API_definitions/network-slice-assignment.yaml)
[[ReDoc]](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/NetworkSliceBooking/r2.1/code/API_definitions/network-slice-assignment.yaml&nocors)
[[Swagger]](https://camaraproject.github.io/swagger-ui/?url=https://raw.githubusercontent.com/camaraproject/NetworkSliceBooking/r2.1/code/API_definitions/network-slice-assignment.yaml)
* The latest public release is always available here: https://github.com/camaraproject/NetworkSliceBooking/releases/latest
* Other releases of this repository are available in https://github.com/camaraproject/NetworkSliceBooking/releases
* For changes see [CHANGELOG.md](https://github.com/camaraproject/NetworkSliceBooking/blob/main/CHANGELOG.md)
Expand Down
4 changes: 2 additions & 2 deletions code/API_definitions/network-slice-assignment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ info:

As a specific rule, error `501 - NOT_IMPLEMENTED` can be only a possible error response if it is explicitly documented in the API.

version: wip
version: 0.1.0-rc.1
x-camara-commonalities: 0.6
license:
name: Apache 2.0
Expand All @@ -57,7 +57,7 @@ externalDocs:
description: Project documentation at CAMARA
url: https://github.com/camaraproject/NetworkSliceBooking
servers:
- url: "{apiRoot}/network-slice-assignment/vwip"
- url: "{apiRoot}/network-slice-assignment/v0.1rc1"
variables:
apiRoot:
default: http://localhost:9100
Expand Down
4 changes: 2 additions & 2 deletions code/API_definitions/network-slice-booking.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ info:

As a specific rule, error `501 - NOT_IMPLEMENTED` can be only a possible error response if it is explicitly documented in the API.

version: wip
version: 0.2.0-rc.1
x-camara-commonalities: 0.6
license:
name: Apache 2.0
Expand All @@ -52,7 +52,7 @@ externalDocs:
description: Project documentation at CAMARA
url: https://github.com/camaraproject/NetworkSliceBooking
servers:
- url: "{apiRoot}/network-slice-booking/vwip"
- url: "{apiRoot}/network-slice-booking/v0.2rc1"
variables:
apiRoot:
default: http://localhost:9100
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Feature: CAMARA Network Slice Assignment API vwip - Operation assignDevice
Feature: CAMARA Network Slice Assignment API v0.1.0-rc.1 - Operation assignDevice

# Input to be provided by the implementation to the tester
#
Expand All @@ -7,11 +7,11 @@ Feature: CAMARA Network Slice Assignment API vwip - Operation assignDevice
# * List of device identifier types which are not supported, among: phoneNumber, ipv4Address, ipv6Address.
# * For this version, CAMARA does not allow the use of networkAccessIdentifier, so it is considered by default as not supported.
#
# References to OAS spec schemas refer to schemas specified in network-slice-assignment.yaml, version wip
# References to OAS spec schemas refer to schemas specified in network-slice-assignment.yaml, version 0.1.0-rc.1

Background: Common assignDevice setup
Given an environment at "apiRoot"
And the resource "/network-slice-assignment/vwip/slices/{sliceId}/devices"
And the resource "/network-slice-assignment/v0.1rc1/slices/{sliceId}/devices"
And the header "Content-Type" is set to "application/json"
And the header "Authorization" is set to a valid access token
And the header "x-correlator" complies with the schema at "#/components/schemas/XCorrelator"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Feature: CAMARA Network Slice Assignment API vwip - Operation getDevices
Feature: CAMARA Network Slice Assignment API v0.1.0-rc.1 - Operation getDevices

# Get information about devices assigned to an existing network slice.

Expand All @@ -14,11 +14,11 @@ Feature: CAMARA Network Slice Assignment API vwip - Operation getDevices
# * List of device identifier types which are not supported, among: phoneNumber, ipv4Address, ipv6Address.
# * For this version, CAMARA does not allow the use of networkAccessIdentifier, so it is considered by default as not supported.
#
# References to OAS spec schemas refer to schemas specified in network-slice-assignment.yaml, version wip
# References to OAS spec schemas refer to schemas specified in network-slice-assignment.yaml, version 0.1.0-rc.1

Background: Common getDevices setup
Given an environment at "apiRoot"
And the resource "/network-slice-assignment/vwip/slices/{sliceId}/devices"
And the resource "/network-slice-assignment/v0.1rc1/slices/{sliceId}/devices"
And the header "Content-Type" is set to "application/json"
And the header "Authorization" is set to a valid access token
And the header "x-correlator" complies with the schema at "#/components/schemas/XCorrelator"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Feature: CAMARA Network Slice Assignment API vwip - Operation releaseDevice
Feature: CAMARA Network Slice Assignment API v0.1.0-rc.1 - Operation releaseDevice

# Input to be provided by the implementation to the tester
#
Expand All @@ -9,11 +9,11 @@ Feature: CAMARA Network Slice Assignment API vwip - Operation releaseDevice
# * The DeviceAssignmentInfo of an existing Slice assignment
# * The DeviceAssignmentInfo of an existing Slice assignment with status "AVAILABLE", and with provided values for "sink" and "sinkCredential"
#
# References to OAS spec schemas refer to schemas specified in network-slice-assignment.yaml, version wip
# References to OAS spec schemas refer to schemas specified in network-slice-assignment.yaml, version 0.1.0-rc.1

Background: Common releaseDevice setup
Given an environment at "apiRoot"
And the resource "/network-slice-assignment/vwip/slices/{sliceId}/release"
And the resource "/network-slice-assignment/v0.1rc1/slices/{sliceId}/release"
And the header "Content-Type" is set to "application/json"
And the header "Authorization" is set to a valid access token
And the header "x-correlator" complies with the schema at "#/components/schemas/XCorrelator"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Feature: CAMARA Network Slice Assignment API vwip - Operation retrieveSlicesByDevice
Feature: CAMARA Network Slice Assignment API v0.1.0-rc.1 - Operation retrieveSlicesByDevice

# Retrieve the list of network slices to which a device is assigned.

Expand All @@ -14,11 +14,11 @@ Feature: CAMARA Network Slice Assignment API vwip - Operation retrieveSlicesByDe
# * List of device identifier types which are not supported, among: phoneNumber, ipv4Address, ipv6Address.
# * For this version, CAMARA does not allow the use of networkAccessIdentifier, so it is considered by default as not supported.
#
# References to OAS spec schemas refer to schemas specified in network-slice-assignment.yaml, version wip
# References to OAS spec schemas refer to schemas specified in network-slice-assignment.yaml, version 0.1.0-rc.1

Background: Common retrieveSlicesByDevice setup
Given an environment at "apiRoot"
And the resource "/network-slice-assignment/vwip/retrieve-slices"
And the resource "/network-slice-assignment/v0.1rc1/retrieve-slices"
And the header "Content-Type" is set to "application/json"
And the header "Authorization" is set to a valid access token
And the header "x-correlator" complies with the schema at "#/components/schemas/XCorrelator"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Feature: CAMARA Network Slice Booking API vwip - Operation createSlice
Feature: CAMARA Network Slice Booking API v0.2.0-rc.1 - Operation createSlice

# Input to be provided by the implementation to the tester
#
Expand All @@ -14,11 +14,11 @@ Feature: CAMARA Network Slice Booking API vwip - Operation createSlice
# * An Area outside the supported area
# * A combination of request parameters including service area, start time, and end time, configuration information of network slicing
#
# References to OAS spec schemas refer to schemas specified in network-slice-booking.yaml, version wip
# References to OAS spec schemas refer to schemas specified in network-slice-booking.yaml, version 0.2.0-rc.1

Background: Common createSlice setup
Given an environment at "apiRoot"
And the resource "/network-slice-booking/vwip/slices"
And the resource "/network-slice-booking/v0.2rc1/slices"
And the header "Content-Type" is set to "application/json"
And the header "Authorization" is set to a valid access token
And the header "x-correlator" complies with the schema at "#/components/schemas/XCorrelator"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Feature: CAMARA Network Slice Booking API vwip - Operation deleteSlice
Feature: CAMARA Network Slice Booking API v0.2.0-rc.1 - Operation deleteSlice

# Input to be provided by the implementation to the tester
#
Expand All @@ -7,11 +7,11 @@ Feature: CAMARA Network Slice Booking API vwip - Operation deleteSlice
#
# Testing assets:
# * The sliceId of an existing slice.
# * References to OAS spec schemas refer to schemas specified in network-slice-booking.yaml, version wip
# * References to OAS spec schemas refer to schemas specified in network-slice-booking.yaml, version 0.2.0-rc.1

Background: Common deleteSlice setup
Given an environment at "apiRoot"
And the resource "/network-slice-booking/vwip/slices/{sliceId}"
And the resource "/network-slice-booking/v0.2rc1/slices/{sliceId}"
And the header "Content-Type" is set to "application/json"
And the header "Authorization" is set to a valid access token
And the header "x-correlator" complies with the schema at "#/components/schemas/XCorrelator"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Feature: CAMARA Network Slice Booking API vwip - Operation getSlice
Feature: CAMARA Network Slice Booking API v0.2.0-rc.1 - Operation getSlice

# Input to be provided by the implementation to the tester
#
Expand All @@ -7,11 +7,11 @@ Feature: CAMARA Network Slice Booking API vwip - Operation getSlice
#
# Testing assets:
# * The sliceId of an existing slice.
# * References to OAS spec schemas refer to schemas specified in network-slice-booking.yaml, version wip
# * References to OAS spec schemas refer to schemas specified in network-slice-booking.yaml, version 0.2.0-rc.1

Background: Common getSlice setup
Given an environment at "apiRoot"
And the resource "/network-slice-booking/vwip/slices/{sliceId}"
And the resource "/network-slice-booking/v0.2rc1/slices/{sliceId}"
And the header "Content-Type" is set to "application/json"
And the header "Authorization" is set to a valid access token
And the header "x-correlator" complies with the schema at "#/components/schemas/XCorrelator"
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# API Readiness Checklist

Checklist for network-slice-assignment v0.1.0-rc.1 in r2.1

| Nr | API release assets | alpha | release-candidate | initial<br>public | stable<br> public | Status | Reference information |
|----|----------------------------------------------|:-----:|:-----------------:|:-------:|:------:|:----:|:-------------------------------------------------------------------------------------------:|
| 1 | API definition | M | M | M | M | Y | [link](/code/API_definitions/network-slice-assignment.yaml) |
| 2 | Design guidelines from Commonalities applied | O | M | M | M | Y | [r3.4](https://github.com/camaraproject/Commonalities/releases/tag/r3.4) |
| 3 | Guidelines from ICM applied | O | M | M | M | Y | [r3.3](https://github.com/camaraproject/IdentityAndConsentManagement/releases/tag/r3.3) |
| 4 | API versioning convention applied | M | M | M | M | Y | v0.1.0-rc.1 |
| 5 | API documentation | M | M | M | M | Y | Embed documentation into API spec - [link](/code/API_definitions/network-slice-assignment.yaml) |
| 6 | User stories | O | O | O | M | Y | [UserStory for Network Slicing Assignment](/documentation/API_documentation/NSA_User_Story.md) |
| 7 | Basic API test cases & documentation | O | M | M | M | Y | [link](/code/Test_definitions) |
| 8 | Enhanced API test cases & documentation | O | O | O | M | Y | [link](/code/Test_definitions) |
| 9 | Test result statement | O | O | O | M | N | |
| 10 | API release numbering convention applied | M | M | M | M | Y | |
| 11 | Change log updated | M | M | M | M | Y | [link](/CHANGELOG.md) |
| 12 | Previous public release was certified | O | O | O | M | N | |
| 13 | API description (for marketing) | O | O | M | M | Y | [Wiki link](https://lf-camaraproject.atlassian.net/wiki/spaces/CAM/pages/535625738/NetworkSliceAssignment+API+description) | |

Loading
Loading