Commits (15)
#!/bin/bash
specfiles=$(ls | egrep "^[^.]*.(json|yaml)")
fres=0
for i in $specfiles ; do
echo "-- Validating and linting OpenAPI file $i..."
swagger-cli validate $i
res=$?
speccy lint "$i"
res2=$?
fres=$(($fres||$res||$res2))
echo "--- Validator returned $res, linter returned $res2."
done
echo "-- Final validator returns $fres."
exit $fres
......@@ -893,7 +893,7 @@
},
"vimConnectionId": {
"type": "string",
"description": null
"description": ""
},
"zoneId": {
"type": "string",
......
......@@ -633,9 +633,9 @@ components:
description: Identifier of the connection to the VIM that manages the resource zone. The applicable "VimConnectionInfo" structure, which is referenced by vimConnectionId, can be obtained from the " vimConnectionInfo" attribute of the "AppInstanceInfo" structure.
vimConnectionId:
type: string
description:
description: ''
zoneId:
type: string
description: The identifier of the resource zone, as managed by the resource management layer (typically, the VIM).
security:
- {}
\ No newline at end of file
- {}
......@@ -646,6 +646,9 @@
"responses": {
"204": {
"description": "No content"
},
"404": {
"description": "Not found"
}
}
}
......@@ -2019,7 +2022,7 @@
"content": {
"application/json": {
"schema": {
"$ref": "./MEC010p2_v221_definitions.yaml#/definitions/ConfigPlatformForAppRequest"
"$ref": "./definitions/MEC010p2_definitions.yaml#/definitions/ConfigPlatformForAppRequest"
}
}
}
......@@ -2195,7 +2198,8 @@
],
"properties": {
"href": {
"type": "uri"
"type": "string",
"format": "uri"
},
"subscriptionType": {
"$ref": "#/components/schemas/AppInstanceSubscriptionType"
......@@ -2244,7 +2248,8 @@
"type": "string"
},
"callbackUri": {
"type": "uri"
"type": "string",
"format": "uri"
},
"appInstanceSubscriptionFilter": {
"$ref": "#/components/schemas/AppInstanceSubscriptionFilter"
......@@ -2263,7 +2268,8 @@
"description": "Shall be set to \"AppIdentifierDeletionSubscription\"."
},
"callbackUri": {
"type": "uri"
"type": "string",
"format": "uri"
},
"appInstanceSubscriptionFilter": {
"$ref": "#/components/schemas/AppInstanceSubscriptionFilter"
......@@ -2286,7 +2292,8 @@
"type": "string"
},
"callbackUri": {
"type": "uri"
"type": "string",
"format": "uri"
},
"appInstanceSubscriptionFilter": {
"$ref": "#/components/schemas/AppInstanceSubscriptionFilter"
......@@ -2321,7 +2328,8 @@
"description": "Shall be set to \"AppIdentifierDeletionSubscription\"."
},
"callbackUri": {
"type": "uri"
"type": "string",
"format": "uri"
},
"appInstanceSubscriptionFilter": {
"$ref": "#/components/schemas/AppInstanceSubscriptionFilter"
......@@ -3368,7 +3376,7 @@
},
"seconds": {
"type": "integer",
"description": "The seconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC.",
"description": "The seconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC.",
"contentEncoding": "int32"
}
}
......
......@@ -417,6 +417,8 @@ paths:
responses:
'204':
description: "No content"
'404':
description: "Not found"
deprecated: false
get:
tags:
......@@ -1315,7 +1317,7 @@ paths:
content:
application/json:
schema:
$ref: './MEC010p2_v221_definitions.yaml#/definitions/ConfigPlatformForAppRequest'
$ref: './definitions/MEC010p2_definitions.yaml#/definitions/ConfigPlatformForAppRequest'
responses:
'202':
description: The request was accepted for processing, but it is possible that the processing is not yet completed
......@@ -1436,7 +1438,8 @@ components:
- subscriptionType
properties:
href:
type: uri
type: string
format: uri
subscriptionType:
$ref: '#/components/schemas/AppInstanceSubscriptionType'
......@@ -1476,7 +1479,8 @@ components:
subscriptionType:
type: string
callbackUri:
type: uri
type: string
format: uri
appInstanceSubscriptionFilter:
$ref: '#/components/schemas/AppInstanceSubscriptionFilter'
......@@ -1492,7 +1496,8 @@ components:
type: string
description: Shall be set to "AppIdentifierDeletionSubscription".
callbackUri:
type: uri
type: string
format: uri
appInstanceSubscriptionFilter:
$ref: '#/components/schemas/AppInstanceSubscriptionFilter'
......@@ -1509,7 +1514,8 @@ components:
subscriptionType:
type: string
callbackUri:
type: uri
type: string
format: uri
appInstanceSubscriptionFilter:
$ref: '#/components/schemas/AppInstanceSubscriptionFilter'
_links:
......@@ -1536,7 +1542,8 @@ components:
type: string
description: Shall be set to "AppIdentifierDeletionSubscription".
callbackUri:
type: uri
type: string
format: uri
appInstanceSubscriptionFilter:
$ref: '#/components/schemas/AppInstanceSubscriptionFilter'
_links:
......
......@@ -1294,6 +1294,9 @@
"responses": {
"204": {
"description": "No content"
},
"404": {
"description": "Not found"
}
}
}
......@@ -2412,12 +2415,12 @@
"properties": {
"appDId": {
"type": "string",
"description": "Identifier of this MEC application descriptor. This attribute shall be globally unique. See note 1."
"description": "Identifier of this MEC application descriptor. This attribute shall be globally unique. See note 1."
},
"appDNSRule": {
"type": "array",
"items": {
"$ref": "./MEC010p2_v221_definitions.yaml#/definitions/DNSRuleDescriptor"
"$ref": "./definitions/MEC010p2_definitions.yaml#/definitions/DNSRuleDescriptor"
},
"description": "Describes DNS rules the MEC application requires."
},
......@@ -2439,14 +2442,14 @@
"appFeatureOptional": {
"type": "array",
"items": {
"$ref": "./MEC010p2_v221_definitions.yaml#/definitions/FeatureDependency"
"$ref": "./definitions/MEC010p2_definitions.yaml#/definitions/FeatureDependency"
},
"description": "Describes features a MEC application may use if available."
},
"appFeatureRequired": {
"type": "array",
"items": {
"$ref": "./MEC010p2_v221_definitions.yaml#/definitions/FeatureDependency"
"$ref": "./definitions/MEC010p2_definitions.yaml#/definitions/FeatureDependency"
},
"description": "Describes features a MEC application requires to run."
},
......@@ -2455,7 +2458,7 @@
"description": "Human readable name for the MEC application."
},
"appLatency": {
"$ref": "./MEC010p2_v221_definitions.yaml#/definitions/LatencyDescriptor"
"$ref": "./definitions/MEC010p2_definitions.yaml#/definitions/LatencyDescriptor"
},
"appName": {
"type": "string",
......@@ -2468,21 +2471,21 @@
"appServiceOptional": {
"type": "array",
"items": {
"$ref": "./MEC010p2_v221_definitions.yaml#/definitions/ServiceDependency"
"$ref": "./definitions/MEC010p2_definitions.yaml#/definitions/ServiceDependency"
},
"description": "Describes services a MEC application may use if available."
},
"appServiceProduced": {
"type": "array",
"items": {
"$ref": "./MEC010p2_v221_definitions.yaml#/definitions/ServiceDescriptor"
"$ref": "./definitions/MEC010p2_definitions.yaml#/definitions/ServiceDescriptor"
},
"description": "Describes services a MEC application is able to produce to the platform or other MEC applications. Only relevant for service-producing apps."
},
"appServiceRequired": {
"type": "array",
"items": {
"$ref": "./MEC010p2_v221_definitions.yaml#/definitions/ServiceDependency"
"$ref": "./definitions/MEC010p2_definitions.yaml#/definitions/ServiceDependency"
},
"description": "Describes services a MEC application requires to run."
},
......@@ -2493,7 +2496,7 @@
"appTrafficRule": {
"type": "array",
"items": {
"$ref": "./MEC010p2_v221_definitions.yaml#/definitions/TrafficRuleDescriptor"
"$ref": "./definitions/MEC010p2_definitions.yaml#/definitions/TrafficRuleDescriptor"
},
"description": "Describes traffic rules the MEC application requires."
},
......@@ -2519,7 +2522,7 @@
"transportDependencies": {
"type": "array",
"items": {
"$ref": "./MEC010p2_v221_definitions.yaml#/definitions/TransportDependency"
"$ref": "./definitions/MEC010p2_definitions.yaml#/definitions/TransportDependency"
},
"description": "Transports, if any, that this application requires to be provided by the platform. These transports will be used by the application to deliver services provided by this application. Only relevant for service-producing apps. See note 2."
},
......@@ -2535,10 +2538,10 @@
"description": "Defines descriptors of virtual storage resources to be used by the MEC application."
},
"userContextTransferCapability": {
"$ref": "./MEC010p2_v221_definitions.yaml#/definitions/UserContextTransferCapability"
"$ref": "./definitions/MEC010p2_definitions.yaml#/definitions/UserContextTransferCapability"
},
"appNetworkPolicy": {
"$ref": "./MEC010p2_v221_definitions.yaml#/definitions/AppNetworkPolicy"
"$ref": "./definitions/MEC010p2_definitions.yaml#/definitions/AppNetworkPolicy"
}
}
},
......@@ -3005,7 +3008,8 @@
"description": "Name of the application package to be onboarded."
},
"appPkgPath": {
"type": "uri"
"type": "string",
"format": "uri"
},
"appPkgVersion": {
"type": "string",
......@@ -3085,7 +3089,7 @@
},
"seconds": {
"type": "integer",
"description": "The seconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC.",
"description": "The seconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC.",
"contentEncoding": "int32"
}
}
......
......@@ -857,7 +857,9 @@ paths:
$ref: '#/components/schemas/AppPkgNotification'
responses:
'204':
description: "No content"
description: "No content"
'404':
description: "Not found"
get:
tags:
- app-pkgm
......@@ -1609,7 +1611,7 @@ components:
appDNSRule:
type: array
items:
$ref: './MEC010p2_v221_definitions.yaml#/definitions/DNSRuleDescriptor'
$ref: './definitions/MEC010p2_definitions.yaml#/definitions/DNSRuleDescriptor'
description: Describes DNS rules the MEC application requires.
appDVersion:
type: string
......@@ -1625,18 +1627,18 @@ components:
appFeatureOptional:
type: array
items:
$ref: './MEC010p2_v221_definitions.yaml#/definitions/FeatureDependency'
$ref: './definitions/MEC010p2_definitions.yaml#/definitions/FeatureDependency'
description: Describes features a MEC application may use if available.
appFeatureRequired:
type: array
items:
$ref: './MEC010p2_v221_definitions.yaml#/definitions/FeatureDependency'
$ref: './definitions/MEC010p2_definitions.yaml#/definitions/FeatureDependency'
description: Describes features a MEC application requires to run.
appInfoName:
type: string
description: Human readable name for the MEC application.
appLatency:
$ref: './MEC010p2_v221_definitions.yaml#/definitions/LatencyDescriptor'
$ref: './definitions/MEC010p2_definitions.yaml#/definitions/LatencyDescriptor'
appName:
type: string
description: Name to identify the MEC application.
......@@ -1646,17 +1648,17 @@ components:
appServiceOptional:
type: array
items:
$ref: './MEC010p2_v221_definitions.yaml#/definitions/ServiceDependency'
$ref: './definitions/MEC010p2_definitions.yaml#/definitions/ServiceDependency'
description: Describes services a MEC application may use if available.
appServiceProduced:
type: array
items:
$ref: './MEC010p2_v221_definitions.yaml#/definitions/ServiceDescriptor'
$ref: './definitions/MEC010p2_definitions.yaml#/definitions/ServiceDescriptor'
description: Describes services a MEC application is able to produce to the platform or other MEC applications. Only relevant for service-producing apps.
appServiceRequired:
type: array
items:
$ref: './MEC010p2_v221_definitions.yaml#/definitions/ServiceDependency'
$ref: './definitions/MEC010p2_definitions.yaml#/definitions/ServiceDependency'
description: Describes services a MEC application requires to run.
appSoftVersion:
type: string
......@@ -1664,7 +1666,7 @@ components:
appTrafficRule:
type: array
items:
$ref: './MEC010p2_v221_definitions.yaml#/definitions/TrafficRuleDescriptor'
$ref: './definitions/MEC010p2_definitions.yaml#/definitions/TrafficRuleDescriptor'
description: Describes traffic rules the MEC application requires.
changeAppInstanceStateOpConfig:
type: string
......@@ -1683,7 +1685,7 @@ components:
transportDependencies:
type: array
items:
$ref: './MEC010p2_v221_definitions.yaml#/definitions/TransportDependency'
$ref: './definitions/MEC010p2_definitions.yaml#/definitions/TransportDependency'
description: Transports, if any, that this application requires to be provided by the platform. These transports will be used by the application to deliver services provided by this application. Only relevant for service-producing apps. See note 2.
virtualComputeDescriptor:
description: Describes CPU and memory requirements, as well as optional additional requirements, such as disk and acceleration related capabilities, of the virtualisation container used to realize this MEC application.
......@@ -1695,9 +1697,9 @@ components:
type: string
description: Defines descriptors of virtual storage resources to be used by the MEC application.
userContextTransferCapability:
$ref: './MEC010p2_v221_definitions.yaml#/definitions/UserContextTransferCapability'
$ref: './definitions/MEC010p2_definitions.yaml#/definitions/UserContextTransferCapability'
appNetworkPolicy:
$ref: './MEC010p2_v221_definitions.yaml#/definitions/AppNetworkPolicy'
$ref: './definitions/MEC010p2_definitions.yaml#/definitions/AppNetworkPolicy'
AppExternalCpd:
title: AppExternalCpd
......@@ -2049,7 +2051,8 @@ components:
type: string
description: Name of the application package to be onboarded.
appPkgPath:
type: uri
type: string
format: uri
appPkgVersion:
type: string
description: >-
......
......@@ -5,12 +5,12 @@ This repository contains OpenAPIs descriptions for the interfaces specified in E
## Online resources
* [Specification document](https://www.etsi.org/deliver/etsi_gs/MEC/001_099/01002/02.01.01_60/gs_MEC01002v020101p.pdf)
* [Navigate the App Package management API in the browser](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api/raw/stf606-final/MEC010-2_AppPkgMgmt.yaml).
* [Navigate the App Lifecycle management API in the browser](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api/raw/stf606-final/MEC010-2_AppLcm.yaml).
* [Navigate the App Operation Granting API in the browser](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api/raw/stf606-final/MEC010-2_AppGrant.yaml).
* [Edit the App Package management API online](https://forge.etsi.org/swagger/editor/?url=https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api/raw/stf606-final/MEC010-2_AppPkgMgmt.yaml).
* [Edit the App Lifecycle management API online](https://forge.etsi.org/swagger/editor/?url=https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api/raw/stf606-final/MEC010-2_AppLcm.yaml).
* [Edit the App Operation Granting API online](https://forge.etsi.org/swagger/editor/?url=https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api/raw/stf606-final/MEC010-2_AppGrant.yaml).
* [Navigate the App Package management API in the browser](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api/raw/v2.2.1/MEC010-2_AppPkgMgmt.yaml).
* [Navigate the App Lifecycle management API in the browser](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api/raw/v2.2.1/MEC010-2_AppLcm.yaml).
* [Navigate the App Operation Granting API in the browser](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api/raw/v2.2.1/MEC010-2_AppGrant.yaml).
* [Edit the App Package management API online](https://redocly.github.io/redoc/?url=https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api/raw/v2.2.1/MEC010-2_AppPkgMgmt.yaml).
* [Edit the App Lifecycle management API online](https://redocly.github.io/redoc/?url=https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api/raw/v2.2.1/MEC010-2_AppLcm.yaml).
* [Edit the App Operation Granting API online](https://redocly.github.io/redoc/?url=https://forge.etsi.org/rep/mec/gs010-2-app-pkg-lcm-api/raw/v2.2.1/MEC010-2_AppGrant.yaml).
## License
......