api/spec/openapi/ParallelCluster.openapi.yaml (2,532 lines of code) (raw):
openapi: 3.0.2
info:
title: ParallelCluster
version: 3.14.0
description: ParallelCluster API
paths:
/v3/clusters:
get:
description: Retrieve the list of existing clusters.
operationId: ListClusters
parameters:
- name: region
in: query
description: List clusters deployed to a given AWS Region.
schema:
type: string
description: List clusters deployed to a given AWS Region.
- name: nextToken
in: query
description: Token to use for paginated requests.
schema:
type: string
description: Token to use for paginated requests.
- name: clusterStatus
in: query
description: Filter by cluster status. (Defaults to all clusters.)
style: form
schema:
type: array
items:
$ref: '#/components/schemas/ClusterStatusFilteringOption'
uniqueItems: true
description: Filter by cluster status. (Defaults to all clusters.)
explode: true
responses:
"200":
description: ListClusters 200 response
content:
application/json:
schema:
$ref: '#/components/schemas/ListClustersResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Cluster Operations
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
post:
description: Create a managed cluster in a given region.
operationId: CreateCluster
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateClusterRequestContent'
required: true
parameters:
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
- name: suppressValidators
in: query
description: 'Identifies one or more config validators to suppress. Format: (ALL|type:[A-Za-z0-9]+)'
style: form
schema:
type: array
items:
type: string
pattern: ^(ALL|type:[A-Za-z0-9]+)$
uniqueItems: true
description: 'Identifies one or more config validators to suppress. Format: (ALL|type:[A-Za-z0-9]+)'
explode: true
- name: validationFailureLevel
in: query
description: Min validation level that will cause the creation to fail. (Defaults to 'ERROR'.)
schema:
$ref: '#/components/schemas/ValidationLevel'
- name: dryrun
in: query
description: Only perform request validation without creating any resource. May be used to validate the cluster configuration. (Defaults to 'false'.)
schema:
type: boolean
description: Only perform request validation without creating any resource. May be used to validate the cluster configuration. (Defaults to 'false'.)
- name: rollbackOnFailure
in: query
description: When set it automatically initiates a cluster stack rollback on failures. (Defaults to 'true'.)
schema:
type: boolean
description: When set it automatically initiates a cluster stack rollback on failures. (Defaults to 'true'.)
responses:
"202":
description: CreateCluster 202 response
content:
application/json:
schema:
$ref: '#/components/schemas/CreateClusterResponseContent'
"400":
description: CreateClusterBadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/CreateClusterBadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"409":
description: ConflictException 409 response
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictExceptionResponseContent'
"412":
description: DryrunOperationException 412 response
content:
application/json:
schema:
$ref: '#/components/schemas/DryrunOperationExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Cluster Operations
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
/v3/clusters/{clusterName}:
delete:
description: Initiate the deletion of a cluster.
operationId: DeleteCluster
parameters:
- name: clusterName
in: path
description: Name of the cluster
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Name of the cluster
required: true
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
responses:
"202":
description: DeleteCluster 202 response
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteClusterResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Cluster Operations
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
get:
description: Get detailed information about an existing cluster.
operationId: DescribeCluster
parameters:
- name: clusterName
in: path
description: Name of the cluster
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Name of the cluster
required: true
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
responses:
"200":
description: DescribeCluster 200 response
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeClusterResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Cluster Operations
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
put:
description: Update a cluster managed in a given region.
operationId: UpdateCluster
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClusterRequestContent'
required: true
parameters:
- name: clusterName
in: path
description: Name of the cluster
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Name of the cluster
required: true
- name: suppressValidators
in: query
description: 'Identifies one or more config validators to suppress. Format: (ALL|type:[A-Za-z0-9]+)'
style: form
schema:
type: array
items:
type: string
pattern: ^(ALL|type:[A-Za-z0-9]+)$
uniqueItems: true
description: 'Identifies one or more config validators to suppress. Format: (ALL|type:[A-Za-z0-9]+)'
explode: true
- name: validationFailureLevel
in: query
description: Min validation level that will cause the update to fail. (Defaults to 'ERROR'.)
schema:
$ref: '#/components/schemas/ValidationLevel'
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
- name: dryrun
in: query
description: Only perform request validation without creating any resource. May be used to validate the cluster configuration and update requirements. (Defaults to 'false'.)
schema:
type: boolean
description: Only perform request validation without creating any resource. May be used to validate the cluster configuration and update requirements. (Defaults to 'false'.)
- name: forceUpdate
in: query
description: Force update by ignoring the update validation errors. (Defaults to 'false'.)
schema:
type: boolean
description: Force update by ignoring the update validation errors. (Defaults to 'false'.)
responses:
"202":
description: UpdateCluster 202 response
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClusterResponseContent'
"400":
description: UpdateClusterBadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClusterBadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"409":
description: ConflictException 409 response
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictExceptionResponseContent'
"412":
description: DryrunOperationException 412 response
content:
application/json:
schema:
$ref: '#/components/schemas/DryrunOperationExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Cluster Operations
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
/v3/clusters/{clusterName}/computefleet:
get:
description: Describe the status of the compute fleet.
operationId: DescribeComputeFleet
parameters:
- name: clusterName
in: path
description: Name of the cluster
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Name of the cluster
required: true
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
responses:
"200":
description: DescribeComputeFleet 200 response
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeComputeFleetResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Cluster ComputeFleet
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
patch:
description: Update the status of the cluster compute fleet.
operationId: UpdateComputeFleet
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateComputeFleetRequestContent'
required: true
parameters:
- name: clusterName
in: path
description: Name of the cluster
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Name of the cluster
required: true
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
responses:
"204":
description: UpdateComputeFleet 204 response
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateComputeFleetResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Cluster ComputeFleet
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
/v3/clusters/{clusterName}/instances:
delete:
description: Initiate the forced termination of all cluster compute nodes. Does not work with AWS Batch clusters.
operationId: DeleteClusterInstances
parameters:
- name: clusterName
in: path
description: Name of the cluster
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Name of the cluster
required: true
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
- name: force
in: query
description: Force the deletion also when the cluster with the given name is not found. (Defaults to 'false'.)
schema:
type: boolean
description: Force the deletion also when the cluster with the given name is not found. (Defaults to 'false'.)
responses:
"202":
description: DeleteClusterInstances 202 response
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Cluster Instances
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
get:
description: Describe the instances belonging to a given cluster.
operationId: DescribeClusterInstances
parameters:
- name: clusterName
in: path
description: Name of the cluster
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Name of the cluster
required: true
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
- name: nextToken
in: query
description: Token to use for paginated requests.
schema:
type: string
description: Token to use for paginated requests.
- name: nodeType
in: query
description: Filter the instances by node type.
schema:
$ref: '#/components/schemas/NodeType'
- name: queueName
in: query
description: Filter the instances by queue name.
schema:
type: string
description: Filter the instances by queue name.
responses:
"200":
description: DescribeClusterInstances 200 response
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeClusterInstancesResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Cluster Instances
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
/v3/clusters/{clusterName}/logstreams:
get:
description: Retrieve the list of log streams associated with a cluster.
operationId: ListClusterLogStreams
parameters:
- name: clusterName
in: path
description: Name of the cluster
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Name of the cluster
required: true
- name: region
in: query
description: Region that the given cluster belongs to.
schema:
type: string
description: Region that the given cluster belongs to.
- name: filters
in: query
description: |-
Filter the log streams. Format: 'Name=a,Values=1 Name=b,Values=2,3'.
Accepted filters are:
private-dns-name - The short form of the private DNS name of the instance (e.g. ip-10-0-0-101).
node-type - The node type, the only accepted value for this filter is HeadNode.
style: spaceDelimited
schema:
type: array
items:
type: string
uniqueItems: true
description: |-
Filter the log streams. Format: 'Name=a,Values=1 Name=b,Values=2,3'.
Accepted filters are:
private-dns-name - The short form of the private DNS name of the instance (e.g. ip-10-0-0-101).
node-type - The node type, the only accepted value for this filter is HeadNode.
explode: true
- name: nextToken
in: query
description: Token to use for paginated requests.
schema:
type: string
description: Token to use for paginated requests.
responses:
"200":
description: ListClusterLogStreams 200 response
content:
application/json:
schema:
$ref: '#/components/schemas/ListClusterLogStreamsResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Cluster Logs
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
/v3/clusters/{clusterName}/logstreams/{logStreamName}:
get:
description: Retrieve the events associated with a log stream.
operationId: GetClusterLogEvents
parameters:
- name: clusterName
in: path
description: Name of the cluster
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Name of the cluster
required: true
- name: logStreamName
in: path
description: Name of the log stream.
schema:
type: string
description: Name of the log stream.
required: true
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
- name: nextToken
in: query
description: Token to use for paginated requests.
schema:
type: string
description: Token to use for paginated requests.
- name: startFromHead
in: query
description: If the value is true, the earliest log events are returned first. If the value is false, the latest log events are returned first. (Defaults to 'false'.)
schema:
type: boolean
description: If the value is true, the earliest log events are returned first. If the value is false, the latest log events are returned first. (Defaults to 'false'.)
- name: limit
in: query
description: The maximum number of log events returned. If you don't specify a value, the maximum is as many log events as can fit in a response size of 1 MB, up to 10,000 log events.
schema:
type: integer
description: The maximum number of log events returned. If you don't specify a value, the maximum is as many log events as can fit in a response size of 1 MB, up to 10,000 log events.
format: int32
- name: startTime
in: query
description: The start of the time range, expressed in ISO 8601 format (e.g. '2021-01-01T20:00:00Z'). Events with a timestamp equal to this time or later than this time are included.
schema:
type: string
description: The start of the time range, expressed in ISO 8601 format (e.g. '2021-01-01T20:00:00Z'). Events with a timestamp equal to this time or later than this time are included.
format: date-time
- name: endTime
in: query
description: The end of the time range, expressed in ISO 8601 format (e.g. '2021-01-01T20:00:00Z'). Events with a timestamp equal to or later than this time are not included.
schema:
type: string
description: The end of the time range, expressed in ISO 8601 format (e.g. '2021-01-01T20:00:00Z'). Events with a timestamp equal to or later than this time are not included.
format: date-time
responses:
"200":
description: GetClusterLogEvents 200 response
content:
application/json:
schema:
$ref: '#/components/schemas/GetClusterLogEventsResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Cluster Logs
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
/v3/clusters/{clusterName}/stackevents:
get:
description: Retrieve the events associated with the stack for a given cluster.
operationId: GetClusterStackEvents
parameters:
- name: clusterName
in: path
description: Name of the cluster
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Name of the cluster
required: true
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
- name: nextToken
in: query
description: Token to use for paginated requests.
schema:
type: string
description: Token to use for paginated requests.
responses:
"200":
description: GetClusterStackEvents 200 response
content:
application/json:
schema:
$ref: '#/components/schemas/GetClusterStackEventsResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Cluster Logs
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
/v3/images/custom:
get:
description: Retrieve the list of existing custom images.
operationId: ListImages
parameters:
- name: region
in: query
description: List images built in a given AWS Region.
schema:
type: string
description: List images built in a given AWS Region.
- name: nextToken
in: query
description: Token to use for paginated requests.
schema:
type: string
description: Token to use for paginated requests.
- name: imageStatus
in: query
description: Filter images by the status provided.
schema:
$ref: '#/components/schemas/ImageStatusFilteringOption'
required: true
responses:
"200":
description: ListImages 200 response
content:
application/json:
schema:
$ref: '#/components/schemas/ListImagesResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Image Operations
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
post:
description: Create a custom ParallelCluster image in a given region.
operationId: BuildImage
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BuildImageRequestContent'
required: true
parameters:
- name: suppressValidators
in: query
description: 'Identifies one or more config validators to suppress. Format: (ALL|type:[A-Za-z0-9]+)'
style: form
schema:
type: array
items:
type: string
pattern: ^(ALL|type:[A-Za-z0-9]+)$
uniqueItems: true
description: 'Identifies one or more config validators to suppress. Format: (ALL|type:[A-Za-z0-9]+)'
explode: true
- name: validationFailureLevel
in: query
description: Min validation level that will cause the creation to fail. (Defaults to 'ERROR'.)
schema:
$ref: '#/components/schemas/ValidationLevel'
- name: dryrun
in: query
description: Only perform request validation without creating any resource. It can be used to validate the image configuration. (Defaults to 'false'.)
schema:
type: boolean
description: Only perform request validation without creating any resource. It can be used to validate the image configuration. (Defaults to 'false'.)
- name: rollbackOnFailure
in: query
description: When set, will automatically initiate an image stack rollback on failure. (Defaults to 'false'.)
schema:
type: boolean
description: When set, will automatically initiate an image stack rollback on failure. (Defaults to 'false'.)
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
responses:
"202":
description: BuildImage 202 response
content:
application/json:
schema:
$ref: '#/components/schemas/BuildImageResponseContent'
"400":
description: BuildImageBadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BuildImageBadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"409":
description: ConflictException 409 response
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictExceptionResponseContent'
"412":
description: DryrunOperationException 412 response
content:
application/json:
schema:
$ref: '#/components/schemas/DryrunOperationExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Image Operations
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
/v3/images/custom/{imageId}:
delete:
description: Initiate the deletion of the custom ParallelCluster image.
operationId: DeleteImage
parameters:
- name: imageId
in: path
description: Id of the image.
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Id of the image.
required: true
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
- name: force
in: query
description: Force deletion in case there are instances using the AMI or in case the AMI is shared. (Defaults to 'false'.)
schema:
type: boolean
description: Force deletion in case there are instances using the AMI or in case the AMI is shared. (Defaults to 'false'.)
responses:
"202":
description: DeleteImage 202 response
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteImageResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Image Operations
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
get:
description: Get detailed information about an existing image.
operationId: DescribeImage
parameters:
- name: imageId
in: path
description: Id of the image.
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Id of the image.
required: true
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
responses:
"200":
description: DescribeImage 200 response
content:
application/json:
schema:
$ref: '#/components/schemas/DescribeImageResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Image Operations
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
/v3/images/custom/{imageId}/logstreams:
get:
description: Retrieve the list of log streams associated with an image.
operationId: ListImageLogStreams
parameters:
- name: imageId
in: path
description: Id of the image.
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Id of the image.
required: true
- name: region
in: query
description: Region that the given image belongs to.
schema:
type: string
description: Region that the given image belongs to.
- name: nextToken
in: query
description: Token to use for paginated requests.
schema:
type: string
description: Token to use for paginated requests.
responses:
"200":
description: ListImageLogStreams 200 response
content:
application/json:
schema:
$ref: '#/components/schemas/ListImageLogStreamsResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Image Logs
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
/v3/images/custom/{imageId}/logstreams/{logStreamName}:
get:
description: Retrieve the events associated with an image build.
operationId: GetImageLogEvents
parameters:
- name: imageId
in: path
description: Id of the image.
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Id of the image.
required: true
- name: logStreamName
in: path
description: Name of the log stream.
schema:
type: string
description: Name of the log stream.
required: true
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
- name: nextToken
in: query
description: Token to use for paginated requests.
schema:
type: string
description: Token to use for paginated requests.
- name: startFromHead
in: query
description: If the value is true, the earliest log events are returned first. If the value is false, the latest log events are returned first. (Defaults to 'false'.)
schema:
type: boolean
description: If the value is true, the earliest log events are returned first. If the value is false, the latest log events are returned first. (Defaults to 'false'.)
- name: limit
in: query
description: The maximum number of log events returned. If you don't specify a value, the maximum is as many log events as can fit in a response size of 1 MB, up to 10,000 log events.
schema:
type: integer
description: The maximum number of log events returned. If you don't specify a value, the maximum is as many log events as can fit in a response size of 1 MB, up to 10,000 log events.
format: int32
- name: startTime
in: query
description: The start of the time range, expressed in ISO 8601 format (e.g. '2021-01-01T20:00:00Z'). Events with a timestamp equal to this time or later than this time are included.
schema:
type: string
description: The start of the time range, expressed in ISO 8601 format (e.g. '2021-01-01T20:00:00Z'). Events with a timestamp equal to this time or later than this time are included.
format: date-time
- name: endTime
in: query
description: The end of the time range, expressed in ISO 8601 format (e.g. '2021-01-01T20:00:00Z'). Events with a timestamp equal to or later than this time are not included.
schema:
type: string
description: The end of the time range, expressed in ISO 8601 format (e.g. '2021-01-01T20:00:00Z'). Events with a timestamp equal to or later than this time are not included.
format: date-time
responses:
"200":
description: GetImageLogEvents 200 response
content:
application/json:
schema:
$ref: '#/components/schemas/GetImageLogEventsResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Image Logs
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
/v3/images/custom/{imageId}/stackevents:
get:
description: Retrieve the events associated with the stack for a given image build.
operationId: GetImageStackEvents
parameters:
- name: imageId
in: path
description: Id of the image.
schema:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Id of the image.
required: true
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
- name: nextToken
in: query
description: Token to use for paginated requests.
schema:
type: string
description: Token to use for paginated requests.
responses:
"200":
description: GetImageStackEvents 200 response
content:
application/json:
schema:
$ref: '#/components/schemas/GetImageStackEventsResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"404":
description: NotFoundException 404 response
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundExceptionResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Image Logs
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
/v3/images/official:
get:
description: List Official ParallelCluster AMIs.
operationId: ListOfficialImages
parameters:
- name: region
in: query
description: AWS Region that the operation corresponds to.
schema:
type: string
description: AWS Region that the operation corresponds to.
- name: os
in: query
description: Filter by OS distribution (Default is to not filter.)
schema:
type: string
description: Filter by OS distribution (Default is to not filter.)
- name: architecture
in: query
description: Filter by architecture (Default is to not filter.)
schema:
type: string
description: Filter by architecture (Default is to not filter.)
responses:
"200":
description: ListOfficialImages 200 response
content:
application/json:
schema:
$ref: '#/components/schemas/ListOfficialImagesResponseContent'
"400":
description: BadRequestException 400 response
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestExceptionResponseContent'
"401":
description: UnauthorizedClientError 401 response
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedClientErrorResponseContent'
"429":
description: LimitExceededException 429 response
content:
application/json:
schema:
$ref: '#/components/schemas/LimitExceededExceptionResponseContent'
"500":
description: InternalServiceException 500 response
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServiceExceptionResponseContent'
tags:
- Image Operations
x-amazon-apigateway-integration:
type: aws_proxy
httpMethod: POST
uri:
Fn::Sub: arn:${AWS::Partition}:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${ParallelClusterFunction.Arn}/invocations
credentials:
Fn::Sub: ${APIGatewayExecutionRole.Arn}
payloadFormatVersion: "2.0"
components:
schemas:
AmiInfo:
type: object
properties:
architecture:
type: string
amiId:
type: string
name:
type: string
os:
type: string
version:
type: string
required:
- amiId
- architecture
- name
- os
- version
BadRequestExceptionResponseContent:
type: object
description: This exception is thrown when a client calls an API with wrong parameters.
properties:
message:
type: string
BuildImageBadRequestExceptionResponseContent:
type: object
description: This exception is thrown when a client calls the BuildImage API with an invalid request. This includes an error due to invalid image configuration.
properties:
message:
type: string
configurationValidationErrors:
type: array
items:
$ref: '#/components/schemas/ConfigValidationMessage'
BuildImageRequestContent:
type: object
properties:
imageConfiguration:
type: string
description: Image configuration as a YAML document.
imageId:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Id of the Image that will be built.
required:
- imageConfiguration
- imageId
BuildImageResponseContent:
type: object
properties:
image:
$ref: '#/components/schemas/ImageInfoSummary'
validationMessages:
type: array
items:
$ref: '#/components/schemas/ConfigValidationMessage'
description: List of messages collected during image config validation whose level is lower than the 'validationFailureLevel' set by the user.
required:
- image
Change:
type: object
properties:
parameter:
type: string
currentValue:
type: string
requestedValue:
type: string
CloudFormationResourceStatus:
type: string
enum:
- CREATE_IN_PROGRESS
- CREATE_FAILED
- CREATE_COMPLETE
- DELETE_IN_PROGRESS
- DELETE_FAILED
- DELETE_COMPLETE
- DELETE_SKIPPED
- UPDATE_IN_PROGRESS
- UPDATE_FAILED
- UPDATE_COMPLETE
- IMPORT_FAILED
- IMPORT_COMPLETE
- IMPORT_IN_PROGRESS
- IMPORT_ROLLBACK_IN_PROGRESS
- IMPORT_ROLLBACK_FAILED
- IMPORT_ROLLBACK_COMPLETE
CloudFormationStackStatus:
type: string
enum:
- CREATE_IN_PROGRESS
- CREATE_FAILED
- CREATE_COMPLETE
- IMPORT_IN_PROGRESS
- IMPORT_COMPLETE
- IMPORT_ROLLBACK_IN_PROGRESS
- IMPORT_ROLLBACK_FAILED
- IMPORT_ROLLBACK_COMPLETE
- ROLLBACK_IN_PROGRESS
- ROLLBACK_FAILED
- ROLLBACK_COMPLETE
- DELETE_IN_PROGRESS
- DELETE_FAILED
- DELETE_COMPLETE
- REVIEW_IN_PROGRESS
- UPDATE_IN_PROGRESS
- UPDATE_COMPLETE_CLEANUP_IN_PROGRESS
- UPDATE_COMPLETE
- UPDATE_FAILED
- UPDATE_ROLLBACK_IN_PROGRESS
- UPDATE_ROLLBACK_FAILED
- UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS
- UPDATE_ROLLBACK_COMPLETE
ClusterConfigurationStructure:
type: object
properties:
url:
type: string
description: URL of the cluster configuration file.
ClusterInfoSummary:
type: object
properties:
clusterName:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Name of the cluster.
region:
type: string
description: AWS region where the cluster is created.
version:
type: string
description: ParallelCluster version used to create the cluster.
cloudformationStackArn:
type: string
description: ARN of the main CloudFormation stack.
cloudformationStackStatus:
$ref: '#/components/schemas/CloudFormationStackStatus'
clusterStatus:
$ref: '#/components/schemas/ClusterStatus'
scheduler:
$ref: '#/components/schemas/Scheduler'
required:
- cloudformationStackArn
- cloudformationStackStatus
- clusterName
- clusterStatus
- region
- version
ClusterInstance:
type: object
properties:
instanceId:
type: string
instanceType:
type: string
launchTime:
type: string
format: date-time
privateIpAddress:
type: string
publicIpAddress:
type: string
state:
$ref: '#/components/schemas/InstanceState'
nodeType:
$ref: '#/components/schemas/NodeType'
queueName:
type: string
poolName:
type: string
required:
- instanceId
- instanceType
- launchTime
- nodeType
- privateIpAddress
- state
ClusterStatus:
type: string
enum:
- CREATE_IN_PROGRESS
- CREATE_FAILED
- CREATE_COMPLETE
- DELETE_IN_PROGRESS
- DELETE_FAILED
- DELETE_COMPLETE
- UPDATE_IN_PROGRESS
- UPDATE_COMPLETE
- UPDATE_FAILED
ClusterStatusFilteringOption:
type: string
enum:
- CREATE_IN_PROGRESS
- CREATE_FAILED
- CREATE_COMPLETE
- DELETE_IN_PROGRESS
- DELETE_FAILED
- UPDATE_IN_PROGRESS
- UPDATE_COMPLETE
- UPDATE_FAILED
ComputeFleetStatus:
type: string
enum:
- START_REQUESTED
- STARTING
- RUNNING
- PROTECTED
- STOP_REQUESTED
- STOPPING
- STOPPED
- UNKNOWN
- ENABLED
- DISABLED
ConfigValidationMessage:
type: object
properties:
id:
type: string
description: Id of the validator.
type:
type: string
description: Type of the validator.
level:
$ref: '#/components/schemas/ValidationLevel'
message:
type: string
description: Validation message
ConflictExceptionResponseContent:
type: object
description: This exception is thrown when a client request to create/modify content would result in a conflict.
properties:
message:
type: string
CreateClusterBadRequestExceptionResponseContent:
type: object
description: This exception is thrown when a client calls the CreateCluster API with an invalid request. This includes an error due to invalid cluster configuration.
properties:
message:
type: string
configurationValidationErrors:
type: array
items:
$ref: '#/components/schemas/ConfigValidationMessage'
CreateClusterRequestContent:
type: object
properties:
clusterName:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Name of the cluster that will be created.
clusterConfiguration:
type: string
description: Cluster configuration as a YAML document.
required:
- clusterConfiguration
- clusterName
CreateClusterResponseContent:
type: object
properties:
cluster:
$ref: '#/components/schemas/ClusterInfoSummary'
validationMessages:
type: array
items:
$ref: '#/components/schemas/ConfigValidationMessage'
description: List of messages collected during cluster config validation whose level is lower than the 'validationFailureLevel' set by the user.
required:
- cluster
DeleteClusterResponseContent:
type: object
properties:
cluster:
$ref: '#/components/schemas/ClusterInfoSummary'
required:
- cluster
DeleteImageResponseContent:
type: object
properties:
image:
$ref: '#/components/schemas/ImageInfoSummary'
required:
- image
DescribeClusterInstancesResponseContent:
type: object
properties:
nextToken:
type: string
description: Token to use for paginated requests.
instances:
type: array
items:
$ref: '#/components/schemas/ClusterInstance'
required:
- instances
DescribeClusterResponseContent:
type: object
properties:
clusterName:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Name of the cluster.
region:
type: string
description: AWS region where the cluster is created.
version:
type: string
description: ParallelCluster version used to create the cluster.
cloudFormationStackStatus:
$ref: '#/components/schemas/CloudFormationStackStatus'
clusterStatus:
$ref: '#/components/schemas/ClusterStatus'
scheduler:
$ref: '#/components/schemas/Scheduler'
cloudformationStackArn:
type: string
description: ARN of the main CloudFormation stack.
creationTime:
type: string
description: Timestamp representing the cluster creation time.
format: date-time
lastUpdatedTime:
type: string
description: Timestamp representing the last cluster update time.
format: date-time
clusterConfiguration:
$ref: '#/components/schemas/ClusterConfigurationStructure'
computeFleetStatus:
$ref: '#/components/schemas/ComputeFleetStatus'
tags:
type: array
items:
$ref: '#/components/schemas/Tag'
description: Tags associated with the cluster.
headNode:
$ref: '#/components/schemas/EC2Instance'
loginNodes:
type: array
items:
$ref: '#/components/schemas/LoginNodesPool'
failures:
type: array
items:
$ref: '#/components/schemas/Failure'
description: Failures array containing failures reason and code when the stack is in CREATE_FAILED status.
required:
- cloudFormationStackStatus
- cloudformationStackArn
- clusterConfiguration
- clusterName
- clusterStatus
- computeFleetStatus
- creationTime
- lastUpdatedTime
- region
- tags
- version
DescribeComputeFleetResponseContent:
type: object
properties:
status:
$ref: '#/components/schemas/ComputeFleetStatus'
lastStatusUpdatedTime:
type: string
description: Timestamp representing the last status update time.
format: date-time
required:
- status
DescribeImageResponseContent:
type: object
properties:
imageId:
type: string
description: Id of the Image to retrieve detailed information for.
region:
type: string
description: AWS region where the image is created.
version:
type: string
description: ParallelCluster version used to build the image.
imageBuildStatus:
$ref: '#/components/schemas/ImageBuildStatus'
imageBuildLogsArn:
type: string
description: ARN of the logs for the image build process.
cloudformationStackStatus:
$ref: '#/components/schemas/CloudFormationStackStatus'
cloudformationStackStatusReason:
type: string
description: Reason for the CloudFormation stack status.
cloudformationStackArn:
type: string
description: ARN of the main CloudFormation stack.
creationTime:
type: string
description: Timestamp representing the image creation time.
format: date-time
cloudformationStackCreationTime:
type: string
description: Timestamp representing the CloudFormation stack creation time.
format: date-time
cloudformationStackTags:
type: array
items:
$ref: '#/components/schemas/Tag'
description: Tags for the CloudFormation stack.
imageConfiguration:
$ref: '#/components/schemas/ImageConfigurationStructure'
imagebuilderImageStatus:
$ref: '#/components/schemas/ImageBuilderImageStatus'
imagebuilderImageStatusReason:
type: string
description: Reason for the ImageBuilder Image status.
ec2AmiInfo:
$ref: '#/components/schemas/Ec2AmiInfo'
required:
- imageBuildStatus
- imageConfiguration
- imageId
- region
- version
DryrunOperationExceptionResponseContent:
type: object
description: Communicates that the operation would have succeeded without the dryrun flag.
properties:
message:
type: string
changeSet:
type: array
items:
$ref: '#/components/schemas/Change'
description: List of configuration changes requested by the operation.
validationMessages:
type: array
items:
$ref: '#/components/schemas/ConfigValidationMessage'
description: List of messages collected during cluster config validation whose level is lower than the 'validationFailureLevel' set by the user.
EC2Instance:
type: object
properties:
instanceId:
type: string
instanceType:
type: string
launchTime:
type: string
format: date-time
privateIpAddress:
type: string
publicIpAddress:
type: string
state:
$ref: '#/components/schemas/InstanceState'
required:
- instanceId
- instanceType
- launchTime
- privateIpAddress
- state
Ec2AmiInfo:
type: object
properties:
amiId:
type: string
description: EC2 AMI id
tags:
type: array
items:
$ref: '#/components/schemas/Tag'
description: EC2 AMI Tags
amiName:
type: string
description: EC2 AMI name
architecture:
type: string
description: EC2 AMI architecture
state:
$ref: '#/components/schemas/Ec2AmiState'
description:
type: string
description: EC2 AMI description
required:
- amiId
Ec2AmiInfoSummary:
type: object
properties:
amiId:
type: string
description: EC2 AMI id
required:
- amiId
Ec2AmiState:
type: string
enum:
- PENDING
- AVAILABLE
- INVALID
- DEREGISTERED
- TRANSIENT
- FAILED
- ERROR
Failure:
type: object
properties:
failureCode:
type: string
description: Failure code when the cluster stack is in CREATE_FAILED status.
failureReason:
type: string
description: Failure reason when the cluster stack is in CREATE_FAILED status.
GetClusterLogEventsResponseContent:
type: object
properties:
nextToken:
type: string
description: Token to use for paginated requests.
prevToken:
type: string
description: Token to use for paginated requests.
events:
type: array
items:
$ref: '#/components/schemas/LogEvent'
GetClusterStackEventsResponseContent:
type: object
properties:
nextToken:
type: string
description: Token to use for paginated requests.
events:
type: array
items:
$ref: '#/components/schemas/StackEvent'
GetImageLogEventsResponseContent:
type: object
properties:
nextToken:
type: string
description: Token to use for paginated requests.
prevToken:
type: string
description: Token to use for paginated requests.
events:
type: array
items:
$ref: '#/components/schemas/LogEvent'
GetImageStackEventsResponseContent:
type: object
properties:
nextToken:
type: string
description: Token to use for paginated requests.
events:
type: array
items:
$ref: '#/components/schemas/StackEvent'
ImageBuildStatus:
type: string
enum:
- BUILD_IN_PROGRESS
- BUILD_FAILED
- BUILD_COMPLETE
- DELETE_IN_PROGRESS
- DELETE_FAILED
- DELETE_COMPLETE
ImageBuilderImageStatus:
type: string
enum:
- PENDING
- CREATING
- BUILDING
- TESTING
- DISTRIBUTING
- INTEGRATING
- AVAILABLE
- CANCELLED
- FAILED
- DEPRECATED
- DELETED
ImageConfigurationStructure:
type: object
properties:
url:
type: string
description: URL of the image configuration file.
ImageInfoSummary:
type: object
properties:
imageId:
type: string
pattern: ^[a-zA-Z][a-zA-Z0-9-]+$
description: Id of the image.
ec2AmiInfo:
$ref: '#/components/schemas/Ec2AmiInfoSummary'
region:
type: string
description: AWS region where the image is built.
version:
type: string
description: ParallelCluster version used to build the image.
cloudformationStackArn:
type: string
description: ARN of the main CloudFormation stack.
imageBuildStatus:
$ref: '#/components/schemas/ImageBuildStatus'
cloudformationStackStatus:
$ref: '#/components/schemas/CloudFormationStackStatus'
required:
- imageBuildStatus
- imageId
- region
- version
ImageStatusFilteringOption:
type: string
enum:
- AVAILABLE
- PENDING
- FAILED
InstanceState:
type: string
enum:
- pending
- running
- shutting-down
- terminated
- stopping
- stopped
InternalServiceExceptionResponseContent:
type: object
description: This exception is thrown on an unhandled service error.
properties:
message:
type: string
LimitExceededExceptionResponseContent:
type: object
description: The client is sending more than the allowed number of requests per unit of time.
properties:
message:
type: string
ListClusterLogStreamsResponseContent:
type: object
properties:
nextToken:
type: string
description: Token to use for paginated requests.
logStreams:
type: array
items:
$ref: '#/components/schemas/LogStream'
required:
- logStreams
ListClustersResponseContent:
type: object
properties:
nextToken:
type: string
description: Token to use for paginated requests.
clusters:
type: array
items:
$ref: '#/components/schemas/ClusterInfoSummary'
required:
- clusters
ListImageLogStreamsResponseContent:
type: object
properties:
nextToken:
type: string
description: Token to use for paginated requests.
logStreams:
type: array
items:
$ref: '#/components/schemas/LogStream'
required:
- logStreams
ListImagesResponseContent:
type: object
properties:
nextToken:
type: string
description: Token to use for paginated requests.
images:
type: array
items:
$ref: '#/components/schemas/ImageInfoSummary'
required:
- images
ListOfficialImagesResponseContent:
type: object
properties:
images:
type: array
items:
$ref: '#/components/schemas/AmiInfo'
required:
- images
LogEvent:
type: object
properties:
timestamp:
type: string
format: date-time
message:
type: string
required:
- message
- timestamp
LogStream:
type: object
properties:
logStreamName:
type: string
description: Name of the log stream.
creationTime:
type: string
description: The creation time of the stream.
format: date-time
firstEventTimestamp:
type: string
description: The time of the first event of the stream.
format: date-time
lastEventTimestamp:
type: string
description: The time of the last event of the stream. The lastEventTime value updates on an eventual consistency basis. It typically updates in less than an hour from ingestion, but in rare situations might take longer.
format: date-time
lastIngestionTime:
type: string
description: The last ingestion time.
format: date-time
uploadSequenceToken:
type: string
description: The sequence token.
logStreamArn:
type: string
description: The Amazon Resource Name (ARN) of the log stream.
required:
- creationTime
- firstEventTimestamp
- lastEventTimestamp
- lastIngestionTime
- logStreamArn
- logStreamName
- uploadSequenceToken
LoginNodesPool:
type: object
properties:
status:
$ref: '#/components/schemas/LoginNodesState'
poolName:
type: string
address:
type: string
scheme:
type: string
healthyNodes:
type: integer
format: int32
unhealthyNodes:
type: integer
format: int32
required:
- status
LoginNodesState:
type: string
enum:
- pending
- active
- failed
Metadata:
type: object
properties:
name:
type: string
version:
type: string
NodeType:
type: string
enum:
- HeadNode
- ComputeNode
- LoginNode
NotFoundExceptionResponseContent:
type: object
description: This exception is thrown when the requested entity is not found.
properties:
message:
type: string
RequestedComputeFleetStatus:
type: string
enum:
- START_REQUESTED
- STOP_REQUESTED
- ENABLED
- DISABLED
Scheduler:
type: object
properties:
type:
type: string
metadata:
$ref: '#/components/schemas/Metadata'
required:
- type
StackEvent:
type: object
properties:
stackId:
type: string
description: The unique ID name of the instance of the stack.
eventId:
type: string
description: The unique ID of this event.
stackName:
type: string
description: The name associated with a stack.
logicalResourceId:
type: string
description: The logical name of the resource specified in the template.
physicalResourceId:
type: string
description: The name or unique identifier associated with the physical instance of the resource.
resourceType:
type: string
description: Type of resource.
timestamp:
type: string
description: Time the status was updated.
format: date-time
resourceStatus:
$ref: '#/components/schemas/CloudFormationResourceStatus'
resourceStatusReason:
type: string
description: Success/failure message associated with the resource.
resourceProperties:
type: string
description: BLOB of the properties used to create the resource.
clientRequestToken:
type: string
description: The token passed to the operation that generated this event.
required:
- eventId
- logicalResourceId
- physicalResourceId
- resourceStatus
- resourceType
- stackId
- stackName
- timestamp
Tag:
type: object
properties:
key:
type: string
description: Tag name
value:
type: string
description: Tag value
UnauthorizedClientErrorResponseContent:
type: object
description: This exception is thrown when the client is not authorized to perform an action.
properties:
message:
type: string
UpdateClusterBadRequestExceptionResponseContent:
type: object
description: This exception is thrown when a client calls the UpdateCluster API with an invalid request. This includes an error due to invalid cluster configuration and unsupported update.
properties:
message:
type: string
configurationValidationErrors:
type: array
items:
$ref: '#/components/schemas/ConfigValidationMessage'
updateValidationErrors:
type: array
items:
$ref: '#/components/schemas/UpdateError'
changeSet:
type: array
items:
$ref: '#/components/schemas/Change'
UpdateClusterRequestContent:
type: object
properties:
clusterConfiguration:
type: string
description: Cluster configuration as a YAML document.
required:
- clusterConfiguration
UpdateClusterResponseContent:
type: object
properties:
cluster:
$ref: '#/components/schemas/ClusterInfoSummary'
validationMessages:
type: array
items:
$ref: '#/components/schemas/ConfigValidationMessage'
description: List of messages collected during cluster config validation whose level is lower than the 'validationFailureLevel' set by the user.
changeSet:
type: array
items:
$ref: '#/components/schemas/Change'
description: List of configuration changes requested by the update operation.
required:
- changeSet
- cluster
UpdateComputeFleetRequestContent:
type: object
properties:
status:
$ref: '#/components/schemas/RequestedComputeFleetStatus'
required:
- status
UpdateComputeFleetResponseContent:
type: object
properties:
status:
$ref: '#/components/schemas/ComputeFleetStatus'
lastStatusUpdatedTime:
type: string
description: Timestamp representing the last status update time.
format: date-time
required:
- status
UpdateError:
type: object
properties:
parameter:
type: string
currentValue:
type: string
requestedValue:
type: string
message:
type: string
ValidationLevel:
type: string
enum:
- INFO
- WARNING
- ERROR
securitySchemes:
aws.auth.sigv4:
type: apiKey
description: AWS Signature Version 4 authentication
name: Authorization
in: header
x-amazon-apigateway-authtype: awsSigv4
security:
- aws.auth.sigv4: []