Commit 93cafadb authored by Spiros Koulouzis's avatar Spiros Koulouzis

confilcts

parent 640dca7f
---
swagger: "2.0"
info:
description: "CONF allows application developers to seamlessly plan a customized virtual infrastructure based on application level constraints on QoS and resource budgets, provisioning the virtual infrastructure, deploy application components onto the virtual infrastructure, and start execution on demand using TOSCA."
version: "3.0.0"
title: "CONF"
description: CONF allows application developers to seamlessly plan a customized virtual infrastructure based on application level constraints on QoS and resource budgets, provisioning the virtual infrastructure, deploy application components onto the virtual infrastructure, and start execution on demand using TOSCA.
version: 3.0.0
title: CONF
contact:
email: "z.zhao@uva.nl"
email: z.zhao@uva.nl
license:
name: "Apache 2.0"
url: "http://www.apache.org/licenses/LICENSE-2.0.html"
basePath: "/conf-api/3.0"
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
basePath: /conf-api/3.0
schemes:
- "https"
- "http"
- https
- http
paths:
/tosca_template:
post:
summary: "upload a tosca template description file"
description: "uploads and validates TOSCA template file"
operationId: "uploadToscaTemplate"
summary: upload a tosca template description file
description: uploads and validates TOSCA template file
operationId: uploadToscaTemplate
consumes:
- "multipart/form-data"
- multipart/form-data
parameters:
- in: "formData"
name: "file"
type: file
description: "tosca Template description"
- name: file
in: formData
description: tosca Template description
required: true
type: file
responses:
200:
description: "successful operation"
"200":
description: successful operation
schema:
type: "string"
405:
description: "Invalid input"
type: string
"405":
description: Invalid input
security:
- auth:
- "write:ToscaTemplate"
- "read:ToscaTemplate"
- write:ToscaTemplate
- read:ToscaTemplate
/tosca_template/ids:
get:
summary: "Get all topolog template IDs"
description: "Returns all IDs"
operationId: "getToscaTemplateIDs"
summary: Get all topolog template IDs
description: Returns all IDs
operationId: getToscaTemplateIDs
produces:
- "application/json"
- application/json
parameters: []
responses:
200:
description: "successful operation"
"200":
description: successful operation
schema:
type: array
items:
type: string
400:
description: "Invalid ID supplied"
404:
description: "ToscaTemplate not found"
405:
description: "Invalid input"
"400":
description: Invalid ID supplied
"404":
description: ToscaTemplate not found
"405":
description: Invalid input
security:
- auth:
- "write:ToscaTemplate"
- "read:ToscaTemplate"
- write:ToscaTemplate
- read:ToscaTemplate
/tosca_template/{id}:
get:
summary: "Find topolog template by ID"
description: "Returns a single topolog template"
operationId: "getToscaTemplateByID"
summary: Find topolog template by ID
description: Returns a single topolog template
operationId: getToscaTemplateByID
produces:
- "text/plain"
- text/plain
parameters:
- name: "id"
in: "path"
description: "ID of topolog template to return"
- name: id
in: path
description: ID of topolog template to return
required: true
type: "string"
type: string
responses:
200:
description: "successful operation"
"200":
description: successful operation
schema:
type: "string"
400:
description: "Invalid ID supplied"
404:
description: "ToscaTemplate not found"
405:
description: "Invalid input"
type: string
"400":
description: Invalid ID supplied
"404":
description: ToscaTemplate not found
"405":
description: Invalid input
security:
- auth:
- "write:ToscaTemplate"
- "read:ToscaTemplate"
- write:ToscaTemplate
- read:ToscaTemplate
put:
summary: "Updates exisintg topolog template"
summary: Updates exisintg topolog template
description: ""
operationId: "updateToscaTemplateByID"
operationId: updateToscaTemplateByID
consumes:
- "multipart/form-data"
- multipart/form-data
produces:
- "text/plain"
- text/plain
parameters:
- in: "formData"
name: "file"
- name: file
in: formData
description: tosca Template description
required: false
type: file
description: "tosca Template description"
- name: "id"
in: "path"
description: "ID of topolog template to return"
- name: id
in: path
description: ID of topolog template to return
required: true
type: "string"
type: string
responses:
200:
description: "successful operation"
"200":
description: successful operation
schema:
type: "string"
400:
description: "Invalid ID supplied"
404:
description: "ToscaTemplate not found"
405:
description: "Invalid input"
type: string
"400":
description: Invalid ID supplied
"404":
description: ToscaTemplate not found
"405":
description: Invalid input
security:
- auth:
- "write:ToscaTemplate"
- "read:ToscaTemplate"
- write:ToscaTemplate
- read:ToscaTemplate
delete:
summary: "Deletes a tosca topology template"
summary: Deletes a tosca topology template
description: ""
operationId: "deleteToscaTemplateByID"
operationId: deleteToscaTemplateByID
parameters:
- name: "id"
in: "path"
description: "ID of topology template to return"
- name: id
in: path
description: ID of topology template to return
required: true
type: "string"
type: string
responses:
200:
description: "successful operation"
"200":
description: successful operation
schema:
type: "string"
400:
description: "Invalid ID supplied"
404:
description: "ToscaTemplate not found"
type: string
"400":
description: Invalid ID supplied
"404":
description: ToscaTemplate not found
security:
- auth:
- "write:ToscaTemplate"
- "read:ToscaTemplate"
- write:ToscaTemplate
- read:ToscaTemplate
/planner/plan/{id}:
get:
summary: "plan tosca template"
description: "Returns the ID of the planed topolog template"
operationId: "planToscaTemplateByID"
summary: plan tosca template
description: Returns the ID of the planed topolog template
operationId: planToscaTemplateByID
produces:
- "text/plain"
- text/plain
parameters:
- name: "id"
in: "path"
description: "ID of topolog template to plan"
- name: id
in: path
description: ID of topolog template to plan
required: true
type: "string"
type: string
responses:
200:
description: "successful operation"
"200":
description: successful operation
schema:
type: "string"
400:
description: "Invalid ID supplied"
404:
description: "ToscaTemplate not found"
405:
description: "Invalid input"
type: string
"400":
description: Invalid ID supplied
"404":
description: ToscaTemplate not found
"405":
description: Invalid input
security:
- auth:
- "write:ToscaTemplate"
- "read:ToscaTemplate"
- write:ToscaTemplate
- read:ToscaTemplate
/provisioner/provision/{id}:
get:
summary: "provision tosca template"
description: "provosions the operationId: Plan Tosca Template Returns the provision ID"
operationId: "provisionPlanToscaTemplateByID"
summary: provision tosca template
description: 'provosions the operationId: Plan Tosca Template Returns the provision ID'
operationId: provisionPlanToscaTemplateByID
produces:
- "text/plain"
- text/plain
parameters:
- name: "id"
in: "path"
description: "ID of topolog template to plan"
- name: id
in: path
description: ID of topolog template to plan
required: true
type: "string"
type: string
responses:
200:
description: "successful operation"
"200":
description: successful operation
schema:
type: "string"
400:
description: "Invalid ID supplied"
404:
description: "ToscaTemplate not found"
405:
description: "Invalid input"
type: string
"400":
description: Invalid ID supplied
"404":
description: ToscaTemplate not found
"405":
description: Invalid input
security:
- auth:
- "write:ToscaTemplate"
- "read:ToscaTemplate"
- write:ToscaTemplate
- read:ToscaTemplate
/deployer/deploy/{id}:
get:
summary: "deploy the software tosca template"
description: "Returns the deployment ID"
operationId: "deployProvisionToscaTemplateByID"
summary: deploy the software tosca template
description: Returns the deployment ID
operationId: deployProvisionToscaTemplateByID
produces:
- "text/plain"
- text/plain
parameters:
- name: "id"
in: "path"
description: "ID of topolog template to deploy"
- name: id
in: path
description: ID of topolog template to deploy
required: true
type: "string"
type: string
responses:
200:
description: "successful operation"
"200":
description: successful operation
schema:
type: "string"
400:
description: "Invalid ID supplied"
404:
description: "ToscaTemplate not found"
405:
description: "Invalid input"
type: string
"400":
description: Invalid ID supplied
"404":
description: ToscaTemplate not found
"405":
description: Invalid input
security:
- auth:
- "write:ToscaTemplate"
- "read:ToscaTemplate"
- write:ToscaTemplate
- read:ToscaTemplate
/credential:
post:
summary: "Create credentials"
description: "Creates credentials"
operationId: "createCredentials"
produces:
- "application/json"
summary: Create credentials
description: Creates credentials
operationId: createCredentials
consumes:
- "application/json"
- application/json
produces:
- application/json
parameters:
- in: "body"
name: "body"
description: "Created user object"
- in: body
name: body
description: Created user object
required: true
schema:
$ref: "#/definitions/Credentials"
$ref: '#/definitions/Credentials'
responses:
200:
description: "successful operation"
"200":
description: successful operation
schema:
type: "string"
400:
description: "Invalid ID supplied"
404:
description: "ToscaTemplate not found"
405:
description: "Invalid input"
type: string
"400":
description: Invalid ID supplied
"404":
description: ToscaTemplate not found
"405":
description: Invalid input
security:
- auth:
- "write:Credentials"
- "read:Credentials"
- write:Credentials
- read:Credentials
/credential/ids:
get:
summary: "Get all credential IDs"
description: "Returns all IDss "
operationId: "getCredentialIDs"
summary: Get all credential IDs
description: 'Returns all IDss '
operationId: getCredentialIDs
produces:
- "application/json"
- application/json
parameters: []
responses:
200:
description: "successful operation"
"200":
description: successful operation
schema:
type: array
items:
type: string
400:
description: "Invalid ID supplied"
404:
description: "ToscaTemplate not found"
405:
description: "Invalid input"
"400":
description: Invalid ID supplied
"404":
description: ToscaTemplate not found
"405":
description: Invalid input
security:
- auth:
- "write:ToscaTemplate"
- "read:ToscaTemplate"
- write:ToscaTemplate
- read:ToscaTemplate
/user:
post:
summary: "Create user"
description: "This can only be done by admin."
operationId: "createUser"
summary: Create user
description: This can only be done by admin.
operationId: createUser
produces:
- "application/json"
- application/json
parameters:
- in: "body"
name: "body"
description: "Created user object"
- in: body
name: body
description: Created user object
required: true
schema:
$ref: "#/definitions/User"
$ref: '#/definitions/User'
responses:
200:
description: "successful operation"
"200":
description: successful operation
schema:
type: "string"
409:
description: "already exists"
type: string
"409":
description: already exists
security:
- auth:
- "admin:User"
- admin:User
/user/login:
get:
tags:
- "user"
summary: "Logs user into the system"
- user
summary: Logs user into the system
description: ""
produces:
- "application/json"
- application/json
parameters:
- name: "username"
in: "query"
description: "The user name for login"
- name: username
in: query
description: The user name for login
required: true
type: "string"
- name: "password"
in: "query"
description: "The password for login in clear text"
type: string
- name: password
in: query
description: The password for login in clear text
required: true
type: "string"
type: string
responses:
200:
description: "successful operation"
schema:
type: "string"
"200":
description: successful operation
headers:
X-Rate-Limit:
type: "integer"
format: "int32"
description: "calls per hour allowed by the user"
type: integer
format: int32
description: calls per hour allowed by the user
X-Expires-After:
type: "string"
format: "date-time"
description: "date in UTC when token expires"
400:
description: "Invalid username/password supplied"
type: string
format: date-time
description: date in UTC when token expires
schema:
type: string
"400":
description: Invalid username/password supplied
/user/logout:
get:
summary: "Logs out current logged in user session"
summary: Logs out current logged in user session
description: ""
produces:
- "application/json"
- application/json
parameters: []
responses:
default:
description: "successful operation"
description: successful operation
/user/{username}:
get:
summary: "Get user by user name"
summary: Get user by user name
description: ""
produces:
- "application/json"
- application/json
parameters:
- name: "username"
in: "path"
description: "The name that needs to be fetched. Use user1 for testing. "
- name: username
in: path
description: 'The name that needs to be fetched. Use user1 for testing. '
required: true
type: "string"
type: string
responses:
200:
description: "successful operation"
"200":
description: successful operation
schema:
$ref: "#/definitions/User"
400:
description: "Invalid username supplied"
404:
description: "User not found"
$ref: '#/definitions/User'
"400":
description: Invalid username supplied
"404":
description: User not found
security:
- auth:
- "admin:User"
- admin:User
put:
tags:
- "user"
summary: "Updated user"
description: "This can only be done by the logged in user."
- user
summary: Updated user
description: This can only be done by the logged in user.
produces:
- "application/json"
- application/json
parameters:
- name: "username"
in: "path"
description: "name that need to be updated"
- name: username
in: path
description: name that need to be updated
required: true
type: "string"
- in: "body"
name: "body"
description: "Updated user object"
type: string
- in: body
name: body
description: Updated user object
required: true
schema:
$ref: "#/definitions/User"
$ref: '#/definitions/User'
responses:
400:
description: "Invalid user supplied"
404:
description: "User not found"
"400":
description: Invalid user supplied
"404":
description: User not found
security:
- auth:
- "admin:User"
- admin:User
delete:
summary: "Delete user"
description: "This can only be done by the logged in user."
summary: Delete user
description: This can only be done by the logged in user.
produces:
- "application/json"
- application/json
parameters:
- name: "username"
in: "path"
description: "The name that needs to be deleted"
- name: username
in: path
description: The name that needs to be deleted
required: true
type: "string"
type: string
responses:
400:
description: "Invalid username supplied"
404:
description: "User not found"
"400":
description: Invalid username supplied
"404":
description: User not found
security:
- auth:
- "admin:User"
- admin:User
securityDefinitions:
auth:
type: "oauth2"
authorizationUrl: "http://localhost/oauth/dialog"
flow: "implicit"
type: oauth2
authorizationUrl: http://localhost/oauth/dialog
flow: implicit
scopes:
write:ToscaTemplate: "modify topolog template in your account"
read:ToscaTemplate: "read your topolog template"
admin:User: "Grants access to admin operations"
write:Credentials: "modify cloud credentials in your account"
read:Credentials: "read your cloud credentials"
write:ToscaTemplate: modify topolog template in your account
read:ToscaTemplate: read your topolog template
admin:User: Grants access to admin operations
write:Credentials: modify cloud credentials in your account
read:Credentials: read your cloud credentials
definitions:
User:
$ref: "https://raw.githubusercontent.com/skoulouzis/CONF/DRIP_3.0/openAPI/User.yml#/User"
type: object
Credentials:
$ref: "https://raw.githubusercontent.com/skoulouzis/CONF/DRIP_3.0/openAPI/TOSCA/Credentials.yml#/Credentials"
type: object
properties:
protocol:
type: string
token_type:
type: string
token:
type: string
keys:
type: object
additionalProperties:
type: string
user:
type: string
cloud_provider_name:
type: string
NodeTemplate:
$ref: "https://raw.githubusercontent.com/skoulouzis/CONF/DRIP_3.0/openAPI/TOSCA/NodeTemplate.yml#/NodeTemplate"
type: object
properties:
derived_from:
type: string
properties:
type: object
additionalProperties:
type: object
properties: {}
requirements:
type: array
items:
type: object
additionalProperties:
type: object
properties: {}
interfaces:
type: object
additionalProperties:
type: object
properties: {}
capabilities:
type: object
additionalProperties:
type: object
properties: {}
type:
type: string
description:
type: string
directives:
type: array
items:
type: string
attributes:
type: object
additionalProperties:
type: object
properties: {}
artifacts:
type: object
additionalProperties:
type: object
properties: {}
TopologyTemplate:
$ref: "https://raw.githubusercontent.com/skoulouzis/CONF/DRIP_3.0/openAPI/TOSCA/TopologyTemplate.yml#/TopologyTemplate"
type: object
properties:
description:
type: string
inputs:
type: object
additionalProperties:
type: string
node_templates:
type: object
additionalProperties:
$ref: '#/definitions/NodeTemplate_2'
relationship_templates:
type: object
additionalProperties:
type: object
properties: {}
outputs:
type: object
additionalProperties:
type: object
properties: {}
groups:
type: object
additionalProperties:
type: object
properties: {}
substitution_mappings:
type: object
additionalProperties:
type: object
properties: {}
policies:
type: array
items:
type: object
additionalProperties:
type: object
properties: {}
ToscaTemplate:
$ref: "https://raw.githubusercontent.com/skoulouzis/CONF/DRIP_3.0/openAPI/TOSCA/ToscaTemplate.yml#/ToscaTemplate"
type: object
properties:
tosca_definitions_version:
type: string
tosca_default_namespace:
type: string
template_name:
type: string
topology_template:
$ref: '#/definitions/TopologyTemplate_2'
template_author:
type: string
template_version:
type: string
description:
type: string
imports:
type: array
items:
type: object
additionalProperties:
type: object
properties: {}
dsl_definitions:
type: object
additionalProperties:
type: object
properties: {}
node_types:
type: object
additionalProperties:
type: object
properties: {}
relationship_types:
type: object
additionalProperties:
type: object
properties: {}
relationship_templates:
type: object
additionalProperties:
type: object
properties: {}
capability_types:
type: object
additionalProperties:
type: object
properties: {}
artifact_types:
type: object
additionalProperties:
type: object
properties: {}
data_types:
type: object
additionalProperties:
type: object
properties: {}
interface_types:
type: object
additionalProperties:
type: object
properties: {}
policy_types:
type: object
additionalProperties:
type: object
properties: {}
group_types:
type: object
additionalProperties:
type: object
properties: {}
repositories:
type: object
additionalProperties:
type: object
properties: {}
Provisioner:
type: object
NodeTemplate_2:
type: object
properties:
derived_from:
type: string
properties:
type: object
additionalProperties:
type: object
properties: {}
requirements:
type: array
items:
type: object
additionalProperties:
type: object
properties: {}
interfaces:
type: object
additionalProperties:
type: object
properties: {}
capabilities:
type: object
additionalProperties:
type: object
properties: {}
type:
type: string
description:
type: string
directives:
type: array
items:
type: string
attributes:
type: object
additionalProperties:
type: object
properties: {}
artifacts:
type: object
additionalProperties:
type: object
properties: {}
TopologyTemplate_2:
type: object
properties:
description:
type: string
inputs:
type: object
additionalProperties:
type: string
node_templates:
type: object
additionalProperties:
$ref: '#/definitions/NodeTemplate_2'
relationship_templates:
type: object
additionalProperties:
type: object
properties: {}
outputs:
type: object
additionalProperties:
type: object
properties: {}
groups:
type: object
additionalProperties:
type: object
properties: {}
substitution_mappings:
type: object
additionalProperties:
type: object
properties: {}
policies:
type: array
items:
type: object
additionalProperties:
type: object
properties: {}
......@@ -8,4 +8,4 @@ Provisioner:
description:
type: "string"
tosca_interface_types:
type: "string"
\ No newline at end of file
type: "string"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment