diff --git a/api/services/ocean/spark/parameters/path/oceanSparkApplicationId.yaml b/api/services/ocean/spark/parameters/path/oceanSparkApplicationId.yaml deleted file mode 100644 index 5b99f00f3..000000000 --- a/api/services/ocean/spark/parameters/path/oceanSparkApplicationId.yaml +++ /dev/null @@ -1,5 +0,0 @@ -in: path -name: applicationId -required: true -schema: - $ref: "../../schemas/oceanSparkApplicationId.yaml" diff --git a/api/services/ocean/spark/parameters/path/oceanSparkClusterId.yaml b/api/services/ocean/spark/parameters/path/oceanSparkClusterId.yaml deleted file mode 100644 index b10087f03..000000000 --- a/api/services/ocean/spark/parameters/path/oceanSparkClusterId.yaml +++ /dev/null @@ -1,5 +0,0 @@ -in: path -name: clusterId -required: true -schema: - $ref: "../../schemas/oceanSparkClusterId.yaml" diff --git a/api/services/ocean/spark/parameters/path/oceanSparkConfigTemplateId.yaml b/api/services/ocean/spark/parameters/path/oceanSparkConfigTemplateId.yaml deleted file mode 100644 index bf5427f1f..000000000 --- a/api/services/ocean/spark/parameters/path/oceanSparkConfigTemplateId.yaml +++ /dev/null @@ -1,5 +0,0 @@ -in: path -name: configTemplateId -required: true -schema: - $ref: "../../schemas/oceanSparkConfigTemplateId.yaml" diff --git a/api/services/ocean/spark/parameters/path/oceanSparkJobId.yaml b/api/services/ocean/spark/parameters/path/oceanSparkJobId.yaml deleted file mode 100644 index 594c1776b..000000000 --- a/api/services/ocean/spark/parameters/path/oceanSparkJobId.yaml +++ /dev/null @@ -1,5 +0,0 @@ -in: path -name: jobId -required: true -schema: - $ref: "../../schemas/oceanSparkJobId.yaml" diff --git a/api/services/ocean/spark/parameters/path/oceanSparkWorkspaceId.yaml b/api/services/ocean/spark/parameters/path/oceanSparkWorkspaceId.yaml deleted file mode 100644 index 5dcb2a9e2..000000000 --- a/api/services/ocean/spark/parameters/path/oceanSparkWorkspaceId.yaml +++ /dev/null @@ -1,5 +0,0 @@ -in: path -name: workspaceId -required: true -schema: - $ref: "../../schemas/oceanSparkWorkspaceId.yaml" diff --git a/api/services/ocean/spark/parameters/query/after.yaml b/api/services/ocean/spark/parameters/query/after.yaml deleted file mode 100644 index d0c67974d..000000000 --- a/api/services/ocean/spark/parameters/query/after.yaml +++ /dev/null @@ -1,7 +0,0 @@ -in: query -name: after -required: false -schema: - $ref: "../../schemas/after.yaml" -description: > - If specified, the page returned in the response contains the items right after this cursor in the ordering diff --git a/api/services/ocean/spark/parameters/query/before.yaml b/api/services/ocean/spark/parameters/query/before.yaml deleted file mode 100644 index 05b54feb2..000000000 --- a/api/services/ocean/spark/parameters/query/before.yaml +++ /dev/null @@ -1,7 +0,0 @@ -in: query -name: before -required: false -schema: - $ref: "../../schemas/before.yaml" -description: > - If specified, the page returned in the response contains the items right before this cursor in the ordering diff --git a/api/services/ocean/spark/parameters/query/controllerClusterId.yaml b/api/services/ocean/spark/parameters/query/controllerClusterId.yaml deleted file mode 100644 index d881449a0..000000000 --- a/api/services/ocean/spark/parameters/query/controllerClusterId.yaml +++ /dev/null @@ -1,7 +0,0 @@ -in: query -name: controllerClusterId -required: false -schema: - $ref: "../../schemas/controllerClusterId.yaml" -description: > - Optionally filter on the reporting identifier of the Ocean controller in the Ocean cluster (controllerClusterId) diff --git a/api/services/ocean/spark/parameters/query/maxCreatedAt.yaml b/api/services/ocean/spark/parameters/query/maxCreatedAt.yaml deleted file mode 100644 index 08752fd3e..000000000 --- a/api/services/ocean/spark/parameters/query/maxCreatedAt.yaml +++ /dev/null @@ -1,8 +0,0 @@ -in: query -name: maxCreatedAt -required: false -example: "2021-11-22T00:00" -description: Optionally filter on the creation date -schema: - format: date-time - type: string diff --git a/api/services/ocean/spark/parameters/query/maxUpdatedAt.yaml b/api/services/ocean/spark/parameters/query/maxUpdatedAt.yaml deleted file mode 100644 index 1fef6e5cc..000000000 --- a/api/services/ocean/spark/parameters/query/maxUpdatedAt.yaml +++ /dev/null @@ -1,8 +0,0 @@ -in: query -name: maxUpdatedAt -required: false -example: "2021-11-22T00:00" -description: Optionally filter on the last update date -schema: - format: date-time - type: string diff --git a/api/services/ocean/spark/parameters/query/minCreatedAt.yaml b/api/services/ocean/spark/parameters/query/minCreatedAt.yaml deleted file mode 100644 index 602596752..000000000 --- a/api/services/ocean/spark/parameters/query/minCreatedAt.yaml +++ /dev/null @@ -1,8 +0,0 @@ -in: query -name: minCreatedAt -required: false -example: "2021-11-22T00:00" -description: Optionally filter on the creation date -schema: - format: date-time - type: string diff --git a/api/services/ocean/spark/parameters/query/minUpdatedAt.yaml b/api/services/ocean/spark/parameters/query/minUpdatedAt.yaml deleted file mode 100644 index 8109fd60e..000000000 --- a/api/services/ocean/spark/parameters/query/minUpdatedAt.yaml +++ /dev/null @@ -1,8 +0,0 @@ -in: query -name: minUpdatedAt -required: false -example: "2021-11-22T00:00" -description: Optionally filter on the last update date -schema: - format: date-time - type: string diff --git a/api/services/ocean/spark/parameters/query/oceanSparkApplicationState.yaml b/api/services/ocean/spark/parameters/query/oceanSparkApplicationState.yaml deleted file mode 100644 index 7089dc9fe..000000000 --- a/api/services/ocean/spark/parameters/query/oceanSparkApplicationState.yaml +++ /dev/null @@ -1,7 +0,0 @@ -in: query -name: state -required: false -description: > - Optionally filter on the state of the Spark application -schema: - $ref: "../../schemas/oceanSparkApplicationState.yaml" diff --git a/api/services/ocean/spark/parameters/query/oceanSparkApplicationSubmissionSource.yaml b/api/services/ocean/spark/parameters/query/oceanSparkApplicationSubmissionSource.yaml deleted file mode 100644 index 74711f7fd..000000000 --- a/api/services/ocean/spark/parameters/query/oceanSparkApplicationSubmissionSource.yaml +++ /dev/null @@ -1,7 +0,0 @@ -in: query -name: submissionSource -required: false -description: > - Optionally filter on the submission source of the Spark application -schema: - $ref: "../../schemas/oceanSparkApplicationSubmissionSource.yaml" diff --git a/api/services/ocean/spark/parameters/query/oceanSparkApplicationType.yaml b/api/services/ocean/spark/parameters/query/oceanSparkApplicationType.yaml deleted file mode 100644 index 468739422..000000000 --- a/api/services/ocean/spark/parameters/query/oceanSparkApplicationType.yaml +++ /dev/null @@ -1,7 +0,0 @@ -in: query -name: appType -required: false -description: > - Optionally filter on the type of the Spark application -schema: - $ref: "../../schemas/oceanSparkApplicationType.yaml" diff --git a/api/services/ocean/spark/parameters/query/oceanSparkClusterId.yaml b/api/services/ocean/spark/parameters/query/oceanSparkClusterId.yaml deleted file mode 100644 index ff72e8a67..000000000 --- a/api/services/ocean/spark/parameters/query/oceanSparkClusterId.yaml +++ /dev/null @@ -1,7 +0,0 @@ -in: query -name: clusterId -required: false -description: > - Optionally filter on the Ocean Spark cluster ID -schema: - $ref: "../../schemas/oceanSparkClusterId.yaml" diff --git a/api/services/ocean/spark/parameters/query/oceanSparkClusterState.yaml b/api/services/ocean/spark/parameters/query/oceanSparkClusterState.yaml deleted file mode 100644 index ad4f362a1..000000000 --- a/api/services/ocean/spark/parameters/query/oceanSparkClusterState.yaml +++ /dev/null @@ -1,6 +0,0 @@ -in: query -name: state -required: false -description: Optionally filter on the current state of the Ocean Spark cluster -schema: - $ref: "../../schemas/oceanSparkClusterState.yaml" diff --git a/api/services/ocean/spark/parameters/query/oceanSparkJobId.yaml b/api/services/ocean/spark/parameters/query/oceanSparkJobId.yaml deleted file mode 100644 index 1033f6aac..000000000 --- a/api/services/ocean/spark/parameters/query/oceanSparkJobId.yaml +++ /dev/null @@ -1,7 +0,0 @@ -in: query -name: jobId -required: false -description: > - Optionally filter on the job ID -schema: - $ref: "../../schemas/oceanSparkJobId.yaml" diff --git a/api/services/ocean/spark/parameters/query/order.yaml b/api/services/ocean/spark/parameters/query/order.yaml deleted file mode 100644 index 65172736e..000000000 --- a/api/services/ocean/spark/parameters/query/order.yaml +++ /dev/null @@ -1,10 +0,0 @@ -in: query -name: order -required: false -description: The direction of the ordering -schema: - type: string - enum: - - ASC - - DESC - default: DESC diff --git a/api/services/ocean/spark/parameters/query/orderBy.yaml b/api/services/ocean/spark/parameters/query/orderBy.yaml deleted file mode 100644 index a4ae6f884..000000000 --- a/api/services/ocean/spark/parameters/query/orderBy.yaml +++ /dev/null @@ -1,11 +0,0 @@ -in: query -name: orderBy -required: false -description: The field on which to sort -schema: - type: string - enum: - - CREATED_AT - - COST_IN_CENTS - - DURATION - default: CREATED_AT diff --git a/api/services/ocean/spark/parameters/query/pageSize.yaml b/api/services/ocean/spark/parameters/query/pageSize.yaml deleted file mode 100644 index 22b5db9d6..000000000 --- a/api/services/ocean/spark/parameters/query/pageSize.yaml +++ /dev/null @@ -1,7 +0,0 @@ -in: query -name: pageSize -required: false -description: The number of applications returned by page -schema: - type: integer - default: 20 diff --git a/api/services/ocean/spark/parameters/query/searchTerm.yaml b/api/services/ocean/spark/parameters/query/searchTerm.yaml deleted file mode 100644 index 6272d26a7..000000000 --- a/api/services/ocean/spark/parameters/query/searchTerm.yaml +++ /dev/null @@ -1,7 +0,0 @@ -in: query -name: searchTerm -required: false -schema: - type: string -description: > - Optionally search for a substring of the application ID, application display name, job ID or job display name diff --git a/api/services/ocean/spark/parameters/query/since.yaml b/api/services/ocean/spark/parameters/query/since.yaml deleted file mode 100644 index 1b8567a0b..000000000 --- a/api/services/ocean/spark/parameters/query/since.yaml +++ /dev/null @@ -1,9 +0,0 @@ -in: query -name: since -required: true -example: "2021-11-22" -description: > - Date at which to start the analysis. If the time range up to now is less or equal to a day, values are reported grouped per hours. Otherwise, values are reported grouped per days. -schema: - format: date-time - type: string diff --git a/api/services/ocean/spark/parameters/query/userId.yaml b/api/services/ocean/spark/parameters/query/userId.yaml deleted file mode 100644 index b08411a3a..000000000 --- a/api/services/ocean/spark/parameters/query/userId.yaml +++ /dev/null @@ -1,7 +0,0 @@ -in: query -name: userId -required: false -description: > - Optionally filter on the user who created the Spark application -schema: - $ref: "../../schemas/userId.yaml" diff --git a/api/services/ocean/spark/paths/applications.yaml b/api/services/ocean/spark/paths/applications.yaml deleted file mode 100644 index dd2431501..000000000 --- a/api/services/ocean/spark/paths/applications.yaml +++ /dev/null @@ -1,33 +0,0 @@ -summary: Ocean Spark - -get: - summary: "List Applications" - description: > - List Spark applications on all Ocean Spark clusters in the specified account. - This endpoint is paginated (cursor pagination). - operationId: "OceanSparkApplicationList" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/query/oceanSparkClusterId.yaml" - - $ref: "../parameters/query/oceanSparkJobId.yaml" - - $ref: "../parameters/query/oceanSparkApplicationSubmissionSource.yaml" - - $ref: "../parameters/query/oceanSparkApplicationType.yaml" - - $ref: "../parameters/query/oceanSparkApplicationState.yaml" - - $ref: "../parameters/query/userId.yaml" - - $ref: "../parameters/query/searchTerm.yaml" - - $ref: "../parameters/query/minCreatedAt.yaml" - - $ref: "../parameters/query/maxCreatedAt.yaml" - - $ref: "../parameters/query/minUpdatedAt.yaml" - - $ref: "../parameters/query/maxUpdatedAt.yaml" - - $ref: "../parameters/query/pageSize.yaml" - - $ref: "../parameters/query/after.yaml" - - $ref: "../parameters/query/before.yaml" - - $ref: "../parameters/query/order.yaml" - - $ref: "../parameters/query/orderBy.yaml" - responses: - 200: - $ref: "../responses/paginatedApplications.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/cluster.yaml b/api/services/ocean/spark/paths/cluster.yaml deleted file mode 100644 index f1223e0c7..000000000 --- a/api/services/ocean/spark/paths/cluster.yaml +++ /dev/null @@ -1,64 +0,0 @@ -summary: Ocean Spark - -get: - summary: "Get Cluster" - description: > - Describe an Ocean Spark cluster. - operationId: "OceanSparkClusterGet" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - responses: - 200: - $ref: "../responses/clusters.yaml" - 400: - description: "Bad Request" - -delete: - summary: "Delete Cluster" - description: > - Delete an Ocean Spark cluster. - - - Removing a cluster will disconnect it from Ocean for Spark. - This action is permanent and cannot be undone. - - - The Ocean for Spark resources will be uninstalled from the cluster, - but the Ocean cluster itself (and related Kubernetes resources) will not be deleted. - operationId: "OceanSparkClusterDelete" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - responses: - 200: - description: "Ok" - 400: - description: "Bad Request" - -put: - summary: "Update Cluster" - description: > - All Ocean Spark configuration parameters are updatable. This API supports partial updates, so specific fields can be updated separately. - operationId: "OceanSparkClusterUpdate" - tags: - - "Ocean Spark" - parameters: - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../../../../commons/parameters/accountId.yaml" - requestBody: - required: true - content: - application/json: - schema: - allOf: - - $ref: "../schemas/oceanSparkClusterUpdateWrapper.yaml" - responses: - 200: - description: "Ok" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterAppCompletionTrend.yaml b/api/services/ocean/spark/paths/clusterAppCompletionTrend.yaml deleted file mode 100644 index 940cf6052..000000000 --- a/api/services/ocean/spark/paths/clusterAppCompletionTrend.yaml +++ /dev/null @@ -1,18 +0,0 @@ -summary: Ocean Spark - -get: - summary: "Cluster application completion trend" - description: > - Aggregates the number of apps reaching a terminal state (completed, failed, killed, ...) within time buckets. - operationId: "OceanSparkClusterAppCompletionTrend" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/query/since.yaml" - responses: - 200: - $ref: "../responses/appCompletionTrend.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterAppLoadHistory.yaml b/api/services/ocean/spark/paths/clusterAppLoadHistory.yaml deleted file mode 100644 index 255468363..000000000 --- a/api/services/ocean/spark/paths/clusterAppLoadHistory.yaml +++ /dev/null @@ -1,18 +0,0 @@ -summary: Ocean Spark - -get: - summary: "Cluster application load history" - description: > - Reports the number of applications in pending and running state within time buckets. - operationId: "OceanSparkClusterAppLoadHistory" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/query/since.yaml" - responses: - 200: - $ref: "../responses/appLoadHistory.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterApplication.yaml b/api/services/ocean/spark/paths/clusterApplication.yaml deleted file mode 100644 index e72d1491b..000000000 --- a/api/services/ocean/spark/paths/clusterApplication.yaml +++ /dev/null @@ -1,36 +0,0 @@ -summary: Ocean Spark - -get: - summary: "Get Application" - description: > - Describe a Spark application in an Ocean Spark cluster. - operationId: "OceanSparkClusterApplicationGet" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkApplicationId.yaml" - responses: - 200: - $ref: "../responses/detailedApplication.yaml" - 400: - description: "Bad Request" - -delete: - summary: "Delete or kill an Application" - description: > - For pending Spark applications, the creation request is canceled. - For running Spark applications, the application is forcibly interrupted. - operationId: "OceanSparkClusterApplicationDelete" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkApplicationId.yaml" - responses: - 200: - $ref: "../responses/killedApplication.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterApplicationExecutorLogsArchive.yaml b/api/services/ocean/spark/paths/clusterApplicationExecutorLogsArchive.yaml deleted file mode 100644 index c69c73cd5..000000000 --- a/api/services/ocean/spark/paths/clusterApplicationExecutorLogsArchive.yaml +++ /dev/null @@ -1,18 +0,0 @@ -summary: Ocean Spark - -get: - summary: "Download Executor logs" - description: > - Download an archive of the executor logs for a finished spark application. - operationId: "OceanSparkClusterApplicationExecutorLogsArchive" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkApplicationId.yaml" - responses: - 200: - $ref: "../responses/executorLogsArchive.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterApplicationIssues.yaml b/api/services/ocean/spark/paths/clusterApplicationIssues.yaml deleted file mode 100644 index dc659b958..000000000 --- a/api/services/ocean/spark/paths/clusterApplicationIssues.yaml +++ /dev/null @@ -1,18 +0,0 @@ -summary: Ocean Spark - -get: - summary: "List Application Issues" - description: > - List the issues associated with the Spark Application. - operationId: "OceanSparkClusterApplicationIssuesList" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkApplicationId.yaml" - responses: - 200: - $ref: "../responses/applicationIssues.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterApplicationKubeEventsLive.yaml b/api/services/ocean/spark/paths/clusterApplicationKubeEventsLive.yaml deleted file mode 100644 index dd14db548..000000000 --- a/api/services/ocean/spark/paths/clusterApplicationKubeEventsLive.yaml +++ /dev/null @@ -1,18 +0,0 @@ -summary: Ocean Spark - -get: - summary: "Stream Kubernetes events" - description: > - Stream Kubernetes events about the Spark application in real time. - operationId: "OceanSparkClusterApplicationKubeEventsLive" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkApplicationId.yaml" - responses: - 200: - $ref: "../responses/kubeEventsLive.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterApplicationLogsArchive.yaml b/api/services/ocean/spark/paths/clusterApplicationLogsArchive.yaml deleted file mode 100644 index 4955d96d0..000000000 --- a/api/services/ocean/spark/paths/clusterApplicationLogsArchive.yaml +++ /dev/null @@ -1,18 +0,0 @@ -summary: Ocean Spark - -get: - summary: "Download Driver log" - description: > - Download an archive of the driver logs for a finished spark application. - operationId: "OceanSparkClusterApplicationLogsArchive" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkApplicationId.yaml" - responses: - 200: - $ref: "../responses/logsArchive.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterApplicationLogsLive.yaml b/api/services/ocean/spark/paths/clusterApplicationLogsLive.yaml deleted file mode 100644 index 34277177c..000000000 --- a/api/services/ocean/spark/paths/clusterApplicationLogsLive.yaml +++ /dev/null @@ -1,18 +0,0 @@ -summary: Ocean Spark - -get: - summary: "Stream Driver log" - description: > - Stream the driver log of a Spark application in real time. - operationId: "OceanSparkClusterApplicationLogsLive" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkApplicationId.yaml" - responses: - 200: - $ref: "../responses/logsLive.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterApplications.yaml b/api/services/ocean/spark/paths/clusterApplications.yaml deleted file mode 100644 index d55ccb952..000000000 --- a/api/services/ocean/spark/paths/clusterApplications.yaml +++ /dev/null @@ -1,75 +0,0 @@ -summary: Ocean Spark - -get: - summary: "List Applications in Cluster" - description: > - List the Spark applications in a specific cluster. - This endpoint is paginated (cursor pagination). - operationId: "OceanSparkClusterApplicationList" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/query/oceanSparkApplicationSubmissionSource.yaml" - - $ref: "../parameters/query/oceanSparkApplicationType.yaml" - - $ref: "../parameters/query/oceanSparkApplicationState.yaml" - - $ref: "../parameters/query/pageSize.yaml" - - $ref: "../parameters/query/after.yaml" - - $ref: "../parameters/query/before.yaml" - - $ref: "../parameters/query/order.yaml" - - $ref: "../parameters/query/orderBy.yaml" - responses: - 200: - $ref: "../responses/paginatedApplications.yaml" - 400: - description: "Bad Request" - -post: - summary: "Submit an Application" - description: > - Submit a Spark application in an Ocean Spark cluster - operationId: "OceanSparkClusterApplicationSubmit" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - requestBody: - required: true - content: - application/json: - schema: - type: object - required: - - jobId - properties: - appId: - $ref: "../schemas/oceanSparkApplicationId.yaml" - jobId: - # This is not how you're supposed to merge two objects (here: custom description + $ref). - # But I tried the more classic construct and it didn't work: - # allOf: - # - $ref: "../schemas/oceanSparkApplicationSpec.yaml" - # - description: ... - description: > - The ID of the job to which the Spark application belongs. - If a job with this ID does not exist yet, it will be created. - allOf: - - $ref: "../schemas/oceanSparkJobId.yaml" - configOverrides: - description: > - Configurations for the Spark application supplied in the request. - Prefer using a config template for configurations that are stable across runs. - Configurations in `configOverrides` have precedence over those in the config template. - allOf: - - $ref: "../schemas/oceanSparkApplicationSpec.yaml" - configTemplateId: - $ref: "../schemas/oceanSparkConfigTemplateId.yaml" - submissionSource: - $ref: "../schemas/oceanSparkApplicationSubmissionSource.yaml" - responses: - 200: - $ref: "../responses/submittedApplication.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterConfigTemplate.yaml b/api/services/ocean/spark/paths/clusterConfigTemplate.yaml deleted file mode 100644 index 3bcdd3da7..000000000 --- a/api/services/ocean/spark/paths/clusterConfigTemplate.yaml +++ /dev/null @@ -1,71 +0,0 @@ -summary: Ocean Spark - -get: - summary: "Get Config Template" - description: > - Describe a config template tied to an Ocean Spark cluster. - operationId: "OceanSparkClusterConfigTemplateGet" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkConfigTemplateId.yaml" - responses: - 200: - $ref: "../responses/configTemplates.yaml" - 400: - description: "Bad Request" - -put: - summary: "Put Config Template" - description: > - Update a config template by replacing the existing configuration with the one provided in the request body. - operationId: "OceanSparkClusterConfigTemplatePut" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkConfigTemplateId.yaml" - requestBody: - required: true - content: - application/json: - schema: - type: object - properties: - displayName: - $ref: "../schemas/oceanSparkConfigTemplateDisplayName.yaml" - config: - # This is not how you're supposed to merge two objects (here: custom description + $ref). - # But I tried the more classic construct and it didn't work: - # allOf: - # - $ref: "../schemas/oceanSparkApplicationSpec.yaml" - # - description: ... - description: > - The piece of configuration that will replace the existing configuration - allOf: - - $ref: "../schemas/oceanSparkApplicationSpec.yaml" - responses: - 200: - $ref: "../responses/configTemplates.yaml" - 400: - description: "Bad Request" - -delete: - summary: "Delete Config Template" - description: > - Delete a config template. - operationId: "OceanSparkClusterConfigTemplateDelete" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkConfigTemplateId.yaml" - responses: - 204: - description: "Config Template Deleted" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterConfigTemplates.yaml b/api/services/ocean/spark/paths/clusterConfigTemplates.yaml deleted file mode 100644 index a4da7cb13..000000000 --- a/api/services/ocean/spark/paths/clusterConfigTemplates.yaml +++ /dev/null @@ -1,57 +0,0 @@ -summary: Ocean Spark - -get: - summary: "List Config Templates in Cluster" - description: > - List the config templates tied to a specific cluster. - operationId: "OceanSparkClusterConfigTemplateList" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - responses: - 200: - $ref: "../responses/configTemplates.yaml" - 400: - description: "Bad Request" - -post: - summary: "Create Config Template" - description: > - Create a new configuration template - operationId: "OceanSparkClusterConfigTemplateCreate" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - requestBody: - required: true - content: - application/json: - schema: - type: object - required: - - id - - config - properties: - id: - $ref: "../schemas/oceanSparkConfigTemplateId.yaml" - displayName: - $ref: "../schemas/oceanSparkConfigTemplateDisplayName.yaml" - config: - # This is not how you're supposed to merge two objects (here: custom description + $ref). - # But I tried the more classic construct and it didn't work: - # allOf: - # - $ref: "../schemas/oceanSparkApplicationSpec.yaml" - # - description: ... - description: > - The piece of configuration contained in the config template. - allOf: - - $ref: "../schemas/oceanSparkApplicationSpec.yaml" - responses: - 200: - $ref: "../responses/configTemplates.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterJob.yaml b/api/services/ocean/spark/paths/clusterJob.yaml deleted file mode 100644 index 8989682b3..000000000 --- a/api/services/ocean/spark/paths/clusterJob.yaml +++ /dev/null @@ -1,34 +0,0 @@ -summary: Ocean Spark - -get: - summary: "Get Job" - description: > - Describe an Ocean Spark job in an Ocean Spark cluster. - operationId: "OceanSparkClusterJobGet" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkJobId.yaml" - - in: query - name: minCreatedAt - required: false - example: "2021-11-22T00:00" - description: Optionally filter app history on the creation date. To retrieve the `history` with the response, you must provide either `minCreatedAt` or `maxCreatedAt`. - schema: - format: date-time - type: string - - in: query - name: maxCreatedAt - required: false - example: "2021-11-22T00:00" - description: Optionally filter app history on the creation date. To retrieve the `history` with the response, you must provide either `minCreatedAt` or `maxCreatedAt`. - schema: - format: date-time - type: string - responses: - 200: - $ref: "../responses/job.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterJobs.yaml b/api/services/ocean/spark/paths/clusterJobs.yaml deleted file mode 100644 index 6df6651c3..000000000 --- a/api/services/ocean/spark/paths/clusterJobs.yaml +++ /dev/null @@ -1,17 +0,0 @@ -summary: Ocean Spark - -get: - summary: "List Jobs in Cluster" - description: > - List the Ocean Spark jobs in a specific cluster. - operationId: "OceanSparkClusterJobList" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - responses: - 200: - $ref: "../responses/paginatedJobs.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterSparkCoreHours.yaml b/api/services/ocean/spark/paths/clusterSparkCoreHours.yaml deleted file mode 100644 index fea4e18fd..000000000 --- a/api/services/ocean/spark/paths/clusterSparkCoreHours.yaml +++ /dev/null @@ -1,33 +0,0 @@ -summary: Ocean Spark - -get: - summary: "Cluster Spark Core Hours" - description: > - Gets the number of core hours applications have consumed. - operationId: "OceanSparkClusterSparkCoreHours" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - name: clusterId - in: query - required: false - schema: - type: array - items: - "$ref": "../schemas/oceanSparkClusterId.yaml" - - in: query - name: period - required: false - example: "2021-11" - description: > - The month to query from. - schema: - format: date-time - type: string - - responses: - 200: - $ref: "../responses/sparkCoreHours.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusterStatistics.yaml b/api/services/ocean/spark/paths/clusterStatistics.yaml deleted file mode 100644 index 9acdadde5..000000000 --- a/api/services/ocean/spark/paths/clusterStatistics.yaml +++ /dev/null @@ -1,18 +0,0 @@ -summary: Ocean Spark - -get: - summary: "Cluster runtime statistics" - description: > - Returns a summary of the cluster usage since a given date in the past. - operationId: "OceanSparkClusterStatistics" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/query/since.yaml" - responses: - 200: - $ref: "../responses/clusterStatistics.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/clusters.yaml b/api/services/ocean/spark/paths/clusters.yaml deleted file mode 100644 index 4349de488..000000000 --- a/api/services/ocean/spark/paths/clusters.yaml +++ /dev/null @@ -1,48 +0,0 @@ -summary: Ocean Spark - -post: - summary: "Create Cluster" - description: | - Create Ocean Spark Cluster - operationId: "OceanSparkClusterCreate" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/accountId.yaml" - requestBody: - required: false - content: - application/json: - schema: - allOf: - - $ref: "../schemas/oceanSparkClusterCreateWrapper.yaml" - - type: "object" - properties: - cluster: - type: object - required: - - name - responses: - 200: - $ref: "../responses/oceanSparkCreate.yaml" - 400: - description: "Bad Request" - -get: - summary: "List Clusters" - description: > - List the Ocean Spark clusters in the specified account. - operationId: "OceanSparkClusterList" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../../../../commons/parameters/nonRequiredFromDateUnixEnabled.yaml" - - $ref: "../../../../commons/parameters/nonRequiredToDateUnixEnabled.yaml" - - $ref: "../parameters/query/oceanSparkClusterState.yaml" - - $ref: "../parameters/query/controllerClusterId.yaml" - responses: - 200: - $ref: "../responses/clusters.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/configTemplates.yaml b/api/services/ocean/spark/paths/configTemplates.yaml deleted file mode 100644 index cf767aa2f..000000000 --- a/api/services/ocean/spark/paths/configTemplates.yaml +++ /dev/null @@ -1,16 +0,0 @@ -summary: Ocean Spark - -get: - summary: "List Config Templates" - description: > - List config templates across all clusters. - operationId: "OceanSparkConfigTemplateList" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - responses: - 200: - $ref: "../responses/configTemplates.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/jobConfig.yaml b/api/services/ocean/spark/paths/jobConfig.yaml deleted file mode 100644 index 28dd199a2..000000000 --- a/api/services/ocean/spark/paths/jobConfig.yaml +++ /dev/null @@ -1,33 +0,0 @@ -put: - summary: "Put Job Config Template" - description: > - Attach or update an attached config template by replacing the existing configuration with the one provided in the request body. - operationId: "OceanSparkJobConfig" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkJobId.yaml" - requestBody: - required: false # if empty then the config is deleted - content: - application/json: - schema: - type: object - properties: - config: - # This is not how you're supposed to merge two objects (here: custom description + $ref). - # But I tried the more classic construct and it didn't work: - # allOf: - # - $ref: "../schemas/oceanSparkApplicationSpec.yaml" - # - description: ... - description: > - The piece of configuration that will replace the existing configuration, if empty then the job configuration will be removed - allOf: - - $ref: "../schemas/oceanSparkApplicationSpec.yaml" - responses: - 200: - $ref: "../responses/jobUpdate.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/jobs.yaml b/api/services/ocean/spark/paths/jobs.yaml deleted file mode 100644 index 5c3f81e1a..000000000 --- a/api/services/ocean/spark/paths/jobs.yaml +++ /dev/null @@ -1,16 +0,0 @@ -summary: Ocean Spark - -get: - summary: "List Jobs" - description: > - List jobs on all Ocean Spark clusters in the specified account. - operationId: "OceanSparkJobList" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - responses: - 200: - $ref: "../responses/paginatedJobs.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/virtualNodeGroup.yaml b/api/services/ocean/spark/paths/virtualNodeGroup.yaml deleted file mode 100644 index 413a51379..000000000 --- a/api/services/ocean/spark/paths/virtualNodeGroup.yaml +++ /dev/null @@ -1,40 +0,0 @@ -summary: Ocean Spark - -post: - summary: "Attach Dedicated Virtual Node Group" - description: > - Attach an Ocean Virtual Group to the Ocean Spark cluster. - operationId: "AttachOceanSparkVirtualNodeGroup" - tags: - - "Ocean Spark" - parameters: - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../../../../commons/parameters/accountId.yaml" - requestBody: - required: true - content: - application/json: - schema: - allOf: - - $ref: "../schemas/oceanSparkAttachVirtualNodeWrapper.yaml" - responses: - 200: - $ref: "../responses/virtualNodeGroup.yaml" - 400: - description: "Bad Request" - -delete: - summary: "Detach Dedicated Virtual Node Group" - description: > - Detach an Ocean Virtual Group to the Ocean Spark cluster. - operationId: "DetachOceanSparkVirtualNodeGroup" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/nonRequiredAccountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - responses: - 200: - description: "Ok" - 400: - description: "Bad Request" \ No newline at end of file diff --git a/api/services/ocean/spark/paths/workspace.yaml b/api/services/ocean/spark/paths/workspace.yaml deleted file mode 100644 index 6f4332428..000000000 --- a/api/services/ocean/spark/paths/workspace.yaml +++ /dev/null @@ -1,35 +0,0 @@ -summary: Ocean Spark - -get: - summary: "Get Workspace" - description: > - Describe an Ocean Spark workspace. - operationId: "OceanSparkWorkspaceGet" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/accountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkWorkspaceId.yaml" - responses: - 200: - $ref: "../responses/workspaces.yaml" - 400: - description: "Bad Request" - -delete: - summary: "Delete Workspace" - description: > - Delete an Ocean Spark workspace. - operationId: "OceanSparkWorkspaceDelete" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/accountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkWorkspaceId.yaml" - responses: - 200: - description: "Ok" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/workspaceStart.yaml b/api/services/ocean/spark/paths/workspaceStart.yaml deleted file mode 100644 index c76f5e2fe..000000000 --- a/api/services/ocean/spark/paths/workspaceStart.yaml +++ /dev/null @@ -1,18 +0,0 @@ -summary: Ocean Spark - -put: - summary: "Start Workspace" - description: > - Start an Ocean Spark workspace. - operationId: "OceanSparkWorkspaceStart" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/accountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkWorkspaceId.yaml" - responses: - 200: - $ref: "../responses/workspaces.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/workspaceStop.yaml b/api/services/ocean/spark/paths/workspaceStop.yaml deleted file mode 100644 index 6d9af7874..000000000 --- a/api/services/ocean/spark/paths/workspaceStop.yaml +++ /dev/null @@ -1,18 +0,0 @@ -summary: Ocean Spark - -put: - summary: "Stop Workspace" - description: > - Stop an Ocean Spark workspace. - operationId: "OceanSparkWorkspaceStop" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/accountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - - $ref: "../parameters/path/oceanSparkWorkspaceId.yaml" - responses: - 200: - $ref: "../responses/workspaces.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/paths/workspaces.yaml b/api/services/ocean/spark/paths/workspaces.yaml deleted file mode 100644 index 696cee025..000000000 --- a/api/services/ocean/spark/paths/workspaces.yaml +++ /dev/null @@ -1,46 +0,0 @@ -summary: Ocean Spark - -post: - summary: "Create Workspace" - description: | - Create Ocean Spark Workspace - operationId: "OceanSparkWorkspaceCreate" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/accountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - requestBody: - required: false - content: - application/json: - schema: - allOf: - - $ref: "../schemas/oceanSparkWorkspaceCreate.yaml" - - type: "object" - properties: - name: - type: "string" - description: "The name of the workspace." - example: "cosmos" - responses: - 200: - $ref: "../responses/workspaces.yaml" - 400: - description: "Bad Request" - -get: - summary: "List Workspaces" - description: > - List the Ocean Spark workspaces in the specified cluster. - operationId: "OceanSparkWorkspaceList" - tags: - - "Ocean Spark" - parameters: - - $ref: "../../../../commons/parameters/accountId.yaml" - - $ref: "../parameters/path/oceanSparkClusterId.yaml" - responses: - 200: - $ref: "../responses/workspaces.yaml" - 400: - description: "Bad Request" diff --git a/api/services/ocean/spark/responses/appCompletionTrend.yaml b/api/services/ocean/spark/responses/appCompletionTrend.yaml deleted file mode 100644 index 49579a33c..000000000 --- a/api/services/ocean/spark/responses/appCompletionTrend.yaml +++ /dev/null @@ -1,18 +0,0 @@ -description: > - Number of applications reaching a terminal state, grouped by the terminal state and a time bucket. -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkApplicationTrendBucket.yaml" diff --git a/api/services/ocean/spark/responses/appLoadHistory.yaml b/api/services/ocean/spark/responses/appLoadHistory.yaml deleted file mode 100644 index 8f2fd321f..000000000 --- a/api/services/ocean/spark/responses/appLoadHistory.yaml +++ /dev/null @@ -1,17 +0,0 @@ -description: Number of pending or running apps, within time buckets. -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkApplicationLoadBucket.yaml" diff --git a/api/services/ocean/spark/responses/applicationIssues.yaml b/api/services/ocean/spark/responses/applicationIssues.yaml deleted file mode 100644 index e1514fb98..000000000 --- a/api/services/ocean/spark/responses/applicationIssues.yaml +++ /dev/null @@ -1,18 +0,0 @@ -description: > - List of issues associated with a Spark application -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkIssues.yaml" diff --git a/api/services/ocean/spark/responses/applications.yaml b/api/services/ocean/spark/responses/applications.yaml deleted file mode 100644 index cc7815e8a..000000000 --- a/api/services/ocean/spark/responses/applications.yaml +++ /dev/null @@ -1,17 +0,0 @@ -description: A list of Spark applications (can be a single app) -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkApplication.yaml" diff --git a/api/services/ocean/spark/responses/clusterStatistics.yaml b/api/services/ocean/spark/responses/clusterStatistics.yaml deleted file mode 100644 index 90e349838..000000000 --- a/api/services/ocean/spark/responses/clusterStatistics.yaml +++ /dev/null @@ -1,17 +0,0 @@ -description: Runtime statistics for a given cluster. -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkClusterStatistics.yaml" diff --git a/api/services/ocean/spark/responses/clusters.yaml b/api/services/ocean/spark/responses/clusters.yaml deleted file mode 100644 index 45c360b92..000000000 --- a/api/services/ocean/spark/responses/clusters.yaml +++ /dev/null @@ -1,17 +0,0 @@ -description: A list of Ocean Spark clusters (can be a single cluster) -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkCluster.yaml" diff --git a/api/services/ocean/spark/responses/configTemplates.yaml b/api/services/ocean/spark/responses/configTemplates.yaml deleted file mode 100644 index 0bacc0c0f..000000000 --- a/api/services/ocean/spark/responses/configTemplates.yaml +++ /dev/null @@ -1,17 +0,0 @@ -description: A list of config templates (can be a single one) -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkConfigTemplate.yaml" diff --git a/api/services/ocean/spark/responses/detailedApplication.yaml b/api/services/ocean/spark/responses/detailedApplication.yaml deleted file mode 100644 index b1a9275d8..000000000 --- a/api/services/ocean/spark/responses/detailedApplication.yaml +++ /dev/null @@ -1,17 +0,0 @@ -description: A Spark application -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkDetailedSparkApplication.yaml" diff --git a/api/services/ocean/spark/responses/executorLogsArchive.yaml b/api/services/ocean/spark/responses/executorLogsArchive.yaml deleted file mode 100644 index 3b1a25c97..000000000 --- a/api/services/ocean/spark/responses/executorLogsArchive.yaml +++ /dev/null @@ -1,6 +0,0 @@ -description: A file download of the executors log archive -content: - application/zip: - schema: - type: string - format: binary diff --git a/api/services/ocean/spark/responses/job.yaml b/api/services/ocean/spark/responses/job.yaml deleted file mode 100644 index e631b1853..000000000 --- a/api/services/ocean/spark/responses/job.yaml +++ /dev/null @@ -1,17 +0,0 @@ -description: An Ocean Spark job -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkJobWithConfig.yaml" diff --git a/api/services/ocean/spark/responses/jobUpdate.yaml b/api/services/ocean/spark/responses/jobUpdate.yaml deleted file mode 100644 index b72067a1f..000000000 --- a/api/services/ocean/spark/responses/jobUpdate.yaml +++ /dev/null @@ -1,17 +0,0 @@ -description: An Ocean Spark job -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkJobWithConfigWithoutApps.yaml" diff --git a/api/services/ocean/spark/responses/jobs.yaml b/api/services/ocean/spark/responses/jobs.yaml deleted file mode 100644 index cbb47a53b..000000000 --- a/api/services/ocean/spark/responses/jobs.yaml +++ /dev/null @@ -1,17 +0,0 @@ -description: A list of Ocean Spark jobs (can be a single job) -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkJob.yaml" diff --git a/api/services/ocean/spark/responses/killedApplication.yaml b/api/services/ocean/spark/responses/killedApplication.yaml deleted file mode 100644 index e7fc41aa4..000000000 --- a/api/services/ocean/spark/responses/killedApplication.yaml +++ /dev/null @@ -1,17 +0,0 @@ -description: A killed Spark application -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkKilledSparkApplication.yaml" diff --git a/api/services/ocean/spark/responses/kubeEventsLive.yaml b/api/services/ocean/spark/responses/kubeEventsLive.yaml deleted file mode 100644 index fddec2c0b..000000000 --- a/api/services/ocean/spark/responses/kubeEventsLive.yaml +++ /dev/null @@ -1,9 +0,0 @@ -description: A live stream of the Kubernetes events -content: - text/plain: - schema: - type: string - example: > - 13:06:19: [spark-operator] SparkApplicationAdded: SparkApplication daily-reporting-2021-08-18 was added, enqueuing it for submission - 13:06:23: [spark-operator] SparkApplicationSubmitted: SparkApplication daily-reporting-2021-08-18 was submitted successfully - 13:06:26: [driver:cluster-autoscaler] TriggeredScaleUp: pod triggered scale-up: [{oceansparkcluster-ondemand-m5.large2021111109541378820000002d 0->1 (max: 100)}] diff --git a/api/services/ocean/spark/responses/logsArchive.yaml b/api/services/ocean/spark/responses/logsArchive.yaml deleted file mode 100644 index eabb69beb..000000000 --- a/api/services/ocean/spark/responses/logsArchive.yaml +++ /dev/null @@ -1,6 +0,0 @@ -description: A file download of the driver's log archive -content: - application/gzip: - schema: - type: string - format: binary diff --git a/api/services/ocean/spark/responses/logsLive.yaml b/api/services/ocean/spark/responses/logsLive.yaml deleted file mode 100644 index 916f06032..000000000 --- a/api/services/ocean/spark/responses/logsLive.yaml +++ /dev/null @@ -1,11 +0,0 @@ -description: A live stream of the driver log -content: - text/plain: - schema: - type: string - example: > - 21/10/20 15:38:19 INFO SparkContext: Running Spark version 3.2.0 - 21/10/20 15:38:19 INFO ResourceUtils: ============================================================== - 21/10/20 15:38:19 INFO ResourceUtils: No custom resources configured for spark.driver. - 21/10/20 15:38:19 INFO ResourceUtils: ============================================================== - 21/10/20 15:38:19 INFO SparkContext: Submitted application: daily-reporting-2021-08-18 diff --git a/api/services/ocean/spark/responses/oceanSparkCreate.yaml b/api/services/ocean/spark/responses/oceanSparkCreate.yaml deleted file mode 100644 index 0bfb3610b..000000000 --- a/api/services/ocean/spark/responses/oceanSparkCreate.yaml +++ /dev/null @@ -1,24 +0,0 @@ -description: Ocean Spark Cluster Response -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - request: - type: object - properties: - url: - example: "/ocean/spark/cluster" - method: - example: "POST" - response: - type: object - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkCluster.yaml" - kind: - example: "spotinst:ocean:spark:cluster" \ No newline at end of file diff --git a/api/services/ocean/spark/responses/paginatedApplications.yaml b/api/services/ocean/spark/responses/paginatedApplications.yaml deleted file mode 100644 index 26144f742..000000000 --- a/api/services/ocean/spark/responses/paginatedApplications.yaml +++ /dev/null @@ -1,24 +0,0 @@ -description: A paginated list of Spark application -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - allOf: - - $ref: "../schemas/paginatedList.yaml" - - type: object - properties: - page: - type: array - items: - $ref: "../schemas/oceanSparkApplicationPageItem.yaml" diff --git a/api/services/ocean/spark/responses/paginatedJobs.yaml b/api/services/ocean/spark/responses/paginatedJobs.yaml deleted file mode 100644 index 61397dd6a..000000000 --- a/api/services/ocean/spark/responses/paginatedJobs.yaml +++ /dev/null @@ -1,24 +0,0 @@ -description: A paginated list of Ocean Spark jobs -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - allOf: - - $ref: "../schemas/paginatedList.yaml" - - type: object - properties: - page: - type: array - items: - $ref: "../schemas/oceanSparkJob.yaml" diff --git a/api/services/ocean/spark/responses/sparkCoreHours.yaml b/api/services/ocean/spark/responses/sparkCoreHours.yaml deleted file mode 100644 index e87c742c7..000000000 --- a/api/services/ocean/spark/responses/sparkCoreHours.yaml +++ /dev/null @@ -1,17 +0,0 @@ -description: Number of spark core hours consumed by cluster -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkClusterSparkCoreHours.yaml" diff --git a/api/services/ocean/spark/responses/submittedApplication.yaml b/api/services/ocean/spark/responses/submittedApplication.yaml deleted file mode 100644 index 7bb68fe36..000000000 --- a/api/services/ocean/spark/responses/submittedApplication.yaml +++ /dev/null @@ -1,17 +0,0 @@ -description: A Spark application just submitted -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkSubmittedSparkApplication.yaml" diff --git a/api/services/ocean/spark/responses/virtualNodeGroup.yaml b/api/services/ocean/spark/responses/virtualNodeGroup.yaml deleted file mode 100644 index 040b9eac7..000000000 --- a/api/services/ocean/spark/responses/virtualNodeGroup.yaml +++ /dev/null @@ -1,24 +0,0 @@ -description: A list of Ocean Spark Dedicated VNGs (can be a single VNG) -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - request: - type: object - properties: - url: - example: "/ocean/spark/osc-20fac3f1/virtualNodeGroup" - method: - example: "POST" - response: - type: object - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkVirtualNodeGroup.yaml" - kind: - example: "spotinst:ocean:spark:vng" \ No newline at end of file diff --git a/api/services/ocean/spark/responses/workspaces.yaml b/api/services/ocean/spark/responses/workspaces.yaml deleted file mode 100644 index f0ecc1a32..000000000 --- a/api/services/ocean/spark/responses/workspaces.yaml +++ /dev/null @@ -1,17 +0,0 @@ -description: A list of Ocean Spark workspace (can be a single workspace) -content: - application/json: - schema: - allOf: - - $ref: "../../../../commons/schemas/responseItemWrapper.yaml" - - type: object - properties: - response: - type: object - description: > - response body - properties: - items: - type: array - items: - $ref: "../schemas/oceanSparkWorkspace.yaml" diff --git a/api/services/ocean/spark/schemas/accountId.yaml b/api/services/ocean/spark/schemas/accountId.yaml deleted file mode 100644 index d769e8aa0..000000000 --- a/api/services/ocean/spark/schemas/accountId.yaml +++ /dev/null @@ -1,3 +0,0 @@ -type: string -example: "act-123456789" -description: The ID of the account where the entity lives diff --git a/api/services/ocean/spark/schemas/after.yaml b/api/services/ocean/spark/schemas/after.yaml deleted file mode 100644 index 1ee0c9efe..000000000 --- a/api/services/ocean/spark/schemas/after.yaml +++ /dev/null @@ -1,3 +0,0 @@ -type: string -description: the cursor to the next page of items in the collection -example: "MjAyMS0xMS0xOFQwOTo1MjowNS43Mzg4NjArMDA6MDB8NWM3NGY2MDYtZDYxNy00MzcxLWE5ZDktNjc2ZDkxMzRlNWFk" diff --git a/api/services/ocean/spark/schemas/archiveLog.yaml b/api/services/ocean/spark/schemas/archiveLog.yaml deleted file mode 100644 index 1c7c3f893..000000000 --- a/api/services/ocean/spark/schemas/archiveLog.yaml +++ /dev/null @@ -1,16 +0,0 @@ -type: object -description: > - The archive log of the Spark application. -properties: - logsArchiveUrl: - type: string - format: uri - description: > - The URL of the archive log of the Spark application. - example: "string" - availability: - type: string - description: > - The availability of the archive log of the Spark application. - example: "PENDING" - \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/before.yaml b/api/services/ocean/spark/schemas/before.yaml deleted file mode 100644 index 8e00ebe09..000000000 --- a/api/services/ocean/spark/schemas/before.yaml +++ /dev/null @@ -1,3 +0,0 @@ -type: string -description: the cursor to the previous page of items in the collection -example: "MjAyMS0xMS0xOFQwOTo1MjowNS43Mzg4NjArMDA6MDB8NWM3NGY2MDYtZDYxNy00MzcxLWE5ZDktNjc2ZDkxMzRlNWFk" diff --git a/api/services/ocean/spark/schemas/configurationTemplate.yaml b/api/services/ocean/spark/schemas/configurationTemplate.yaml deleted file mode 100644 index fa75bda78..000000000 --- a/api/services/ocean/spark/schemas/configurationTemplate.yaml +++ /dev/null @@ -1,14 +0,0 @@ -type: object -description: > - The configuration template used to create the Spark application. -properties: - id: - type: string - description: > - The ID of the configuration template. - example: "string" - displayName: - type: string - description: > - The display name of the configuration template. - example: "string" \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/controllerClusterId.yaml b/api/services/ocean/spark/schemas/controllerClusterId.yaml deleted file mode 100644 index eff733b17..000000000 --- a/api/services/ocean/spark/schemas/controllerClusterId.yaml +++ /dev/null @@ -1,4 +0,0 @@ -type: string -example: "my-ocean-cluster" -description: > - The reporting identifier of the Ocean controller in the Ocean cluster diff --git a/api/services/ocean/spark/schemas/cores.yaml b/api/services/ocean/spark/schemas/cores.yaml deleted file mode 100644 index f8c47f50d..000000000 --- a/api/services/ocean/spark/schemas/cores.yaml +++ /dev/null @@ -1,4 +0,0 @@ -type: number -description: > - The number of cores allocated to the Spark application. It is 0 if the application is completed. -example: 1 \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/createdAt.yaml b/api/services/ocean/spark/schemas/createdAt.yaml deleted file mode 100644 index 88edac4bd..000000000 --- a/api/services/ocean/spark/schemas/createdAt.yaml +++ /dev/null @@ -1,4 +0,0 @@ -type: string -format: date-time -example: "2018-10-10T10:50:29.000+0000" -description: "The field on which to sort. For now, we only support filtering on CREATED_AT." diff --git a/api/services/ocean/spark/schemas/internalId.yaml b/api/services/ocean/spark/schemas/internalId.yaml deleted file mode 100644 index 4a41717b6..000000000 --- a/api/services/ocean/spark/schemas/internalId.yaml +++ /dev/null @@ -1,7 +0,0 @@ -type: string -example: "fa61bb92-4bb7-49aa-87d3-7823bd263d1e" -description: > - An internal ID describing the entity. As a user of Ocean Spark, you will never need this ID. - - - Please use the `id` to interact with the API. diff --git a/api/services/ocean/spark/schemas/k8sName.yaml b/api/services/ocean/spark/schemas/k8sName.yaml deleted file mode 100644 index 105d17dc9..000000000 --- a/api/services/ocean/spark/schemas/k8sName.yaml +++ /dev/null @@ -1,2 +0,0 @@ -type: string -pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ diff --git a/api/services/ocean/spark/schemas/killRequestedAt.yaml b/api/services/ocean/spark/schemas/killRequestedAt.yaml deleted file mode 100644 index 5b565f06e..000000000 --- a/api/services/ocean/spark/schemas/killRequestedAt.yaml +++ /dev/null @@ -1,5 +0,0 @@ -type: string -format: date-time -description: > - The time when the Spark application kill was requested at. -example: "2021-11-18T17:09:37+00:00" \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanClusterId.yaml b/api/services/ocean/spark/schemas/oceanClusterId.yaml deleted file mode 100644 index 97ac2c74e..000000000 --- a/api/services/ocean/spark/schemas/oceanClusterId.yaml +++ /dev/null @@ -1,3 +0,0 @@ -type: string -example: "o-d3a2908e" -description: A unique identifier for the Ocean cluster diff --git a/api/services/ocean/spark/schemas/oceanSparkApplication.yaml b/api/services/ocean/spark/schemas/oceanSparkApplication.yaml deleted file mode 100644 index 1124a71b1..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkApplication.yaml +++ /dev/null @@ -1,72 +0,0 @@ -type: object -required: -- id -- displayName -- accountId -- organizationId -- userId -- clusterId -- controllerClusterId -- appState -- submissionSource -- createdAt -- updatedAt -allOf: -- $ref: "../../../../commons/schemas/createdAtUpdatedAt.yaml" -- type: object - description: > - The description of a Spark application - properties: - id: - $ref: "oceanSparkApplicationId.yaml" - displayName: - $ref: "oceanSparkApplicationDisplayName.yaml" - accountId: - $ref: "accountId.yaml" - organizationId: - $ref: "organizationId.yaml" - userId: - $ref: "userId.yaml" - clusterId: - $ref: "oceanSparkClusterId.yaml" - controllerClusterId: - $ref: "controllerClusterId.yaml" - appState: - $ref: "oceanSparkApplicationState.yaml" - submissionSource: - $ref: "oceanSparkApplicationSubmissionSource.yaml" - appType: - $ref: "oceanSparkApplicationType.yaml" - startedAt: - type: string - format: date-time - description: > - The time when the Spark application started running (the app state becomes RUNNING). - This is not the time when the application launch was requested (this is `createdAt`). - example: "2021-11-18T17:09:37+00:00" - endedAt: - type: string - format: date-time - description: > - The time when the Spark application terminated. - example: "2021-11-18T17:09:37+00:00" - killRequestedAt: - $ref: "killRequestedAt.yaml" - liveLog: - type: object - description: API pointers to endpoints serving logs and events related to the Spark application - properties: - logsStreamUrl: - type: string - format: uri - description: URL of the endpoint serving the live driver logs - example: /ocean/spark/cluster/osc-20fac3f1/app/daily-reporting-2021-08-18/logs/live - kubeEventsStreamUrl: - type: string - format: uri - description: URL of the endpoint serving a stream of Kubernetes events - example: /ocean/spark/cluster/osc-20fac3f1/app/daily-reporting-2021-08-18/kubeEvents/live - metrics: - $ref: "./oceanSparkApplicationMetrics.yaml" - cores: - $ref: "cores.yaml" diff --git a/api/services/ocean/spark/schemas/oceanSparkApplicationCost.yaml b/api/services/ocean/spark/schemas/oceanSparkApplicationCost.yaml deleted file mode 100644 index b37ecb5e2..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkApplicationCost.yaml +++ /dev/null @@ -1,17 +0,0 @@ -type: object -description: The cloud cost of the Spark application. Updated every hour -required: -- total -- createdAt -- updatedAt -properties: - createdAt: - # I had to write createdAt and updatedAt manually and not use createdAtUpdatedAt.yaml. - # Otherwise the object is marked as "recursive". This looks like a redoc bug. - $ref: "createdAt.yaml" - updatedAt: - $ref: "updatedAt.yaml" - total: - type: integer - description: The total cost of the Spark application in USD cents - example: 0 diff --git a/api/services/ocean/spark/schemas/oceanSparkApplicationDisplayName.yaml b/api/services/ocean/spark/schemas/oceanSparkApplicationDisplayName.yaml deleted file mode 100644 index bfe6f3725..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkApplicationDisplayName.yaml +++ /dev/null @@ -1,3 +0,0 @@ -type: string -description: "A non-unique free-form name for the Spark application used in the Spot console. Defaults to the application ID." -example: "Daily Reporting 2021-08-18" diff --git a/api/services/ocean/spark/schemas/oceanSparkApplicationId.yaml b/api/services/ocean/spark/schemas/oceanSparkApplicationId.yaml deleted file mode 100644 index acbd5ae42..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkApplicationId.yaml +++ /dev/null @@ -1,4 +0,0 @@ -allOf: -- $ref: "k8sName.yaml" -- description: "A unique identifier for the Spark application, set by the user or auto-generated from the job ID" - example: "daily-reporting-2021-08-18" diff --git a/api/services/ocean/spark/schemas/oceanSparkApplicationLoadBucket.yaml b/api/services/ocean/spark/schemas/oceanSparkApplicationLoadBucket.yaml deleted file mode 100644 index 4f44f187a..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkApplicationLoadBucket.yaml +++ /dev/null @@ -1,24 +0,0 @@ -type: object -required: -- time -- pending -- running -description: > - Number of apps pending or running at a given point in time -properties: - time: - type: string - format: date-time - description: > - Polling time - example: "2021-11-18T17:09:37+00:00" - pending: - type: number - description: > - Number of applications that were pending at the polling time. - example: 0 - running: - type: number - description: > - Number of applications that were running at the polling time. - example: 0 diff --git a/api/services/ocean/spark/schemas/oceanSparkApplicationMetrics.yaml b/api/services/ocean/spark/schemas/oceanSparkApplicationMetrics.yaml deleted file mode 100644 index 0299bc4b8..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkApplicationMetrics.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -description: Computed statistics about the performance and cost of Spark applications -required: -- cost -- spark -properties: - cost: - $ref: './oceanSparkApplicationCost.yaml' - spark: - $ref: './oceanSparkApplicationSparkMetrics.yaml' diff --git a/api/services/ocean/spark/schemas/oceanSparkApplicationPageItem.yaml b/api/services/ocean/spark/schemas/oceanSparkApplicationPageItem.yaml deleted file mode 100644 index 3b0be11a8..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkApplicationPageItem.yaml +++ /dev/null @@ -1,85 +0,0 @@ -type: object -required: -- id -- displayName -- accountId -- organizationId -- userId -- clusterId -- controllerClusterId -- appState -- submissionSource -- createdAt -- updatedAt -allOf: -- $ref: "../../../../commons/schemas/createdAtUpdatedAt.yaml" -- type: object - description: > - The description of a Spark application - properties: - id: - $ref: "oceanSparkApplicationId.yaml" - displayName: - $ref: "oceanSparkApplicationDisplayName.yaml" - accountId: - $ref: "accountId.yaml" - organizationId: - $ref: "organizationId.yaml" - userId: - $ref: "userId.yaml" - clusterId: - $ref: "oceanSparkClusterId.yaml" - controllerClusterId: - $ref: "controllerClusterId.yaml" - appState: - $ref: "oceanSparkApplicationState.yaml" - submissionSource: - $ref: "oceanSparkApplicationSubmissionSource.yaml" - appType: - $ref: "oceanSparkApplicationType.yaml" - job: - type: object - description: > - The job to which the application belongs. - A job is collection of Spark applications, typically a workload run on a schedule. - required: - - id - - displayName - properties: - id: - $ref: oceanSparkJobId.yaml - displayName: - $ref: oceanSparkJobDisplayName.yaml - startedAt: - type: string - format: date-time - description: > - The time when the Spark application started running (the app state becomes RUNNING). - This is not the time when the application launch was requested (this is `createdAt`). - example: "2021-11-18T17:09:37+00:00" - endedAt: - type: string - format: date-time - description: > - The time when the Spark application terminated. - example: "2021-11-18T17:09:37+00:00" - killRequestedAt: - $ref: "killRequestedAt.yaml" - liveLog: - type: object - description: API pointers to endpoints serving logs and events related to the Spark application - properties: - logsStreamUrl: - type: string - format: uri - description: URL of the endpoint serving the live driver logs - example: /ocean/spark/cluster/osc-20fac3f1/app/daily-reporting-2021-08-18/logs/live - kubeEventsStreamUrl: - type: string - format: uri - description: URL of the endpoint serving a stream of Kubernetes events - example: /ocean/spark/cluster/osc-20fac3f1/app/daily-reporting-2021-08-18/kubeEvents/live - metrics: - $ref: "./oceanSparkApplicationMetrics.yaml" - cores: - $ref: "cores.yaml" diff --git a/api/services/ocean/spark/schemas/oceanSparkApplicationSparkMetrics.yaml b/api/services/ocean/spark/schemas/oceanSparkApplicationSparkMetrics.yaml deleted file mode 100644 index 54fa0d788..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkApplicationSparkMetrics.yaml +++ /dev/null @@ -1,37 +0,0 @@ -type: object -description: Computed statistics about the performance of the Spark application -required: -- inputDataBytes -- outputDataBytes -- sparkCoresDurationSeconds -- efficiencyPercent -- createdAt -- updatedAt -properties: - createdAt: - # I had to write createdAt and updatedAt manually and not use a $ref. - # Otherwise the object is marked as "recursive". This looks like a redoc bug. - $ref: "createdAt.yaml" - updatedAt: - $ref: "updatedAt.yaml" - sparkCoresDurationSeconds: - format: time-delta - type: number - description: > - The total core resources used by the application. - This metric is calculated as the sum over each container (driver or executor) - of its uptime duration multiplied by the number of cores allocated to it. - inputDataBytes: - type: integer - description: > - The number of bytes read by Spark, typically from an object store. - outputDataBytes: - type: integer - description: > - The number of bytes written by Spark, typically to an object store. - efficiencyPercent: - type: number - description: > - The fraction of the time that Spark executor cores are running Spark tasks. - availability: - type: string diff --git a/api/services/ocean/spark/schemas/oceanSparkApplicationSpec.yaml b/api/services/ocean/spark/schemas/oceanSparkApplicationSpec.yaml deleted file mode 100644 index ec33455b8..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkApplicationSpec.yaml +++ /dev/null @@ -1,2974 +0,0 @@ -type: object -description: A configuration for a Spark application -additionalProperties: false -properties: - arguments: - items: - type: string - title: Arguments - type: array - deps: - $ref: '#/components/schemas/Dependencies' - driver: - $ref: '#/components/schemas/DriverSpec' - executor: - $ref: '#/components/schemas/ExecutorSpec' - hadoopConf: - additionalProperties: - type: string - title: Hadoopconf - type: object - hadoopConfigMap: - title: Hadoopconfigmap - type: string - image: - title: Image - type: string - imagePullPolicy: - title: Imagepullpolicy - type: string - imagePullSecrets: - items: - type: string - title: Imagepullsecrets - type: array - interactive: - title: Interactive - type: boolean - initContainerImage: - title: Initcontainerimage - type: string - labels: - additionalProperties: - type: string - title: Labels - type: object - description: Labels to be attached to the custom resource of the application. - logCollection: - title: LogCollection - type: object - additionalProperties: false - description: Configure the application logs collection - properties: - collectAppLogs: - title: CollectAppLogs - type: boolean - description: Set this parameter to override the cluster configuration on driver and executor log collection. If set to false, no logs will be saved for this application. - mainApplicationFile: - title: Mainapplicationfile - type: string - mainClass: - title: Mainclass - type: string - memoryOverheadFactor: - title: Memoryoverheadfactor - type: number - availabilityZone: - title: Availabilityzone - type: string - description: The availability zone to use for the Spark application pods. Leave this empty and Ocean Spark will choose the best availability zone for the Spark application - priority: - title: Priority - type: string - example: "low" - description: The priority of the Spark application. - pythonVersion: - $ref: '#/components/schemas/PythonVersion' - shuffle: - $ref: '#/components/schemas/Shuffle' - sparkConf: - additionalProperties: - type: string - title: Sparkconf - type: object - sparkConfigMap: - title: Sparkconfigmap - type: string - sparkVersion: - title: Sparkversion - type: string - timeout: - title: Timeout - anyOf: - - type: string - enum: - - DISABLED - - $ref: '#/components/schemas/TimeoutSpec' - timeToLiveSeconds: - title: Timetoliveseconds - type: integer - type: - $ref: '#/components/schemas/SparkApplicationType' - volumes: - items: - $ref: '#/components/schemas/Volume' - title: Volumes - type: array - namespace: - title: Namespace - type: string - description: The Kubernetes namespace the Spark application should run in. - The provided namespace must be present in the cluster's Spark app namespace list. - If empty, Ocean Spark will use the default 'spark-apps' namespace - serviceAccountName: - title: ServiceAccountName - type: string - description: The Kubernetes service account to assign to the Spark application pods - If empty Ocean Spark will use the default `spark-driver` service account - - -components: - schemas: - AWSElasticBlockStoreVolumeSource: - properties: - fsType: - description: 'Filesystem type of the volume that you want to mount. Tip: - Ensure that the filesystem type is supported by the host operating system. - Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. - More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore' - title: Fstype - type: string - partition: - description: 'The partition in the volume that you want to mount. If omitted, - the default is to mount by volume name. Examples: For volume /dev/sda1, - you specify the partition as "1". Similarly, the volume partition for - /dev/sda is "0" (or you can leave the property empty).' - title: Partition - type: integer - readOnly: - description: 'Specify "true" to force and set the ReadOnly property in VolumeMounts - to "true". If omitted, the default is "false". More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore' - title: Readonly - type: boolean - volumeID: - description: 'Unique ID of the persistent disk resource in AWS (Amazon EBS - volume). More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore' - title: Volumeid - type: string - required: - - volumeID - title: AWSElasticBlockStoreVolumeSource - type: object - Affinity: - properties: - nodeAffinity: - allOf: - - $ref: '#/components/schemas/NodeAffinity' - description: Describes node affinity scheduling rules for the pod. - title: Nodeaffinity - podAffinity: - allOf: - - $ref: '#/components/schemas/PodAffinity' - description: Describes pod affinity scheduling rules (e.g. co-locate this - pod in the same node, zone, etc. as some other pod(s)). - title: Podaffinity - podAntiAffinity: - allOf: - - $ref: '#/components/schemas/PodAntiAffinity' - description: Describes pod anti-affinity scheduling rules (e.g. avoid putting - this pod in the same node, zone, etc. as some other pod(s)). - title: Podantiaffinity - title: Affinity - type: object - AzureDiskVolumeSource: - properties: - cachingMode: - description: 'Host Caching mode: None, Read Only, Read Write.' - title: Cachingmode - type: string - diskName: - description: The Name of the data disk in the blob storage - title: Diskname - type: string - diskURI: - description: The URI the data disk in the blob storage - title: Diskuri - type: string - fsType: - description: Filesystem type to mount. Must be a filesystem type supported - by the host operating system. Ex. "ext4", "xfs", "ntfs". Implicitly inferred - to be "ext4" if unspecified. - title: Fstype - type: string - kind: - description: 'Expected values Shared: multiple blob disks per storage account Dedicated: - single blob disk per storage account Managed: azure managed data disk - (only in managed availability set). defaults to shared' - title: Kind - type: string - readOnly: - description: Defaults to false (read/write). ReadOnly here will force the - ReadOnly setting in VolumeMounts. - title: Readonly - type: boolean - required: - - diskName - - diskURI - title: AzureDiskVolumeSource - type: object - AzureFileVolumeSource: - properties: - readOnly: - description: Defaults to false (read/write). ReadOnly here will force the - ReadOnly setting in VolumeMounts. - title: Readonly - type: boolean - secretName: - description: the name of secret that contains Azure Storage Account Name - and Key - title: Secretname - type: string - shareName: - description: Share Name - title: Sharename - type: string - required: - - secretName - - shareName - title: AzureFileVolumeSource - type: object - CSIVolumeSource: - properties: - driver: - description: Driver is the name of the CSI driver that handles this volume. - Consult with your admin for the correct name as registered in the cluster. - title: Driver - type: string - fsType: - description: Filesystem type to mount. Ex. "ext4", "xfs", "ntfs". If not - provided, the empty value is passed to the associated CSI driver which - will determine the default filesystem to apply. - title: Fstype - type: string - nodePublishSecretRef: - allOf: - - $ref: '#/components/schemas/LocalObjectReference' - description: NodePublishSecretRef is a reference to the secret object containing - sensitive information to pass to the CSI driver to complete the CSI NodePublishVolume - and NodeUnpublishVolume calls. This field is optional, and may be empty - if no secret is required. If the secret object contains more than one - secret, all secret references are passed. - title: Nodepublishsecretref - readOnly: - description: Specifies a read-only configuration for the volume. Defaults - to false (read/write). - title: Readonly - type: boolean - volumeAttributes: - additionalProperties: - type: string - description: VolumeAttributes stores driver-specific properties that are - passed to the CSI driver. Consult your driver's documentation for supported - values. - title: Volumeattributes - type: object - required: - - driver - title: CSIVolumeSource - type: object - Capabilities: - properties: - add: - description: Added capabilities - items: - type: string - title: Add - type: array - drop: - description: Removed capabilities - items: - type: string - title: Drop - type: array - title: Capabilities - type: object - CephFSVolumeSource: - properties: - monitors: - description: 'Required: Monitors is a collection of Ceph monitors More info: - https://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it' - items: - type: string - title: Monitors - type: array - path: - description: 'Optional: Used as the mounted root, rather than the full Ceph - tree, default is /' - title: Path - type: string - readOnly: - description: 'Optional: Defaults to false (read/write). ReadOnly here will - force the ReadOnly setting in VolumeMounts. More info: https://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it' - title: Readonly - type: boolean - secretFile: - description: 'Optional: SecretFile is the path to key ring for User, default - is /etc/ceph/user.secret More info: https://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it' - title: Secretfile - type: string - secretRef: - allOf: - - $ref: '#/components/schemas/LocalObjectReference' - description: 'Optional: SecretRef is reference to the authentication secret - for User, default is empty. More info: https://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it' - title: Secretref - user: - description: 'Optional: User is the rados user name, default is admin More - info: https://releases.k8s.io/HEAD/examples/volumes/cephfs/README.md#how-to-use-it' - title: User - type: string - required: - - monitors - title: CephFSVolumeSource - type: object - CinderVolumeSource: - properties: - fsType: - description: 'Filesystem type to mount. Must be a filesystem type supported - by the host operating system. Examples: "ext4", "xfs", "ntfs". Implicitly - inferred to be "ext4" if unspecified. More info: https://releases.k8s.io/HEAD/examples/mysql-cinder-pd/README.md' - title: Fstype - type: string - readOnly: - description: 'Optional: Defaults to false (read/write). ReadOnly here will - force the ReadOnly setting in VolumeMounts. More info: https://releases.k8s.io/HEAD/examples/mysql-cinder-pd/README.md' - title: Readonly - type: boolean - secretRef: - allOf: - - $ref: '#/components/schemas/LocalObjectReference' - description: 'Optional: points to a secret object containing parameters - used to connect to OpenStack.' - title: Secretref - volumeID: - description: 'volume id used to identify the volume in cinder More info: - https://releases.k8s.io/HEAD/examples/mysql-cinder-pd/README.md' - title: Volumeid - type: string - required: - - volumeID - title: CinderVolumeSource - type: object - ConfigMapProjection: - properties: - items: - description: If unspecified, each key-value pair in the Data field of the - referenced ConfigMap will be projected into the volume as a file whose - name is the key and content is the value. If specified, the listed keys - will be projected into the specified paths, and unlisted keys will not - be present. If a key is specified which is not present in the ConfigMap, - the volume setup will error unless it is marked optional. Paths must be - relative and may not contain the '..' path or start with '..'. - items: - $ref: '#/components/schemas/KeyToPath' - title: Items - type: array - name: - description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' - title: Name - type: string - optional: - description: Specify whether the ConfigMap or its keys must be defined - title: Optional - type: boolean - title: ConfigMapProjection - type: object - ConfigMapVolumeSource: - properties: - defaultMode: - description: 'Optional: mode bits to use on created files by default. Must - be a value between 0 and 0777. Defaults to 0644. Directories within the - path are not affected by this setting. This might be in conflict with - other options that affect the file mode, like fsGroup, and the result - can be other mode bits set.' - title: Defaultmode - type: integer - items: - description: If unspecified, each key-value pair in the Data field of the - referenced ConfigMap will be projected into the volume as a file whose - name is the key and content is the value. If specified, the listed keys - will be projected into the specified paths, and unlisted keys will not - be present. If a key is specified which is not present in the ConfigMap, - the volume setup will error unless it is marked optional. Paths must be - relative and may not contain the '..' path or start with '..'. - items: - $ref: '#/components/schemas/KeyToPath' - title: Items - type: array - name: - description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' - title: Name - type: string - optional: - description: Specify whether the ConfigMap or its keys must be defined - title: Optional - type: boolean - title: ConfigMapVolumeSource - type: object - Dependencies: - description: Dependencies of the Spark application - properties: - files: - items: - type: string - title: Files - type: array - jars: - items: - type: string - title: Jars - type: array - pyFiles: - items: - type: string - title: Pyfiles - type: array - packages: - items: - type: string - title: Packages - type: array - excludePackages: - items: - type: string - title: Excludepackages - type: array - repositories: - items: - type: string - title: Repositories - type: array - title: Dependencies - type: object - DownwardAPIProjection: - properties: - items: - description: Items is a list of DownwardAPIVolume file - items: - $ref: '#/components/schemas/DownwardAPIVolumeFile' - title: Items - type: array - title: DownwardAPIProjection - type: object - DownwardAPIVolumeFile: - properties: - fieldRef: - allOf: - - $ref: '#/components/schemas/ObjectFieldSelector' - description: 'Required: Selects a field of the pod: only annotations, labels, - name and namespace are supported.' - title: Fieldref - mode: - description: 'Optional: mode bits to use on this file, must be a value between - 0 and 0777. If not specified, the volume defaultMode will be used. This - might be in conflict with other options that affect the file mode, like - fsGroup, and the result can be other mode bits set.' - title: Mode - type: integer - path: - description: 'Required: Path is the relative path name of the file to be - created. Must not be absolute or contain the ''..'' path. Must be utf-8 - encoded. The first item of the relative path must not start with ''..''' - title: Path - type: string - resourceFieldRef: - allOf: - - $ref: '#/components/schemas/ResourceFieldSelector' - description: 'Selects a resource of the container: only resources limits - and requests (limits.cpu, limits.memory, requests.cpu and requests.memory) - are currently supported.' - title: Resourcefieldref - required: - - path - title: DownwardAPIVolumeFile - type: object - DownwardAPIVolumeSource: - properties: - defaultMode: - description: 'Optional: mode bits to use on created files by default. Must - be a value between 0 and 0777. Defaults to 0644. Directories within the - path are not affected by this setting. This might be in conflict with - other options that affect the file mode, like fsGroup, and the result - can be other mode bits set.' - title: Defaultmode - type: integer - items: - description: Items is a list of downward API volume file - items: - $ref: '#/components/schemas/DownwardAPIVolumeFile' - title: Items - type: array - title: DownwardAPIVolumeSource - type: object - DriverSpec: - additionalProperties: false - description: A configuration for a Spark driver (no required field) - properties: - affinity: - $ref: '#/components/schemas/Affinity' - annotations: - additionalProperties: - type: string - title: Annotations - type: object - configMaps: - items: - $ref: '#/components/schemas/NamePath' - title: Configmaps - type: array - coreLimit: - title: Corelimit - type: string - coreRequest: - title: Corerequest - type: string - cores: - $ref: "cores.yaml" - dnsConfig: - $ref: '#/components/schemas/PodDNSConfig' - env: - $ref: '#/components/schemas/Env' - envSecretKeyRefs: - $ref: '#/components/schemas/EnvSecretKeyRefs' - envVars: - $ref: '#/components/schemas/EnvVars' - hostAliases: - items: - $ref: '#/components/schemas/HostAlias' - title: Hostaliases - type: array - image: - title: Image - type: string - instanceSelector: - $ref: '#/components/schemas/InstanceSelector' - instanceAllowList: - $ref: '#/components/schemas/InstanceAllowList' - javaOptions: - title: Javaoptions - type: string - lifecycle: - title: Lifecycle - allOf: - - "$ref": "#/components/schemas/Lifecycle" - description: Optional lifecycle hooks to add to the driver pod - sidecars: - title: Sidecars - type: array - items: - "$ref": "#/components/schemas/Container" - initContainers: - title: Initcontainers - type: array - items: - "$ref": "#/components/schemas/Container" - labels: - additionalProperties: - type: string - title: Labels - type: object - memory: - title: Memory - type: string - memoryOverhead: - title: Memoryoverhead - type: string - podName: - $ref: '#/components/schemas/K8sName' - podSecurityContext: - $ref: '#/components/schemas/PodSecurityContext' - secrets: - items: - $ref: '#/components/schemas/SecretInfo' - title: Secrets - type: array - securityContext: - $ref: '#/components/schemas/SecurityContext' - spot: - title: Spot - type: boolean - tolerations: - items: - $ref: '#/components/schemas/Toleration' - title: Tolerations - type: array - vngIds: - $ref: '#/components/schemas/VngIds' - volumeMounts: - items: - $ref: '#/components/schemas/VolumeMount' - title: Volumemounts - type: array - title: DriverSpec - type: object - EmptyDirVolumeSource: - properties: - medium: - description: 'What type of storage medium should back this directory. The - default is "" which means to use the node''s default medium. Must be an - empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir' - title: Medium - type: string - sizeLimit: - allOf: - - $ref: '#/components/schemas/Quantity' - description: 'Total amount of local storage required for this EmptyDir volume. - The size limit is also applicable for memory medium. The maximum usage - on memory medium EmptyDir would be the minimum value between the SizeLimit - specified here and the sum of memory limits of all containers in a pod. - The default is nil which means that the limit is undefined. More info: - http://kubernetes.io/docs/user-guide/volumes#emptydir' - title: Sizelimit - title: EmptyDirVolumeSource - type: object - Env: - title: Env - type: array - items: - "$ref": "#/components/schemas/EnvVar" # TODO: deprecate, driver/exec, description - description: List of environment variables to set in the container. - EnvSecretKeyRefs: - additionalProperties: - $ref: '#/components/schemas/NameKey' - title: EnvSecretKeyRefs - type: object - description: DEPRECATED use `env` instead - EnvVars: - additionalProperties: - type: string - title: EnvVars - type: object - description: DEPRECATED use `env` instead - ExecutorSpec: - additionalProperties: false - description: A configuration for a Spark executor (no required field) - properties: - affinity: - $ref: '#/components/schemas/Affinity' - annotations: - additionalProperties: - type: string - title: Annotations - type: object - configMaps: - items: - $ref: '#/components/schemas/NamePath' - title: Configmaps - type: array - coreLimit: - title: Corelimit - type: string - coreRequest: - title: Corerequest - type: string - cores: - $ref: "cores.yaml" - dnsConfig: - $ref: '#/components/schemas/PodDNSConfig' - env: - $ref: '#/components/schemas/Env' - envSecretKeyRefs: - $ref: '#/components/schemas/EnvSecretKeyRefs' - envVars: - $ref: '#/components/schemas/EnvVars' - hostAliases: - items: - $ref: '#/components/schemas/HostAlias' - title: Hostaliases - type: array - image: - title: Image - type: string - instanceSelector: - $ref: '#/components/schemas/InstanceSelector' - instanceAllowList: - $ref: '#/components/schemas/InstanceAllowList' - sidecars: - title: Sidecars - type: array - items: - "$ref": "#/components/schemas/Container" - initContainers: - title: Initcontainers - type: array - items: - "$ref": "#/components/schemas/Container" - instances: - title: Instances - type: integer - javaOptions: - title: Javaoptions - type: string - labels: - additionalProperties: - type: string - title: Labels - type: object - memory: - oneOf: - - $ref: '#/components/schemas/StaticMemoryString' - - $ref: '#/components/schemas/OOMRecoveryStrategy' - - $ref: '#/components/schemas/MemoryAutotuningStrategy' - memoryOverhead: - title: Memoryoverhead - type: string - podSecurityContext: - $ref: '#/components/schemas/PodSecurityContext' - secrets: - items: - $ref: '#/components/schemas/SecretInfo' - title: Secrets - type: array - securityContext: - $ref: '#/components/schemas/SecurityContext' - spot: - title: Spot - type: boolean - tolerations: - items: - $ref: '#/components/schemas/Toleration' - title: Tolerations - type: array - vngIds: - $ref: '#/components/schemas/VngIds' - volumeMounts: - items: - $ref: '#/components/schemas/VolumeMount' - title: Volumemounts - type: array - title: ExecutorSpec - type: object - FCVolumeSource: - properties: - fsType: - description: Filesystem type to mount. Must be a filesystem type supported - by the host operating system. Ex. "ext4", "xfs", "ntfs". Implicitly inferred - to be "ext4" if unspecified. - title: Fstype - type: string - lun: - description: 'Optional: FC target lun number' - title: Lun - type: integer - readOnly: - description: 'Optional: Defaults to false (read/write). ReadOnly here will - force the ReadOnly setting in VolumeMounts.' - title: Readonly - type: boolean - targetWWNs: - description: 'Optional: FC target worldwide names (WWNs)' - items: - type: string - title: Targetwwns - type: array - wwids: - description: 'Optional: FC volume world wide identifiers (wwids) Either - wwids or combination of targetWWNs and lun must be set, but not both simultaneously.' - items: - type: string - title: Wwids - type: array - title: FCVolumeSource - type: object - FlexVolumeSource: - properties: - driver: - description: Driver is the name of the driver to use for this volume. - title: Driver - type: string - fsType: - description: Filesystem type to mount. Must be a filesystem type supported - by the host operating system. Ex. "ext4", "xfs", "ntfs". The default filesystem - depends on FlexVolume script. - title: Fstype - type: string - options: - additionalProperties: - type: string - description: 'Optional: Extra command options if any.' - title: Options - type: object - readOnly: - description: 'Optional: Defaults to false (read/write). ReadOnly here will - force the ReadOnly setting in VolumeMounts.' - title: Readonly - type: boolean - secretRef: - allOf: - - $ref: '#/components/schemas/LocalObjectReference' - description: 'Optional: SecretRef is reference to the secret object containing - sensitive information to pass to the plugin scripts. This may be empty - if no secret object is specified. If the secret object contains more than - one secret, all secrets are passed to the plugin scripts.' - title: Secretref - required: - - driver - title: FlexVolumeSource - type: object - FlockerVolumeSource: - properties: - datasetName: - description: Name of the dataset stored as metadata -> name on the dataset - for Flocker should be considered as deprecated - title: Datasetname - type: string - datasetUUID: - description: UUID of the dataset. This is unique identifier of a Flocker - dataset - title: Datasetuuid - type: string - title: FlockerVolumeSource - type: object - GCEPersistentDiskVolumeSource: - properties: - fsType: - description: 'Filesystem type of the volume that you want to mount. Tip: - Ensure that the filesystem type is supported by the host operating system. - Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. - More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' - title: Fstype - type: string - partition: - description: 'The partition in the volume that you want to mount. If omitted, - the default is to mount by volume name. Examples: For volume /dev/sda1, - you specify the partition as "1". Similarly, the volume partition for - /dev/sda is "0" (or you can leave the property empty). More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' - title: Partition - type: integer - pdName: - description: 'Unique name of the PD resource in GCE. Used to identify the - disk in GCE. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' - title: Pdname - type: string - readOnly: - description: 'ReadOnly here will force the ReadOnly setting in VolumeMounts. - Defaults to false. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' - title: Readonly - type: boolean - required: - - pdName - title: GCEPersistentDiskVolumeSource - type: object - GitRepoVolumeSource: - properties: - directory: - description: Target directory name. Must not contain or start with '..'. If - '.' is supplied, the volume directory will be the git repository. Otherwise, - if specified, the volume will contain the git repository in the subdirectory - with the given name. - title: Directory - type: string - repository: - description: Repository URL - title: Repository - type: string - revision: - description: Commit hash for the specified revision. - title: Revision - type: string - required: - - repository - title: GitRepoVolumeSource - type: object - GlusterfsVolumeSource: - properties: - endpoints: - description: 'EndpointsName is the endpoint name that details Glusterfs - topology. More info: https://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod' - title: Endpoints - type: string - path: - description: 'Path is the Glusterfs volume path. More info: https://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod' - title: Path - type: string - readOnly: - description: 'ReadOnly here will force the Glusterfs volume to be mounted - with read-only permissions. Defaults to false. More info: https://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md#create-a-pod' - title: Readonly - type: boolean - required: - - endpoints - - path - title: GlusterfsVolumeSource - type: object - HostAlias: - properties: - hostnames: - description: Hostnames for the above IP address. - items: - type: string - title: Hostnames - type: array - ip: - description: IP address of the host file entry. - title: Ip - type: string - title: HostAlias - type: object - HostPathVolumeSource: - properties: - path: - description: 'Path of the directory on the host. If the path is a symlink, - it will follow the link to the real path. More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath' - title: Path - type: string - type: - description: 'Type for HostPath Volume Defaults to "" More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath' - title: Type - type: string - required: - - path - title: HostPathVolumeSource - type: object - InstanceSelector: - title: InstanceSelector - description: 'DEPRECATED use `instanceAllowList` instead' - type: string - InstanceAllowList: - title: InstanceAllowList - description: | - Restricts what instances can by used by pods: - - - On AWS, can be an instance type (ex: `i3.large`, `m5d.xlarge`) or an instance family (ex: `i3`, `m5d`). - - On GCP, can be a machine type + VCPU spec (ex: `n2-highmem-4`, `n2-standard-2`) or a machine type (ex: `n2-highmem`, `n2-standard`). - - On Azure, can be a VM size (ex: `standard_a2_v2`, `standard_e16-8_v3`) or a group of VM sizes (ex: `standard_a_v2`, `standard_e_v3`). - The group name is obtained by removing the number of vCPU (and constrained vCPU if there is one) from the VM size, and does not - necessarily map to a VM series. For Azure, this field is **not** case sensitive. - type: array - items: - type: string - ISCSIVolumeSource: - properties: - chapAuthDiscovery: - description: whether support iSCSI Discovery CHAP authentication - title: Chapauthdiscovery - type: boolean - chapAuthSession: - description: whether support iSCSI Session CHAP authentication - title: Chapauthsession - type: boolean - fsType: - description: 'Filesystem type of the volume that you want to mount. Tip: - Ensure that the filesystem type is supported by the host operating system. - Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. - More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi' - title: Fstype - type: string - initiatorName: - description: Custom iSCSI Initiator Name. If initiatorName is specified - with iscsiInterface simultaneously, new iSCSI interface : will be created for the connection. - title: Initiatorname - type: string - iqn: - description: Target iSCSI Qualified Name. - title: Iqn - type: string - iscsiInterface: - description: iSCSI Interface Name that uses an iSCSI transport. Defaults - to 'default' (tcp). - title: Iscsiinterface - type: string - lun: - description: iSCSI Target Lun number. - title: Lun - type: integer - portals: - description: iSCSI Target Portal List. The portal is either an IP or ip_addr:port - if the port is other than default (typically TCP ports 860 and 3260). - items: - type: string - title: Portals - type: array - readOnly: - description: ReadOnly here will force the ReadOnly setting in VolumeMounts. - Defaults to false. - title: Readonly - type: boolean - secretRef: - allOf: - - $ref: '#/components/schemas/LocalObjectReference' - description: CHAP Secret for iSCSI target and initiator authentication - title: Secretref - targetPortal: - description: iSCSI Target Portal. The Portal is either an IP or ip_addr:port - if the port is other than default (typically TCP ports 860 and 3260). - title: Targetportal - type: string - required: - - iqn - - lun - - targetPortal - title: ISCSIVolumeSource - type: object - K8sName: - pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ - title: K8sName - type: string - KeyToPath: - properties: - key: - description: The key to project. - title: Key - type: string - mode: - description: 'Optional: mode bits to use on this file, must be a value between - 0 and 0777. If not specified, the volume defaultMode will be used. This - might be in conflict with other options that affect the file mode, like - fsGroup, and the result can be other mode bits set.' - title: Mode - type: integer - path: - description: The relative path of the file to map the key to. May not be - an absolute path. May not contain the path element '..'. May not start - with the string '..'. - title: Path - type: string - required: - - key - - path - title: KeyToPath - type: object - LabelSelector: - properties: - matchExpressions: - description: matchExpressions is a list of label selector requirements. - The requirements are ANDed. - items: - $ref: '#/components/schemas/LabelSelectorRequirement' - title: Matchexpressions - type: array - matchLabels: - additionalProperties: - type: string - description: matchLabels is a map of {key,value} pairs. A single {key,value} - in the matchLabels map is equivalent to an element of matchExpressions, - whose key field is "key", the operator is "In", and the values array contains - only "value". The requirements are ANDed. - title: Matchlabels - type: object - title: LabelSelector - type: object - LabelSelectorRequirement: - properties: - key: - description: key is the label key that the selector applies to. - title: Key - type: string - operator: - description: operator represents a key's relationship to a set of values. - Valid operators are In, NotIn, Exists and DoesNotExist. - title: Operator - type: string - values: - description: values is an array of string values. If the operator is In - or NotIn, the values array must be non-empty. If the operator is Exists - or DoesNotExist, the values array must be empty. This array is replaced - during a strategic merge patch. - items: - type: string - title: Values - type: array - required: - - key - - operator - title: LabelSelectorRequirement - type: object - LocalObjectReference: - properties: - name: - description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' - title: Name - type: string - title: LocalObjectReference - type: object - NFSVolumeSource: - properties: - path: - description: 'Path that is exported by the NFS server. More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' - title: Path - type: string - readOnly: - description: 'ReadOnly here will force the NFS export to be mounted with - read-only permissions. Defaults to false. More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' - title: Readonly - type: boolean - server: - description: 'Server is the hostname or IP address of the NFS server. More - info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' - title: Server - type: string - required: - - path - - server - title: NFSVolumeSource - type: object - NameKey: - description: The name and key of a SecretKeyRef - properties: - key: - title: Key - type: string - name: - title: Name - type: string - required: - - name - - key - title: NameKey - type: object - NamePath: - description: A pair of a name and a path to which the named objects should be - mounted to - properties: - name: - title: Name - type: string - path: - title: Path - type: string - required: - - name - - path - title: NamePath - type: object - NodeAffinity: - properties: - preferredDuringSchedulingIgnoredDuringExecution: - description: The scheduler will prefer to schedule pods to nodes that satisfy - the affinity expressions specified by this field, but it may choose a - node that violates one or more of the expressions. The node that is most - preferred is the one with the greatest sum of weights, i.e. for each node - that meets all of the scheduling requirements (resource request, requiredDuringScheduling - affinity expressions, etc.), compute a sum by iterating through the elements - of this field and adding "weight" to the sum if the node matches the corresponding - matchExpressions; the node(s) with the highest sum are the most preferred. - items: - $ref: '#/components/schemas/PreferredSchedulingTerm' - title: Preferredduringschedulingignoredduringexecution - type: array - requiredDuringSchedulingIgnoredDuringExecution: - allOf: - - $ref: '#/components/schemas/NodeSelector' - description: If the affinity requirements specified by this field are not - met at scheduling time, the pod will not be scheduled onto the node. If - the affinity requirements specified by this field cease to be met at some - point during pod execution (e.g. due to an update), the system may or - may not try to eventually evict the pod from its node. - title: Requiredduringschedulingignoredduringexecution - title: NodeAffinity - type: object - NodeSelector: - properties: - nodeSelectorTerms: - description: Required. A list of node selector terms. The terms are ORed. - items: - $ref: '#/components/schemas/NodeSelectorTerm' - title: Nodeselectorterms - type: array - required: - - nodeSelectorTerms - title: NodeSelector - type: object - NodeSelectorRequirement: - properties: - key: - description: The label key that the selector applies to. - title: Key - type: string - operator: - description: Represents a key's relationship to a set of values. Valid operators - are In, NotIn, Exists, DoesNotExist. Gt, and Lt. - title: Operator - type: string - values: - description: An array of string values. If the operator is In or NotIn, - the values array must be non-empty. If the operator is Exists or DoesNotExist, - the values array must be empty. If the operator is Gt or Lt, the values - array must have a single element, which will be interpreted as an integer. - This array is replaced during a strategic merge patch. - items: - type: string - title: Values - type: array - required: - - key - - operator - title: NodeSelectorRequirement - type: object - NodeSelectorTerm: - properties: - matchExpressions: - description: A list of node selector requirements by node's labels. - items: - $ref: '#/components/schemas/NodeSelectorRequirement' - title: Matchexpressions - type: array - matchFields: - description: A list of node selector requirements by node's fields. - items: - $ref: '#/components/schemas/NodeSelectorRequirement' - title: Matchfields - type: array - title: NodeSelectorTerm - type: object - ObjectFieldSelector: - properties: - apiVersion: - description: Version of the schema the FieldPath is written in terms of, - defaults to "v1". - title: Apiversion - type: string - fieldPath: - description: Path of the field to select in the specified API version. - title: Fieldpath - type: string - required: - - fieldPath - title: ObjectFieldSelector - type: object - StaticMemoryString: - title: StaticMemoryString - description: static memory - #example: [ '4096m', '16g' ] - type: string - OOMRecoveryStrategy: - description: Memory allocation strategy that automatically increments the memory when a previous app failed with an OOM - properties: - strategy: - type: string - title: oomRecovery - enum: [oomRecovery] - description: Automatically increase memory if a previous app failed with an OOM error - scalingFactor: - title: scalingFactor - description: Memory multiplier after an OOM failure. Optional, defaults to 2.0 - type: number - maxMemory: - title: maxMemory - description: Optional, maximum allocatable memory - type: string - required: - - strategy - MemoryAutotuningStrategy: - description: Memory allocation strategy that automatically increments the - memory when a previous app failed with an OOM, and decreases it based on - past applications' memory usage - properties: - strategy: - type: string - title: autotuning - enum: [autotuning] - description: Automatically increase memory if a previous app failed with an OOM error, and decrease it based on - past applications' memory usage - scalingFactor: - title: scalingFactor - description: Memory multiplier after an OOM failure. Optional, defaults to 2.0 - type: number - maxMemory: - title: maxMemory - description: Optional, maximum allocatable memory - type: string - historySize: - title: historySize - description: Number of past apps to take into account to compute the recommended memory, defaults to 6 - type: integer - marginRatio: - title: marginRatio - description: Additional safety margin on top of the recommended memory, defaults to 0.1 - type: number - required: - - strategy - - PersistentVolumeClaimVolumeSource: - properties: - claimName: - description: 'ClaimName is the name of a PersistentVolumeClaim in the same - namespace as the pod using this volume. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' - title: Claimname - type: string - readOnly: - description: Will force the ReadOnly setting in VolumeMounts. Default false. - title: Readonly - type: boolean - required: - - claimName - title: PersistentVolumeClaimVolumeSource - type: object - PhotonPersistentDiskVolumeSource: - properties: - fsType: - description: Filesystem type to mount. Must be a filesystem type supported - by the host operating system. Ex. "ext4", "xfs", "ntfs". Implicitly inferred - to be "ext4" if unspecified. - title: Fstype - type: string - pdID: - description: ID that identifies Photon Controller persistent disk - title: Pdid - type: string - required: - - pdID - title: PhotonPersistentDiskVolumeSource - type: object - PodAffinity: - properties: - preferredDuringSchedulingIgnoredDuringExecution: - description: The scheduler will prefer to schedule pods to nodes that satisfy - the affinity expressions specified by this field, but it may choose a - node that violates one or more of the expressions. The node that is most - preferred is the one with the greatest sum of weights, i.e. for each node - that meets all of the scheduling requirements (resource request, requiredDuringScheduling - affinity expressions, etc.), compute a sum by iterating through the elements - of this field and adding "weight" to the sum if the node has pods which - matches the corresponding podAffinityTerm; the node(s) with the highest - sum are the most preferred. - items: - $ref: '#/components/schemas/WeightedPodAffinityTerm' - title: Preferredduringschedulingignoredduringexecution - type: array - requiredDuringSchedulingIgnoredDuringExecution: - description: If the affinity requirements specified by this field are not - met at scheduling time, the pod will not be scheduled onto the node. If - the affinity requirements specified by this field cease to be met at some - point during pod execution (e.g. due to a pod label update), the system - may or may not try to eventually evict the pod from its node. When there - are multiple elements, the lists of nodes corresponding to each podAffinityTerm - are intersected, i.e. all terms must be satisfied. - items: - $ref: '#/components/schemas/PodAffinityTerm' - title: Requiredduringschedulingignoredduringexecution - type: array - title: PodAffinity - type: object - PodAffinityTerm: - properties: - labelSelector: - allOf: - - $ref: '#/components/schemas/LabelSelector' - description: A label query over a set of resources, in this case pods. - title: Labelselector - namespaces: - description: namespaces specifies which namespaces the labelSelector applies - to (matches against); null or empty list means "this pod's namespace" - items: - type: string - title: Namespaces - type: array - topologyKey: - description: This pod should be co-located (affinity) or not co-located - (anti-affinity) with the pods matching the labelSelector in the specified - namespaces, where co-located is defined as running on a node whose value - of the label with key topologyKey matches that of any node on which any - of the selected pods is running. Empty topologyKey is not allowed. - title: Topologykey - type: string - required: - - topologyKey - title: PodAffinityTerm - type: object - PodAntiAffinity: - properties: - preferredDuringSchedulingIgnoredDuringExecution: - description: The scheduler will prefer to schedule pods to nodes that satisfy - the anti-affinity expressions specified by this field, but it may choose - a node that violates one or more of the expressions. The node that is - most preferred is the one with the greatest sum of weights, i.e. for each - node that meets all of the scheduling requirements (resource request, - requiredDuringScheduling anti-affinity expressions, etc.), compute a sum - by iterating through the elements of this field and adding "weight" to - the sum if the node has pods which matches the corresponding podAffinityTerm; - the node(s) with the highest sum are the most preferred. - items: - $ref: '#/components/schemas/WeightedPodAffinityTerm' - title: Preferredduringschedulingignoredduringexecution - type: array - requiredDuringSchedulingIgnoredDuringExecution: - description: If the anti-affinity requirements specified by this field are - not met at scheduling time, the pod will not be scheduled onto the node. - If the anti-affinity requirements specified by this field cease to be - met at some point during pod execution (e.g. due to a pod label update), - the system may or may not try to eventually evict the pod from its node. - When there are multiple elements, the lists of nodes corresponding to - each podAffinityTerm are intersected, i.e. all terms must be satisfied. - items: - $ref: '#/components/schemas/PodAffinityTerm' - title: Requiredduringschedulingignoredduringexecution - type: array - title: PodAntiAffinity - type: object - PodDNSConfigOption: - title: PodDNSConfigOption - type: object - properties: - name: - title: Name - description: Required. - type: string - value: - title: Value - type: string - PodDNSConfig: - title: PodDNSConfig - type: object - properties: - nameservers: - title: Nameservers - description: A list of DNS name server IP addresses. This will be appended to - the base nameservers generated from DNSPolicy. Duplicated nameservers will - be removed. - type: array - items: - type: string - options: - title: Options - description: A list of DNS resolver options. This will be merged with the base - options generated from DNSPolicy. Duplicated entries will be removed. Resolution - options given in Options will override those that appear in the base DNSPolicy. - type: array - items: - "$ref": "#/components/schemas/PodDNSConfigOption" - searches: - title: Searches - description: A list of DNS search domains for host-name lookup. This will be - appended to the base search paths generated from DNSPolicy. Duplicated search - paths will be removed. - type: array - items: - type: string - PodSecurityContext: - properties: - fsGroup: - description: 'A special supplemental group that applies to all containers - in a pod. Some volume types allow the Kubelet to change the ownership - of that volume to be owned by the pod: - - - 1. The owning GID will be the FSGroup 2. The setgid bit is set (new files - created in the volume will be owned by FSGroup) 3. The permission bits - are OR''d with rw-rw---- - - - If unset, the Kubelet will not modify the ownership and permissions of - any volume.' - title: Fsgroup - type: integer - runAsGroup: - description: The GID to run the entrypoint of the container process. Uses - runtime default if unset. May also be set in SecurityContext. If set - in both SecurityContext and PodSecurityContext, the value specified in - SecurityContext takes precedence for that container. - title: Runasgroup - type: integer - runAsNonRoot: - description: Indicates that the container must run as a non-root user. If - true, the Kubelet will validate the image at runtime to ensure that it - does not run as UID 0 (root) and fail to start the container if it does. - If unset or false, no such validation will be performed. May also be set - in SecurityContext. If set in both SecurityContext and PodSecurityContext, - the value specified in SecurityContext takes precedence. - title: Runasnonroot - type: boolean - runAsUser: - description: The UID to run the entrypoint of the container process. Defaults - to user specified in image metadata if unspecified. May also be set in - SecurityContext. If set in both SecurityContext and PodSecurityContext, - the value specified in SecurityContext takes precedence for that container. - title: Runasuser - type: integer - seLinuxOptions: - allOf: - - $ref: '#/components/schemas/SELinuxOptions' - description: The SELinux context to be applied to all containers. If unspecified, - the container runtime will allocate a random SELinux context for each - container. May also be set in SecurityContext. If set in both SecurityContext - and PodSecurityContext, the value specified in SecurityContext takes precedence - for that container. - title: Selinuxoptions - supplementalGroups: - description: A list of groups applied to the first process run in each container, - in addition to the container's primary GID. If unspecified, no groups - will be added to any container. - items: - type: integer - title: Supplementalgroups - type: array - sysctls: - description: Sysctls hold a list of namespaced sysctls used for the pod. - Pods with unsupported sysctls (by the container runtime) might fail to - launch. - items: - $ref: '#/components/schemas/Sysctl' - title: Sysctls - type: array - windowsOptions: - allOf: - - $ref: '#/components/schemas/WindowsSecurityContextOptions' - description: Windows security options. - title: Windowsoptions - title: PodSecurityContext - type: object - PortworxVolumeSource: - properties: - fsType: - description: FSType represents the filesystem type to mount Must be a filesystem - type supported by the host operating system. Ex. "ext4", "xfs". Implicitly - inferred to be "ext4" if unspecified. - title: Fstype - type: string - readOnly: - description: Defaults to false (read/write). ReadOnly here will force the - ReadOnly setting in VolumeMounts. - title: Readonly - type: boolean - volumeID: - description: VolumeID uniquely identifies a Portworx volume - title: Volumeid - type: string - required: - - volumeID - title: PortworxVolumeSource - type: object - PreferredSchedulingTerm: - properties: - preference: - allOf: - - $ref: '#/components/schemas/NodeSelectorTerm' - description: A node selector term, associated with the corresponding weight. - title: Preference - weight: - description: Weight associated with matching the corresponding nodeSelectorTerm, - in the range 1-100. - title: Weight - type: integer - required: - - preference - - weight - title: PreferredSchedulingTerm - type: object - ProjectedVolumeSource: - properties: - defaultMode: - description: Mode bits to use on created files by default. Must be a value - between 0 and 0777. Directories within the path are not affected by this - setting. This might be in conflict with other options that affect the - file mode, like fsGroup, and the result can be other mode bits set. - title: Defaultmode - type: integer - sources: - description: list of volume projections - items: - $ref: '#/components/schemas/VolumeProjection' - title: Sources - type: array - required: - - sources - title: ProjectedVolumeSource - type: object - PythonVersion: - description: An enumeration. - enum: - - '2' - - '3' - default: '3' - example: '3' - title: PythonVersion - type: string - Quantity: - anyOf: - - type: string - - type: number - title: Quantity - QuobyteVolumeSource: - properties: - group: - description: Group to map volume access to Default is no group - title: Group - type: string - readOnly: - description: ReadOnly here will force the Quobyte volume to be mounted with - read-only permissions. Defaults to false. - title: Readonly - type: boolean - registry: - description: Registry represents a single or multiple Quobyte Registry services - specified as a string as host:port pair (multiple entries are separated - with commas) which acts as the central registry for volumes - title: Registry - type: string - tenant: - description: Tenant owning the given Quobyte volume in the Backend Used - with dynamically provisioned Quobyte volumes, value is set by the plugin - title: Tenant - type: string - user: - description: User to map volume access to Defaults to serivceaccount user - title: User - type: string - volume: - description: Volume is a string that references an already created Quobyte - volume by name. - title: Volume - type: string - required: - - registry - - volume - title: QuobyteVolumeSource - type: object - RBDVolumeSource: - properties: - fsType: - description: 'Filesystem type of the volume that you want to mount. Tip: - Ensure that the filesystem type is supported by the host operating system. - Examples: "ext4", "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. - More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd' - title: Fstype - type: string - image: - description: 'The rados image name. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it' - title: Image - type: string - keyring: - description: 'Keyring is the path to key ring for RBDUser. Default is /etc/ceph/keyring. - More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it' - title: Keyring - type: string - monitors: - description: 'A collection of Ceph monitors. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it' - items: - type: string - title: Monitors - type: array - pool: - description: 'The rados pool name. Default is rbd. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it' - title: Pool - type: string - readOnly: - description: 'ReadOnly here will force the ReadOnly setting in VolumeMounts. - Defaults to false. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it' - title: Readonly - type: boolean - secretRef: - allOf: - - $ref: '#/components/schemas/LocalObjectReference' - description: 'SecretRef is name of the authentication secret for RBDUser. - If provided overrides keyring. Default is nil. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it' - title: Secretref - user: - description: 'The rados user name. Default is admin. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md#how-to-use-it' - title: User - type: string - required: - - image - - monitors - title: RBDVolumeSource - type: object - ResourceFieldSelector: - properties: - containerName: - description: 'Container name: required for volumes, optional for env vars' - title: Containername - type: string - divisor: - allOf: - - $ref: '#/components/schemas/Quantity' - description: Specifies the output format of the exposed resources, defaults - to "1" - title: Divisor - resource: - description: 'Required: resource to select' - title: Resource - type: string - required: - - resource - title: ResourceFieldSelector - type: object - SELinuxOptions: - properties: - level: - description: Level is SELinux level label that applies to the container. - title: Level - type: string - role: - description: Role is a SELinux role label that applies to the container. - title: Role - type: string - type: - description: Type is a SELinux type label that applies to the container. - title: Type - type: string - user: - description: User is a SELinux user label that applies to the container. - title: User - type: string - title: SELinuxOptions - type: object - ScaleIOVolumeSource: - properties: - fsType: - description: Filesystem type to mount. Must be a filesystem type supported - by the host operating system. Ex. "ext4", "xfs", "ntfs". Default is "xfs". - title: Fstype - type: string - gateway: - description: The host address of the ScaleIO API Gateway. - title: Gateway - type: string - protectionDomain: - description: The name of the ScaleIO Protection Domain for the configured - storage. - title: Protectiondomain - type: string - readOnly: - description: Defaults to false (read/write). ReadOnly here will force the - ReadOnly setting in VolumeMounts. - title: Readonly - type: boolean - secretRef: - allOf: - - $ref: '#/components/schemas/LocalObjectReference' - description: SecretRef references to the secret for ScaleIO user and other - sensitive information. If this is not provided, Login operation will fail. - title: Secretref - sslEnabled: - description: Flag to enable/disable SSL communication with Gateway, default - false - title: Sslenabled - type: boolean - storageMode: - description: Indicates whether the storage for a volume should be ThickProvisioned - or ThinProvisioned. Default is ThinProvisioned. - title: Storagemode - type: string - storagePool: - description: The ScaleIO Storage Pool associated with the protection domain. - title: Storagepool - type: string - system: - description: The name of the storage system as configured in ScaleIO. - title: System - type: string - volumeName: - description: The name of a volume already created in the ScaleIO system - that is associated with this volume source. - title: Volumename - type: string - required: - - gateway - - secretRef - - system - title: ScaleIOVolumeSource - type: object - SecretInfo: - description: The information of a secret - properties: - name: - title: Name - type: string - path: - title: Path - type: string - secretType: - $ref: '#/components/schemas/SecretType' - required: - - name - - path - - secretType - title: SecretInfo - type: object - SecretProjection: - properties: - items: - description: If unspecified, each key-value pair in the Data field of the - referenced Secret will be projected into the volume as a file whose name - is the key and content is the value. If specified, the listed keys will - be projected into the specified paths, and unlisted keys will not be present. - If a key is specified which is not present in the Secret, the volume setup - will error unless it is marked optional. Paths must be relative and may - not contain the '..' path or start with '..'. - items: - $ref: '#/components/schemas/KeyToPath' - title: Items - type: array - name: - description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' - title: Name - type: string - optional: - description: Specify whether the Secret or its key must be defined - title: Optional - type: boolean - title: SecretProjection - type: object - SecretType: - description: An enumeration. - enum: - - GCPServiceAccount - - HadoopDelegationToken - - Generic - title: SecretType - type: string - SecretVolumeSource: - properties: - defaultMode: - description: 'Optional: mode bits to use on created files by default. Must - be a value between 0 and 0777. Defaults to 0644. Directories within the - path are not affected by this setting. This might be in conflict with - other options that affect the file mode, like fsGroup, and the result - can be other mode bits set.' - title: Defaultmode - type: integer - items: - description: If unspecified, each key-value pair in the Data field of the - referenced Secret will be projected into the volume as a file whose name - is the key and content is the value. If specified, the listed keys will - be projected into the specified paths, and unlisted keys will not be present. - If a key is specified which is not present in the Secret, the volume setup - will error unless it is marked optional. Paths must be relative and may - not contain the '..' path or start with '..'. - items: - $ref: '#/components/schemas/KeyToPath' - title: Items - type: array - optional: - description: Specify whether the Secret or its keys must be defined - title: Optional - type: boolean - secretName: - description: 'Name of the secret in the pod''s namespace to use. More info: - https://kubernetes.io/docs/concepts/storage/volumes#secret' - title: Secretname - type: string - title: SecretVolumeSource - type: object - SecurityContext: - properties: - allowPrivilegeEscalation: - description: 'AllowPrivilegeEscalation controls whether a process can gain - more privileges than its parent process. This bool directly controls if - the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation - is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN' - title: Allowprivilegeescalation - type: boolean - capabilities: - allOf: - - $ref: '#/components/schemas/Capabilities' - description: The capabilities to add/drop when running containers. Defaults - to the default set of capabilities granted by the container runtime. - title: Capabilities - privileged: - description: Run container in privileged mode. Processes in privileged containers - are essentially equivalent to root on the host. Defaults to false. - title: Privileged - type: boolean - procMount: - description: procMount denotes the type of proc mount to use for the containers. - The default is DefaultProcMount which uses the container runtime defaults - for readonly paths and masked paths. This requires the ProcMountType feature - flag to be enabled. - title: Procmount - type: string - readOnlyRootFilesystem: - description: Whether this container has a read-only root filesystem. Default - is false. - title: Readonlyrootfilesystem - type: boolean - runAsGroup: - description: The GID to run the entrypoint of the container process. Uses - runtime default if unset. May also be set in PodSecurityContext. If set - in both SecurityContext and PodSecurityContext, the value specified in - SecurityContext takes precedence. - title: Runasgroup - type: integer - runAsNonRoot: - description: Indicates that the container must run as a non-root user. If - true, the Kubelet will validate the image at runtime to ensure that it - does not run as UID 0 (root) and fail to start the container if it does. - If unset or false, no such validation will be performed. May also be set - in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, - the value specified in SecurityContext takes precedence. - title: Runasnonroot - type: boolean - runAsUser: - description: The UID to run the entrypoint of the container process. Defaults - to user specified in image metadata if unspecified. May also be set in - PodSecurityContext. If set in both SecurityContext and PodSecurityContext, - the value specified in SecurityContext takes precedence. - title: Runasuser - type: integer - seLinuxOptions: - allOf: - - $ref: '#/components/schemas/SELinuxOptions' - description: The SELinux context to be applied to the container. If unspecified, - the container runtime will allocate a random SELinux context for each - container. May also be set in PodSecurityContext. If set in both SecurityContext - and PodSecurityContext, the value specified in SecurityContext takes precedence. - title: Selinuxoptions - windowsOptions: - allOf: - - $ref: '#/components/schemas/WindowsSecurityContextOptions' - description: Windows security options. - title: Windowsoptions - title: SecurityContext - type: object - ServiceAccountTokenProjection: - properties: - audience: - description: Audience is the intended audience of the token. A recipient - of a token must identify itself with an identifier specified in the audience - of the token, and otherwise should reject the token. The audience defaults - to the identifier of the apiserver. - title: Audience - type: string - expirationSeconds: - description: ExpirationSeconds is the requested duration of validity of - the service account token. As the token approaches expiration, the kubelet - volume plugin will proactively rotate the service account token. The kubelet - will start trying to rotate the token if the token is older than 80 percent - of its time to live or if the token is older than 24 hours.Defaults to - 1 hour and must be at least 10 minutes. - title: Expirationseconds - type: integer - path: - description: Path is the path relative to the mount point of the file to - project the token into. - title: Path - type: string - required: - - path - title: ServiceAccountTokenProjection - type: object - SparkApplicationType: - description: An enumeration. - enum: - - Java - - Python - - Scala - title: SparkApplicationType - type: string - Shuffle: - description: External Shuffle storage configuration. This is used to configure - the external shuffle storage plugin in Spark allowing the shuffle data to be stored on - an external storage system. This is useful to handle spot kill more gracefully and allow for executor scaledown - when the shuffle data is stored externally. - properties: - enabled: - title: enabled - description: Is the external shuffle storage plugin enabled - type: boolean - rootDir: - title: rootDir - description: The rootDir for external shuffle storage. This can be any filesystem url supported by hadoop, - e.g. s3://bucket/path, gs://bucket/path, azure://bucket/path, hdfs://path and local path representing - a shared drive mounted on all nodes. - type: string - dependencyInitUserId: - title: dependencyInitUserId - description: The user id for the init container with the shuffle dependencies, - ideally the same as the user id of the driver/executor to ensure the shuffle - dependencies are accessible from there. By default the init container is run as root. - type: integer - dependencyFsGroup: - title: dependencyFsGroup - description: The fsGroup for the podSecurityContext for the Spark driver/executors. - This is used to ensure the shuffle dependencies are accessible from the driver/executor. - This is needed if there is a mismatch between the user id of the driver/executor and the init container. - type: integer - required: - - enabled - - rootDir - StorageOSVolumeSource: - properties: - fsType: - description: Filesystem type to mount. Must be a filesystem type supported - by the host operating system. Ex. "ext4", "xfs", "ntfs". Implicitly inferred - to be "ext4" if unspecified. - title: Fstype - type: string - readOnly: - description: Defaults to false (read/write). ReadOnly here will force the - ReadOnly setting in VolumeMounts. - title: Readonly - type: boolean - secretRef: - allOf: - - $ref: '#/components/schemas/LocalObjectReference' - description: SecretRef specifies the secret to use for obtaining the StorageOS - API credentials. If not specified, default values will be attempted. - title: Secretref - volumeName: - description: VolumeName is the human-readable name of the StorageOS volume. Volume - names are only unique within a namespace. - title: Volumename - type: string - volumeNamespace: - description: VolumeNamespace specifies the scope of the volume within StorageOS. If - no namespace is specified then the Pod's namespace will be used. This - allows the Kubernetes name scoping to be mirrored within StorageOS for - tighter integration. Set VolumeName to any name to override the default - behaviour. Set to "default" if you are not using namespaces within StorageOS. - Namespaces that do not pre-exist within StorageOS will be created. - title: Volumenamespace - type: string - title: StorageOSVolumeSource - type: object - Sysctl: - properties: - name: - description: Name of a property to set - title: Name - type: string - value: - description: Value of a property to set - title: Value - type: string - required: - - name - - value - title: Sysctl - type: object - Toleration: - properties: - effect: - description: Effect indicates the taint effect to match. Empty means match - all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule - and NoExecute. - title: Effect - type: string - key: - description: Key is the taint key that the toleration applies to. Empty - means match all taint keys. If the key is empty, operator must be Exists; - this combination means to match all values and all keys. - title: Key - type: string - operator: - description: Operator represents a key's relationship to the value. Valid - operators are Exists and Equal. Defaults to Equal. Exists is equivalent - to wildcard for value, so that a pod can tolerate all taints of a particular - category. - title: Operator - type: string - tolerationSeconds: - description: TolerationSeconds represents the period of time the toleration - (which must be of effect NoExecute, otherwise this field is ignored) tolerates - the taint. By default, it is not set, which means tolerate the taint forever - (do not evict). Zero and negative values will be treated as 0 (evict immediately) - by the system. - title: Tolerationseconds - type: integer - value: - description: Value is the taint value the toleration matches to. If the - operator is Exists, the value should be empty, otherwise just a regular - string. - title: Value - type: string - title: Toleration - type: object - VngIds: - items: - type: string - title: Vngids - description: 'An optional list of Virtual Node Group identifiers (like ["ols-d1d766b9"]) - on which the pod can be run. If omitted, the pod can be run on any VNG.' - Volume: - properties: - awsElasticBlockStore: - allOf: - - $ref: '#/components/schemas/AWSElasticBlockStoreVolumeSource' - description: 'AWSElasticBlockStore represents an AWS Disk resource that - is attached to a kubelet''s host machine and then exposed to the pod. - More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore' - title: Awselasticblockstore - azureDisk: - allOf: - - $ref: '#/components/schemas/AzureDiskVolumeSource' - description: AzureDisk represents an Azure Data Disk mount on the host and - bind mount to the pod. - title: Azuredisk - azureFile: - allOf: - - $ref: '#/components/schemas/AzureFileVolumeSource' - description: AzureFile represents an Azure File Service mount on the host - and bind mount to the pod. - title: Azurefile - cephfs: - allOf: - - $ref: '#/components/schemas/CephFSVolumeSource' - description: CephFS represents a Ceph FS mount on the host that shares a - pod's lifetime - title: Cephfs - cinder: - allOf: - - $ref: '#/components/schemas/CinderVolumeSource' - description: 'Cinder represents a cinder volume attached and mounted on - kubelets host machine More info: https://releases.k8s.io/HEAD/examples/mysql-cinder-pd/README.md' - title: Cinder - configMap: - allOf: - - $ref: '#/components/schemas/ConfigMapVolumeSource' - description: ConfigMap represents a configMap that should populate this - volume - title: Configmap - csi: - allOf: - - $ref: '#/components/schemas/CSIVolumeSource' - description: CSI (Container Storage Interface) represents storage that is - handled by an external CSI driver (Alpha feature). - title: Csi - downwardAPI: - allOf: - - $ref: '#/components/schemas/DownwardAPIVolumeSource' - description: DownwardAPI represents downward API about the pod that should - populate this volume - title: Downwardapi - emptyDir: - allOf: - - $ref: '#/components/schemas/EmptyDirVolumeSource' - description: 'EmptyDir represents a temporary directory that shares a pod''s - lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir' - title: Emptydir - fc: - allOf: - - $ref: '#/components/schemas/FCVolumeSource' - description: FC represents a Fibre Channel resource that is attached to - a kubelet's host machine and then exposed to the pod. - title: Fc - flexVolume: - allOf: - - $ref: '#/components/schemas/FlexVolumeSource' - description: FlexVolume represents a generic volume resource that is provisioned/attached - using an exec based plugin. - title: Flexvolume - flocker: - allOf: - - $ref: '#/components/schemas/FlockerVolumeSource' - description: Flocker represents a Flocker volume attached to a kubelet's - host machine. This depends on the Flocker control service being running - title: Flocker - gcePersistentDisk: - allOf: - - $ref: '#/components/schemas/GCEPersistentDiskVolumeSource' - description: 'GCEPersistentDisk represents a GCE Disk resource that is attached - to a kubelet''s host machine and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' - title: Gcepersistentdisk - gitRepo: - allOf: - - $ref: '#/components/schemas/GitRepoVolumeSource' - description: 'GitRepo represents a git repository at a particular revision. - DEPRECATED: GitRepo is deprecated. To provision a container with a git - repo, mount an EmptyDir into an InitContainer that clones the repo using - git, then mount the EmptyDir into the Pod''s container.' - title: Gitrepo - glusterfs: - allOf: - - $ref: '#/components/schemas/GlusterfsVolumeSource' - description: 'Glusterfs represents a Glusterfs mount on the host that shares - a pod''s lifetime. More info: https://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md' - title: Glusterfs - hostPath: - allOf: - - $ref: '#/components/schemas/HostPathVolumeSource' - description: 'HostPath represents a pre-existing file or directory on the - host machine that is directly exposed to the container. This is generally - used for system agents or other privileged things that are allowed to - see the host machine. Most containers will NOT need this. More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath' - title: Hostpath - iscsi: - allOf: - - $ref: '#/components/schemas/ISCSIVolumeSource' - description: 'ISCSI represents an ISCSI Disk resource that is attached to - a kubelet''s host machine and then exposed to the pod. More info: https://releases.k8s.io/HEAD/examples/volumes/iscsi/README.md' - title: Iscsi - name: - description: 'Volume''s name. Must be a DNS_LABEL and unique within the - pod. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' - title: Name - type: string - nfs: - allOf: - - $ref: '#/components/schemas/NFSVolumeSource' - description: 'NFS represents an NFS mount on the host that shares a pod''s - lifetime More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' - title: Nfs - persistentVolumeClaim: - allOf: - - $ref: '#/components/schemas/PersistentVolumeClaimVolumeSource' - description: 'PersistentVolumeClaimVolumeSource represents a reference to - a PersistentVolumeClaim in the same namespace. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' - title: Persistentvolumeclaim - photonPersistentDisk: - allOf: - - $ref: '#/components/schemas/PhotonPersistentDiskVolumeSource' - description: PhotonPersistentDisk represents a PhotonController persistent - disk attached and mounted on kubelets host machine - title: Photonpersistentdisk - portworxVolume: - allOf: - - $ref: '#/components/schemas/PortworxVolumeSource' - description: PortworxVolume represents a portworx volume attached and mounted - on kubelets host machine - title: Portworxvolume - projected: - allOf: - - $ref: '#/components/schemas/ProjectedVolumeSource' - description: Items for all in one resources secrets, configmaps, and downward - API - title: Projected - quobyte: - allOf: - - $ref: '#/components/schemas/QuobyteVolumeSource' - description: Quobyte represents a Quobyte mount on the host that shares - a pod's lifetime - title: Quobyte - rbd: - allOf: - - $ref: '#/components/schemas/RBDVolumeSource' - description: 'RBD represents a Rados Block Device mount on the host that - shares a pod''s lifetime. More info: https://releases.k8s.io/HEAD/examples/volumes/rbd/README.md' - title: Rbd - scaleIO: - allOf: - - $ref: '#/components/schemas/ScaleIOVolumeSource' - description: ScaleIO represents a ScaleIO persistent volume attached and - mounted on Kubernetes nodes. - title: Scaleio - secret: - allOf: - - $ref: '#/components/schemas/SecretVolumeSource' - description: 'Secret represents a secret that should populate this volume. - More info: https://kubernetes.io/docs/concepts/storage/volumes#secret' - title: Secret - storageos: - allOf: - - $ref: '#/components/schemas/StorageOSVolumeSource' - description: StorageOS represents a StorageOS volume attached and mounted - on Kubernetes nodes. - title: Storageos - vsphereVolume: - allOf: - - $ref: '#/components/schemas/VsphereVirtualDiskVolumeSource' - description: VsphereVolume represents a vSphere volume attached and mounted - on kubelets host machine - title: Vspherevolume - required: - - name - title: Volume - type: object - VolumeMount: - properties: - mountPath: - description: Path within the container at which the volume should be mounted. Must - not contain ':'. - title: Mountpath - type: string - mountPropagation: - description: mountPropagation determines how mounts are propagated from - the host to container and the other way around. When not set, MountPropagationNone - is used. This field is beta in 1.10. - title: Mountpropagation - type: string - name: - description: This must match the Name of a Volume. - title: Name - type: string - readOnly: - description: Mounted read-only if true, read-write otherwise (false or unspecified). - Defaults to false. - title: Readonly - type: boolean - subPath: - description: Path within the volume from which the container's volume should - be mounted. Defaults to "" (volume's root). - title: Subpath - type: string - subPathExpr: - description: Expanded path within the volume from which the container's - volume should be mounted. Behaves similarly to SubPath but environment - variable references $(VAR_NAME) are expanded using the container's environment. - Defaults to "" (volume's root). SubPathExpr and SubPath are mutually exclusive. - This field is beta in 1.15. - title: Subpathexpr - type: string - required: - - mountPath - - name - title: VolumeMount - type: object - VolumeProjection: - properties: - configMap: - allOf: - - $ref: '#/components/schemas/ConfigMapProjection' - description: information about the configMap data to project - title: Configmap - downwardAPI: - allOf: - - $ref: '#/components/schemas/DownwardAPIProjection' - description: information about the downwardAPI data to project - title: Downwardapi - secret: - allOf: - - $ref: '#/components/schemas/SecretProjection' - description: information about the secret data to project - title: Secret - serviceAccountToken: - allOf: - - $ref: '#/components/schemas/ServiceAccountTokenProjection' - description: information about the serviceAccountToken data to project - title: Serviceaccounttoken - title: VolumeProjection - type: object - VsphereVirtualDiskVolumeSource: - properties: - fsType: - description: Filesystem type to mount. Must be a filesystem type supported - by the host operating system. Ex. "ext4", "xfs", "ntfs". Implicitly inferred - to be "ext4" if unspecified. - title: Fstype - type: string - storagePolicyID: - description: Storage Policy Based Management (SPBM) profile ID associated - with the StoragePolicyName. - title: Storagepolicyid - type: string - storagePolicyName: - description: Storage Policy Based Management (SPBM) profile name. - title: Storagepolicyname - type: string - volumePath: - description: Path that identifies vSphere volume vmdk - title: Volumepath - type: string - required: - - volumePath - title: VsphereVirtualDiskVolumeSource - type: object - WeightedPodAffinityTerm: - properties: - podAffinityTerm: - allOf: - - $ref: '#/components/schemas/PodAffinityTerm' - description: Required. A pod affinity term, associated with the corresponding - weight. - title: Podaffinityterm - weight: - description: weight associated with matching the corresponding podAffinityTerm, - in the range 1-100. - title: Weight - type: integer - required: - - podAffinityTerm - - weight - title: WeightedPodAffinityTerm - type: object - WindowsSecurityContextOptions: - properties: - gmsaCredentialSpec: - description: GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) - inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName - field. This field is alpha-level and is only honored by servers that enable - the WindowsGMSA feature flag. - title: Gmsacredentialspec - type: string - gmsaCredentialSpecName: - description: GMSACredentialSpecName is the name of the GMSA credential spec - to use. This field is alpha-level and is only honored by servers that - enable the WindowsGMSA feature flag. - title: Gmsacredentialspecname - type: string - title: WindowsSecurityContextOptions - type: object - Container: - title: Container - required: - - name - type: object - properties: - args: - title: Args - type: array - items: - type: string - description: 'Arguments to the entrypoint. The docker image''s CMD is used - if this is not provided. Variable references $(VAR_NAME) are expanded - using the container''s environment. If a variable cannot be resolved, - the reference in the input string will be unchanged. The $(VAR_NAME) syntax - can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references - will never be expanded, regardless of whether the variable exists or not. - Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' - command: - title: Command - type: array - items: - type: string - description: 'Entrypoint array. Not executed within a shell. The docker - image''s ENTRYPOINT is used if this is not provided. Variable references - $(VAR_NAME) are expanded using the container''s environment. If a variable - cannot be resolved, the reference in the input string will be unchanged. - The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). - Escaped references will never be expanded, regardless of whether the variable - exists or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' - env: - $ref: "#/components/schemas/Env" - envFrom: - title: Envfrom - type: array - items: - "$ref": "#/components/schemas/EnvFromSource" - description: List of sources to populate environment variables in the container. - The keys defined within a source must be a C_IDENTIFIER. All invalid keys - will be reported as an event when the container is starting. When a key - exists in multiple sources, the value associated with the last source - will take precedence. Values defined by an Env with a duplicate key will - take precedence. Cannot be updated. - image: - title: Image - type: string - description: 'Docker image name. More info: https://kubernetes.io/docs/concepts/containers/images - This field is optional to allow higher level config management to default - or override container images in workload controllers like Deployments - and StatefulSets.' - imagePullPolicy: - title: Imagepullpolicy - type: string - description: 'Image pull policy. One of Always, Never, IfNotPresent. Defaults - to Always if :latest tag is specified, or IfNotPresent otherwise. Cannot - be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images' - lifecycle: - title: Lifecycle - allOf: - - "$ref": "#/components/schemas/Lifecycle" - description: Actions that the management system should take in response - to container lifecycle events. Cannot be updated. - livenessProbe: - title: Livenessprobe - allOf: - - "$ref": "#/components/schemas/Probe" - description: 'Periodic probe of container liveness. Container will be restarted - if the probe fails. Cannot be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' - name: - title: Name - type: string - description: Name of the container specified as a DNS_LABEL. Each container - in a pod must have a unique name (DNS_LABEL). Cannot be updated. - ports: - title: Ports - type: array - items: - "$ref": "#/components/schemas/ContainerPort" - description: List of ports to expose from the container. Exposing a port - here gives the system additional information about the network connections - a container uses, but is primarily informational. Not specifying a port - here DOES NOT prevent that port from being exposed. Any port which is - listening on the default "0.0.0.0" address inside a container will be - accessible from the network. Cannot be updated. - readinessProbe: - title: Readinessprobe - allOf: - - "$ref": "#/components/schemas/Probe" - description: 'Periodic probe of container service readiness. Container will - be removed from service endpoints if the probe fails. Cannot be updated. - More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' - resources: - title: Resources - allOf: - - "$ref": "#/components/schemas/ResourceRequirements" - description: 'Compute Resources required by this container. Cannot be updated. - More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' - securityContext: - title: Securitycontext - allOf: - - "$ref": "#/components/schemas/SecurityContext" - description: 'Security options the pod should run with. More info: https://kubernetes.io/docs/concepts/policy/security-context/ - More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/' - stdin: - title: Stdin - type: boolean - description: Whether this container should allocate a buffer for stdin in - the container runtime. If this is not set, reads from stdin in the container - will always result in EOF. Default is false. - stdinOnce: - title: Stdinonce - type: boolean - description: Whether the container runtime should close the stdin channel - after it has been opened by a single attach. When stdin is true the stdin - stream will remain open across multiple attach sessions. If stdinOnce - is set to true, stdin is opened on container start, is empty until the - first client attaches to stdin, and then remains open and accepts data - until the client disconnects, at which time stdin is closed and remains - closed until the container is restarted. If this flag is false, a container - processes that reads from stdin will never receive an EOF. Default is - false - terminationMessagePath: - title: Terminationmessagepath - type: string - description: 'Optional: Path at which the file to which the container''s - termination message will be written is mounted into the container''s filesystem. - Message written is intended to be brief final status, such as an assertion - failure message. Will be truncated by the node if greater than 4096 bytes. - The total message length across all containers will be limited to 12kb. - Defaults to /dev/termination-log. Cannot be updated.' - terminationMessagePolicy: - title: Terminationmessagepolicy - type: string - description: Indicate how the termination message should be populated. File - will use the contents of terminationMessagePath to populate the container - status message on both success and failure. FallbackToLogsOnError will - use the last chunk of container log output if the termination message - file is empty and the container exited with an error. The log output is - limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to File. - Cannot be updated. - tty: - title: Tty - type: boolean - description: Whether this container should allocate a TTY for itself, also - requires 'stdin' to be true. Default is false. - volumeDevices: - title: Volumedevices - type: array - items: - "$ref": "#/components/schemas/VolumeDevice" - description: volumeDevices is the list of block devices to be used by the - container. This is a beta feature. - volumeMounts: - title: Volumemounts - type: array - items: - "$ref": "#/components/schemas/VolumeMount" - description: Pod volumes to mount into the container's filesystem. Cannot - be updated. - workingDir: - title: Workingdir - type: string - description: Container's working directory. If not specified, the container - runtime's default will be used, which might be configured in the container - image. Cannot be updated. - EnvVar: - title: EnvVar - required: - - name - type: object - properties: - name: - title: Name - type: string - description: Name of the environment variable. Must be a C_IDENTIFIER. - value: - title: Value - type: string - description: 'Variable references $(VAR_NAME) are expanded using the previous - defined environment variables in the container and any service environment - variables. If a variable cannot be resolved, the reference in the input - string will be unchanged. The $(VAR_NAME) syntax can be escaped with a - double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, - regardless of whether the variable exists or not. Defaults to "".' - valueFrom: - title: Valuefrom - allOf: - - "$ref": "#/components/schemas/EnvVarSource" - description: Source for the environment variable's value. Cannot be used - if value is not empty. - EnvVarSource: - title: EnvVarSource - type: object - properties: - configMapKeyRef: - title: Configmapkeyref - allOf: - - "$ref": "#/components/schemas/ConfigMapKeySelector" - description: Selects a key of a ConfigMap. - fieldRef: - title: Fieldref - allOf: - - "$ref": "#/components/schemas/ObjectFieldSelector" - description: 'Selects a field of the pod: supports metadata.name, metadata.namespace, - metadata.labels, metadata.annotations, spec.nodeName, spec.serviceAccountName, - status.hostIP, status.podIP.' - resourceFieldRef: - title: Resourcefieldref - allOf: - - "$ref": "#/components/schemas/ResourceFieldSelector" - description: 'Selects a resource of the container: only resources limits - and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, - requests.memory and requests.ephemeral-storage) are currently supported.' - secretKeyRef: - title: Secretkeyref - allOf: - - "$ref": "#/components/schemas/SecretKeySelector" - description: Selects a key of a secret in the pod's namespace - Lifecycle: - title: Lifecycle - type: object - properties: - postStart: - title: Poststart - allOf: - - "$ref": "#/components/schemas/Handler" - description: 'PostStart is called immediately after a container is created. - If the handler fails, the container is terminated and restarted according - to its restart policy. Other management of the container blocks until - the hook completes. More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' - preStop: - title: Prestop - allOf: - - "$ref": "#/components/schemas/Handler" - description: 'PreStop is called immediately before a container is terminated - due to an API request or management event such as liveness probe failure, - preemption, resource contention, etc. The handler is not called if the - container crashes or exits. The reason for termination is passed to the - handler. The Pod''s termination grace period countdown begins before the - PreStop hooked is executed. Regardless of the outcome of the handler, - the container will eventually terminate within the Pod''s termination - grace period. Other management of the container blocks until the hook - completes or until the termination grace period is reached. More info: - https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' - Handler: - title: Handler - type: object - properties: - exec: - title: Exec - allOf: - - "$ref": "#/components/schemas/ExecAction" - description: One and only one of the following should be specified. Exec - specifies the action to take. - httpGet: - title: Httpget - allOf: - - "$ref": "#/components/schemas/HTTPGetAction" - description: HTTPGet specifies the http request to perform. - tcpSocket: - title: Tcpsocket - allOf: - - "$ref": "#/components/schemas/TCPSocketAction" - description: TCPSocket specifies an action involving a TCP port. TCP hooks - not yet supported - ExecAction: - title: ExecAction - type: object - properties: - command: - title: Command - type: array - items: - type: string - description: Command is the command line to execute inside the container, - the working directory for the command is root ('/') in the container's - filesystem. The command is simply exec'd, it is not run inside a shell, - so traditional shell instructions ('|', etc) won't work. To use a shell, - you need to explicitly call out to that shell. Exit status of 0 is treated - as live/healthy and non-zero is unhealthy. - HTTPGetAction: - title: HTTPGetAction - required: - - port - type: object - properties: - host: - title: Host - type: string - description: Host name to connect to, defaults to the pod IP. You probably - want to set "Host" in httpHeaders instead. - httpHeaders: - title: Httpheaders - type: array - items: - "$ref": "#/components/schemas/HTTPHeader" - description: Custom headers to set in the request. HTTP allows repeated - headers. - path: - title: Path - type: string - description: Path to access on the HTTP server. - port: - title: Port - allOf: - - "$ref": "#/components/schemas/IntOrString" - description: Name or number of the port to access on the container. Number - must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. - scheme: - title: Scheme - type: string - description: Scheme to use for connecting to the host. Defaults to HTTP. - HTTPHeader: - title: HTTPHeader - required: - - name - - value - type: object - properties: - name: - title: Name - type: string - description: The header field name - value: - title: Value - type: string - description: The header field value - HTTPValidationError: - title: HTTPValidationError - type: object - properties: - detail: - title: Detail - type: array - items: - "$ref": "#/components/schemas/ValidationError" - Probe: - title: Probe - type: object - properties: - exec: - title: Exec - allOf: - - "$ref": "#/components/schemas/ExecAction" - description: One and only one of the following should be specified. Exec - specifies the action to take. - failureThreshold: - title: Failurethreshold - type: integer - description: Minimum consecutive failures for the probe to be considered - failed after having succeeded. Defaults to 3. Minimum value is 1. - httpGet: - title: Httpget - allOf: - - "$ref": "#/components/schemas/HTTPGetAction" - description: HTTPGet specifies the http request to perform. - initialDelaySeconds: - title: Initialdelayseconds - type: integer - description: 'Number of seconds after the container has started before liveness - probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' - periodSeconds: - title: Periodseconds - type: integer - description: How often (in seconds) to perform the probe. Default to 10 - seconds. Minimum value is 1. - successThreshold: - title: Successthreshold - type: integer - description: Minimum consecutive successes for the probe to be considered - successful after having failed. Defaults to 1. Must be 1 for liveness. - Minimum value is 1. - tcpSocket: - title: Tcpsocket - allOf: - - "$ref": "#/components/schemas/TCPSocketAction" - description: TCPSocket specifies an action involving a TCP port. TCP hooks - not yet supported - timeoutSeconds: - title: Timeoutseconds - type: integer - description: 'Number of seconds after which the probe times out. Defaults - to 1 second. Minimum value is 1. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' - ResourceRequirements: - title: ResourceRequirements - type: object - properties: - limits: - title: Limits - type: object - additionalProperties: - "$ref": "#/components/schemas/Quantity" - description: 'Limits describes the maximum amount of compute resources allowed. - More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' - requests: - title: Requests - type: object - additionalProperties: - "$ref": "#/components/schemas/Quantity" - description: 'Requests describes the minimum amount of compute resources - required. If Requests is omitted for a container, it defaults to Limits - if that is explicitly specified, otherwise to an implementation-defined - value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' - ConfigMapKeySelector: - title: ConfigMapKeySelector - required: - - key - type: object - properties: - key: - title: Key - type: string - description: The key to select. - name: - title: Name - type: string - description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' - optional: - title: Optional - type: boolean - description: Specify whether the ConfigMap or its key must be defined - SecretKeySelector: - title: SecretKeySelector - required: - - key - type: object - properties: - key: - title: Key - type: string - description: The key of the secret to select from. Must be a valid secret - key. - name: - title: Name - type: string - description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' - optional: - title: Optional - type: boolean - description: Specify whether the Secret or its key must be defined - EnvFromSource: - title: EnvFromSource - type: object - properties: - configMapRef: - title: Configmapref - allOf: - - "$ref": "#/components/schemas/ConfigMapEnvSource" - description: The ConfigMap to select from - prefix: - title: Prefix - type: string - description: An optional identifier to prepend to each key in the ConfigMap. - Must be a C_IDENTIFIER. - secretRef: - title: Secretref - allOf: - - "$ref": "#/components/schemas/SecretEnvSource" - description: The Secret to select from - ConfigMapEnvSource: - title: ConfigMapEnvSource - type: object - properties: - name: - title: Name - type: string - description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' - optional: - title: Optional - type: boolean - description: Specify whether the ConfigMap must be defined - SecretEnvSource: - title: SecretEnvSource - type: object - properties: - name: - title: Name - type: string - description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' - optional: - title: Optional - type: boolean - description: Specify whether the Secret must be defined - IntOrString: - title: IntOrString - anyOf: - - type: string - - type: integer - TCPSocketAction: - title: TCPSocketAction - required: - - port - type: object - properties: - host: - title: Host - type: string - description: 'Optional: Host name to connect to, defaults to the pod IP.' - port: - title: Port - allOf: - - "$ref": "#/components/schemas/IntOrString" - description: Number or name of the port to access on the container. Number - must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. - ContainerPort: - title: ContainerPort - required: - - containerPort - type: object - properties: - containerPort: - title: Containerport - type: integer - description: Number of port to expose on the pod's IP address. This must - be a valid port number, 0 < x < 65536. - hostIP: - title: Hostip - type: string - description: What host IP to bind the external port to. - hostPort: - title: Hostport - type: integer - description: Number of port to expose on the host. If specified, this must - be a valid port number, 0 < x < 65536. If HostNetwork is specified, this - must match ContainerPort. Most containers do not need this. - name: - title: Name - type: string - description: If specified, this must be an IANA_SVC_NAME and unique within - the pod. Each named port in a pod must have a unique name. Name for the - port that can be referred to by services. - protocol: - title: Protocol - type: string - description: Protocol for port. Must be UDP, TCP, or SCTP. Defaults to "TCP". - VolumeDevice: - title: VolumeDevice - required: - - devicePath - - name - type: object - properties: - devicePath: - title: Devicepath - type: string - description: devicePath is the path inside of the container that the device - will be mapped to. - name: - title: Name - type: string - description: name must match the name of a persistentVolumeClaim in the - pod - ValidationError: - title: ValidationError - required: - - loc - - msg - - type - type: object - properties: - loc: - title: Location - type: array - items: - type: string - msg: - title: Message - type: string - type: - title: Error Type - type: string - TimeoutSpec: - title: TimeoutSpec - required: - - minutes - - policy - type: object - properties: - minutes: - title: Minutes - exclusiveMinimum: true - type: integer - policy: - $ref: '#/components/schemas/TimeoutPolicy' - TimeoutPolicy: - title: TimeoutPolicy - type: string - description: |- - A TimeoutPolicy is an action that needs to be run when a timeout reaches its end. - For now, only KILL is supported, but to make the API extensible we require the - policy to be set. Future policies may include behaviours like "NOTIFY" instead of - just killing the application. - enum: - - KILL diff --git a/api/services/ocean/spark/schemas/oceanSparkApplicationState.yaml b/api/services/ocean/spark/schemas/oceanSparkApplicationState.yaml deleted file mode 100644 index eddeececb..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkApplicationState.yaml +++ /dev/null @@ -1,32 +0,0 @@ -description: > - The current state of the Spark application. - - - Transient states: - - * `PENDING`: The spark-submit operation was successful. - The Spark driver pod is now pending: the k8s cluster must find room for it and download its Docker image. - - * `RUNNING`: The Spark driver pod starts running. It will now execute your application code. - - - Terminal states: - - * `COMPLETED`: The application completed successfully. - - * `COMPLETED_WITH_WARNINGS`: The application completed, but some non-fatal errors were found in the Spark Event Log. - - * `FAILED`: The application exited with a non-zero exit code. - - * `KILLED`: The application was manually killed before completion. - - * `TIMED_OUT`: The application was programmatically killed before completion because it was either pending or running longer than the timeout defined. -example: "RUNNING" -enum: -- PENDING -- RUNNING -- COMPLETED -- COMPLETED_WITH_WARNINGS -- FAILED -- KILLED -- TIMED_OUT diff --git a/api/services/ocean/spark/schemas/oceanSparkApplicationSubmissionSource.yaml b/api/services/ocean/spark/schemas/oceanSparkApplicationSubmissionSource.yaml deleted file mode 100644 index 0c05d34b2..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkApplicationSubmissionSource.yaml +++ /dev/null @@ -1,6 +0,0 @@ -description: The source that initiated the application submission -example: "public-api" -type: string -enum: -- public-api -- jupyter-enterprise-gateway diff --git a/api/services/ocean/spark/schemas/oceanSparkApplicationTrendBucket.yaml b/api/services/ocean/spark/schemas/oceanSparkApplicationTrendBucket.yaml deleted file mode 100644 index 6f34d9d50..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkApplicationTrendBucket.yaml +++ /dev/null @@ -1,41 +0,0 @@ -type: object -required: -- start -- end -- completed -- failed -- killed -- timed_out -description: > - The number of applications that ended in a given time range, grouped - by the terminal state they reached. -properties: - start: - type: string - format: date-time - description: > - Start of the time range - example: "2021-11-18T17:09:37+00:00" - end: - type: string - format: date-time - description: > - End of the time range - example: "2021-11-18T17:09:37+00:00" - completed: - type: number - description: > - The number of apps successfully completed between >= start and < end - failed: - type: number - description: > - The number of apps that failed between >= start and < end - killed: - type: number - description: > - The number of apps killed between >= start and - The number of apps that timed-out between >= start and < end - diff --git a/api/services/ocean/spark/schemas/oceanSparkApplicationType.yaml b/api/services/ocean/spark/schemas/oceanSparkApplicationType.yaml deleted file mode 100644 index d078303be..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkApplicationType.yaml +++ /dev/null @@ -1,9 +0,0 @@ -description: The type of Spark application -example: "notebook" -type: string -enum: -- batch -- notebook -- spark-connect -- hive-thrift-server -- spark-connect-and-hive-thrift-server diff --git a/api/services/ocean/spark/schemas/oceanSparkAttachVirtualNodeGroup.yaml b/api/services/ocean/spark/schemas/oceanSparkAttachVirtualNodeGroup.yaml deleted file mode 100644 index c5bb93f07..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkAttachVirtualNodeGroup.yaml +++ /dev/null @@ -1,16 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark Dedicated Virtual Node Group. -title: Ocean Spark VNG -required: - - id -allOf: -- type: object - description: > - The description of an Ocean Spark VNG - properties: - id: - type: string - example: ols-e3ea5883 - description: > - The Ocean Virtual Node Group Id \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkAttachVirtualNodeWrapper.yaml b/api/services/ocean/spark/schemas/oceanSparkAttachVirtualNodeWrapper.yaml deleted file mode 100644 index b569caf12..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkAttachVirtualNodeWrapper.yaml +++ /dev/null @@ -1,6 +0,0 @@ -type: object -required: - - virtualNodeGroup -properties: - virtualNodeGroup: - $ref: "./oceanSparkAttachVirtualNodeGroup.yaml" \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkCluster.yaml b/api/services/ocean/spark/schemas/oceanSparkCluster.yaml deleted file mode 100644 index 0350b84d0..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkCluster.yaml +++ /dev/null @@ -1,43 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark cluster. -title: Ocean Spark Cluster -required: - - controllerClusterId - - oceanClusterId -allOf: -- type: object - description: > - The description of an Ocean Spark cluster - properties: - id: - $ref: "oceanSparkClusterId.yaml" - controllerClusterId: - $ref: "controllerClusterId.yaml" - oceanClusterId: - $ref: "oceanClusterId.yaml" - state: - $ref: "oceanSparkClusterState.yaml" - config: - $ref: "oceanSparkClusterConfig.yaml" - region: - type: string - example: "us-west-2" - description: > - The region where the Ocean Spark cluster lives - k8sVersion: - type: string - description: > - The Kubernetes API of the Ocean Spark cluster - example: "v1.21.2-eks-0389ca3" - operatorVersion: - type: string - description: > - The version of the Ocean Spark operator running in the Ocean Spark cluster - example: "0.1.30" - operatorLastHeartbeat: - type: string - format: date-time - description: The last heartbeat received from the Ocean Spark operator running in the Ocean Spark cluster - example: "2021-11-20T13:29:30.000Z" -- $ref: "../../../../commons/schemas/createdAtUpdatedAt.yaml" diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterConfig.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterConfig.yaml deleted file mode 100644 index 7f70627e7..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterConfig.yaml +++ /dev/null @@ -1,16 +0,0 @@ -type: object -description: > - The object specifying the configuration of the Ocean Spark cluster. -properties: - ingress: - $ref: "oceanSparkClusterConfigIngress.yaml" - webhook: - $ref: "oceanSparkClusterConfigWebhook.yaml" - compute: - $ref: "oceanSparkClusterConfigCompute.yaml" - logCollection: - $ref: "oceanSparkClusterConfigLogCollection.yaml" - spark: - $ref: "oceanSparkClusterConfigSpark.yaml" - workspaces: - $ref: "oceanSparkClusterConfigWorkspaces.yaml" \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterConfigCompute.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterConfigCompute.yaml deleted file mode 100644 index 935b79239..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterConfigCompute.yaml +++ /dev/null @@ -1,17 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark Compute configuration. -properties: - useTaints: - type: boolean - default: true - example: false - description: | - Enable/Disable **ocean-spark** taints on the Ocean Spark VNGs. By default, Spark uses taints to prevent - non-Spark pods to run on Ocean Spark VNGs. - createVngs: - type: boolean - default: true - example: false - description: | - Enable/Disable creating **ocean-spark** VNGs \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngress.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngress.yaml deleted file mode 100644 index 800731ae7..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngress.yaml +++ /dev/null @@ -1,23 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark Ingress configuration. -properties: - serviceAnnotations: - type: object - additionalProperties: - type: string - description: | - DEPRECATED: Use `loadBalancer.serviceAnnotations` instead. - Annotations to add to the ingress load balancer service. This is useful to configure properties of the managed load balancer, - like the nature of the load balancer (e.g. ELB, NLB, ALB on AWS), - the security groups, or various timeouts. - example: - "service.beta.kubernetes.io/aws-load-balancer-security-groups": sg-03ba056e31f183482 - controller: - $ref: "oceanSparkClusterConfigIngressController.yaml" - loadBalancer: - $ref: "oceanSparkClusterConfigIngressLoadBalancer.yaml" - customEndpoint: - $ref: "oceanSparkClusterConfigIngressCustomEndpoint.yaml" - privateLink: - $ref: "oceanSparkClusterConfigIngressPrivateLink.yaml" diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngressController.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngressController.yaml deleted file mode 100644 index 801ac4f08..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngressController.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark Ingress Controller configuration. -properties: - managed: - type: boolean - default: true - example: true - description: | - Should an ingress controller managed by Ocean for Apache Spark be installed on the cluster. diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngressCustomEndpoint.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngressCustomEndpoint.yaml deleted file mode 100644 index 91cbad23b..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngressCustomEndpoint.yaml +++ /dev/null @@ -1,16 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark Ingress Custom Endpoint configuration. -properties: - enabled: - type: boolean - default: false - example: false - description: | - Should the Ocean for Apache Spark control plane address the cluster using a custom address. - Use this to specify the DNS address of an externally provisioned (unmanaged) load balancer. - address: - type: string - description: | - The address the Ocean for Apache Spark control plane will use when addressing the cluster. - example: "my-spark-cluster-nlb-8cbb8da7XXXXXXXX.elb.us-east-1.amazonaws.com" diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngressLoadBalancer.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngressLoadBalancer.yaml deleted file mode 100644 index 8ebe3dc32..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngressLoadBalancer.yaml +++ /dev/null @@ -1,28 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark Ingress Load Balancer configuration. -properties: - managed: - type: boolean - default: true - example: true - description: | - Should a load balancer managed by Ocean for Apache Spark be provisioned for the cluster. - Set this to false if you want to use an existing load balancer (only available on AWS). - targetGroupArn: - type: string - description: | - The ARN of a target group that the Ocean for Apache Spark ingress controller will be bound to. - Set this to use an existing load balancer with Ocean for Apache Spark. - Has no effect if using a managed load balancer. Only available on AWS. - example: "arn:aws:elasticloadbalancing:us-east-1:XXXXXXXXXXXX:targetgroup/my-spark-cluster-tg/XXXXXXXXXXXXXXXX" - serviceAnnotations: - type: object - additionalProperties: - type: string - description: | - Annotations to add to the ingress controller load balancer service. This is useful to configure properties - of the managed load balancer, like the nature of the load balancer (e.g. ELB, NLB, ALB on AWS), - the security groups, or various timeouts. - example: - "service.beta.kubernetes.io/aws-load-balancer-security-groups": sg-XXXXXXXXXXXXXXXXX diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngressPrivateLink.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngressPrivateLink.yaml deleted file mode 100644 index 470bb45fc..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterConfigIngressPrivateLink.yaml +++ /dev/null @@ -1,15 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark Ingress Private Link configuration. Only available on AWS. -properties: - enabled: - type: boolean - default: false - example: false - description: | - Should the Ocean for Apache Spark control plane address the cluster via an AWS Private Link. - vpcEndpointService: - type: string - description: | - The name of the VPC Endpoint Service the Ocean for Apache Spark control plane should bind to. - example: "com.amazonaws.vpce.eu-north-1.vpce-svc-XXXXXXXXXXXXXXXXX" diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterConfigLogCollection.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterConfigLogCollection.yaml deleted file mode 100644 index b39bed2ab..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterConfigLogCollection.yaml +++ /dev/null @@ -1,17 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark Log Collection configuration. -properties: - collectDriverLogs: - type: boolean - default: true - example: false - deprecated: true - description: | - Deprecated. Use `collectAppLogs` instead, effect is the same. - collectAppLogs: - type: boolean - default: true - description: | - Enable/Disable collecting driver and executor logs. When enabled, logs are stored by Flexera and can be downloaded from - the Spot console web interface. The logs are deleted after 30 days. diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterConfigSpark.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterConfigSpark.yaml deleted file mode 100644 index 87dd2e081..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterConfigSpark.yaml +++ /dev/null @@ -1,11 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark Spark configuration. -properties: - appNamespaces: - type: array - items: - type: string - example: [ "spark-apps", "spark-apps-extra-ns-1", "spark-apps-extra-ns-2" ] - description: | - List of Kubernetes namespaces that Spark applications can run in. The default namespace `spark-apps` is always included in the list. \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterConfigWebhook.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterConfigWebhook.yaml deleted file mode 100644 index 5d84ad7d9..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterConfigWebhook.yaml +++ /dev/null @@ -1,18 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark Webhook configuration. -properties: - useHostNetwork: - type: boolean - default: false - example: true - description: | - Enable/Disable host networking on the Spark Operator. Host networking can be useful when using custom CNI plugins - like Calico. - hostNetworkPorts: - type: array - items: - type: integer - example: 1234 - description: | - List of ports allowed to use on the host network - if empty default is **25554** \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterConfigWorkspaces.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterConfigWorkspaces.yaml deleted file mode 100644 index 82c766e24..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterConfigWorkspaces.yaml +++ /dev/null @@ -1,11 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark Workspaces configuration. -properties: - storageClassOverride: - allOf: - - $ref: "k8sName.yaml" - - example: my-custom-storage-class - description: | - The storage class to use for Ocean Spark workspaces. If not set, the cluster's default storage class will - be used. \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterCreate.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterCreate.yaml deleted file mode 100644 index bb096adca..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterCreate.yaml +++ /dev/null @@ -1,15 +0,0 @@ -type: object -description: > - The object specifying the configuration of the Ocean Spark cluster. -title: Ocean Spark Cluster -required: - - oceanClusterId -allOf: -- type: object - description: > - The description of an Ocean Spark cluster - properties: - oceanClusterId: - $ref: "oceanClusterId.yaml" - config: - $ref: "oceanSparkClusterConfig.yaml" diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterCreateWrapper.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterCreateWrapper.yaml deleted file mode 100644 index 9c05eed80..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterCreateWrapper.yaml +++ /dev/null @@ -1,6 +0,0 @@ -type: object -required: - - cluster -properties: - cluster: - $ref: "./oceanSparkClusterCreate.yaml" \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterId.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterId.yaml deleted file mode 100644 index 50d44667e..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterId.yaml +++ /dev/null @@ -1,4 +0,0 @@ -type: string -example: "osc-20fac3f1" -description: > - A unique identifier for the Ocean Spark cluster diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterSparkCoreHours.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterSparkCoreHours.yaml deleted file mode 100644 index 1d6fdf3b2..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterSparkCoreHours.yaml +++ /dev/null @@ -1,14 +0,0 @@ -type: object -required: -- id -- coreHours -description: > - Object that holds a pair of Ocean Spark Cluster ID and core hours that this cluster has consumed. -properties: - id: - $ref: "oceanSparkClusterId.yaml" - coreHours: - type: number - description: > - Number of core hours that the cluster has consumed. - example: 99 diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterState.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterState.yaml deleted file mode 100644 index 5c3477afb..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterState.yaml +++ /dev/null @@ -1,25 +0,0 @@ -description: > - The current state of the Ocean Spark cluster. - - * `PROGRESSING`: The cluster resources are being created. - - * `DELETING`: The cluster resources are being deleted. - - * `AVAILABLE`: The cluster is available. - - * `UNREACHABLE`: The cluster stopped sending heartbeat. This can be caused by the cluster going down or by a networking issue between the cluster and Spot's backend. - - * `DEGRADED`: One of the cluster components is unhealthy. Some features may not be available. - - * `FAILING`: A critical cluster component is unhealthy. - - * `UNKNOWN`: The cluster status API has an unexpected, internal error. -example: "AVAILABLE" -enum: - - AVAILABLE - - PROGRESSING - - DEGRADED - - FAILING - - UNKNOWN - - UNREACHABLE - - DELETING diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterStatistics.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterStatistics.yaml deleted file mode 100644 index bae6b83cc..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterStatistics.yaml +++ /dev/null @@ -1,12 +0,0 @@ -type: object -required: -- time -- pending -- running -description: > - Summary of a cluster's usage statistics. -properties: - id: - $ref: './oceanSparkClusterId.yaml' - metrics: - $ref: './oceanSparkApplicationMetrics.yaml' diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterUpdate.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterUpdate.yaml deleted file mode 100644 index d64ebcc15..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterUpdate.yaml +++ /dev/null @@ -1,13 +0,0 @@ -type: object -description: > - The object specifying the configuration of the Ocean Spark cluster. -title: Ocean Spark Cluster -allOf: -- type: object - description: > - The description of an Ocean Spark cluster - required: - - config - properties: - config: - $ref: "oceanSparkClusterConfig.yaml" diff --git a/api/services/ocean/spark/schemas/oceanSparkClusterUpdateWrapper.yaml b/api/services/ocean/spark/schemas/oceanSparkClusterUpdateWrapper.yaml deleted file mode 100644 index d6277d107..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkClusterUpdateWrapper.yaml +++ /dev/null @@ -1,6 +0,0 @@ -type: object -required: - - cluster -properties: - cluster: - $ref: "./oceanSparkClusterUpdate.yaml" \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkConfigTemplate.yaml b/api/services/ocean/spark/schemas/oceanSparkConfigTemplate.yaml deleted file mode 100644 index da00a4060..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkConfigTemplate.yaml +++ /dev/null @@ -1,25 +0,0 @@ -type: object -required: -- createdAt -- updatedAt -- id -- displayName -- clusterId -- config -allOf: -- $ref: "../../../../commons/schemas/createdAtUpdatedAt.yaml" -- type: object - description: > - The description of a configuration template - properties: - id: - $ref: "oceanSparkConfigTemplateId.yaml" - displayName: - $ref: "oceanSparkConfigTemplateDisplayName.yaml" - clusterId: - $ref: "oceanSparkClusterId.yaml" - controllerClusterId: - $ref: "controllerClusterId.yaml" - config: - $ref: "oceanSparkApplicationSpec.yaml" - diff --git a/api/services/ocean/spark/schemas/oceanSparkConfigTemplateDisplayName.yaml b/api/services/ocean/spark/schemas/oceanSparkConfigTemplateDisplayName.yaml deleted file mode 100644 index 11576bb39..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkConfigTemplateDisplayName.yaml +++ /dev/null @@ -1,5 +0,0 @@ -type: string -description: > - A non-unique free-form name for the config template used in the Spot console. - Defaults to the config template ID. -example: "Large application" diff --git a/api/services/ocean/spark/schemas/oceanSparkConfigTemplateId.yaml b/api/services/ocean/spark/schemas/oceanSparkConfigTemplateId.yaml deleted file mode 100644 index f895b9cf9..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkConfigTemplateId.yaml +++ /dev/null @@ -1,4 +0,0 @@ -allOf: -- $ref: "k8sName.yaml" -- description: "A unique identifier for a configuration template, set by the user." - example: "large-app" diff --git a/api/services/ocean/spark/schemas/oceanSparkDetailedSparkApplication.yaml b/api/services/ocean/spark/schemas/oceanSparkDetailedSparkApplication.yaml deleted file mode 100644 index 6284af1e6..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkDetailedSparkApplication.yaml +++ /dev/null @@ -1,94 +0,0 @@ -type: object -required: -- id -- displayName -- accountId -- organizationId -- userId -- clusterId -- controllerClusterId -- appState -- submissionSource -- createdAt -- updatedAt -allOf: -- $ref: "../../../../commons/schemas/createdAtUpdatedAt.yaml" -- type: object - description: > - The description of a Spark application - properties: - id: - $ref: "oceanSparkApplicationId.yaml" - displayName: - $ref: "oceanSparkApplicationDisplayName.yaml" - accountId: - $ref: "accountId.yaml" - organizationId: - $ref: "organizationId.yaml" - userId: - $ref: "userId.yaml" - clusterId: - $ref: "oceanSparkClusterId.yaml" - controllerClusterId: - $ref: "controllerClusterId.yaml" - appState: - $ref: "oceanSparkApplicationState.yaml" - submissionSource: - $ref: "oceanSparkApplicationSubmissionSource.yaml" - job: - type: object - description: > - The job to which the application belongs. - A job is collection of Spark applications, typically a workload run on a schedule. - required: - - id - - displayName - properties: - id: - $ref: oceanSparkJobId.yaml - displayName: - $ref: oceanSparkJobDisplayName.yaml - config: - $ref: "oceanSparkApplicationSpec.yaml" - startedAt: - type: string - format: date-time - description: > - The time when the Spark application started running (the app state becomes RUNNING). - This is not the time when the application launch was requested (this is `createdAt`). - example: "2021-11-18T17:09:37+00:00" - endedAt: - type: string - format: date-time - description: > - The time when the Spark application terminated. - example: "2021-11-18T17:09:37+00:00" - killRequestedAt: - $ref: "killRequestedAt.yaml" - - liveLog: - type: object - description: API pointers to endpoints serving logs and events related to the Spark application - properties: - logsStreamUrl: - type: string - format: uri - description: URL of the endpoint serving the live driver logs - example: /ocean/spark/cluster/osc-20fac3f1/app/daily-reporting-2021-08-18/logs/live - kubeEventsStreamUrl: - type: string - format: uri - description: URL of the endpoint serving a stream of Kubernetes events - example: /ocean/spark/cluster/osc-20fac3f1/app/daily-reporting-2021-08-18/kubeEvents/live - metrics: - $ref: "./oceanSparkApplicationMetrics.yaml" - sparkEventLog: - $ref: "sparkEventLog.yaml" - configurationTemplate: - $ref: "configurationTemplate.yaml" - cores: - $ref: "cores.yaml" - archiveLog: - $ref: "archiveLog.yaml" - executorLogs: - $ref: "archiveLog.yaml" \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkIssues.yaml b/api/services/ocean/spark/schemas/oceanSparkIssues.yaml deleted file mode 100644 index 93cee3905..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkIssues.yaml +++ /dev/null @@ -1,22 +0,0 @@ - description: An error that happened during a Spark application - type: object - properties: - errorType: - title: Errortype - type: string - severity: - title: Severity - description: The severity of the error, ERROR means the application failed. - enum: - - ERROR - - WARNING - type: string - abstract: - title: Abstract - type: string - stacktrace: - title: Stacktrace - type: string - required: - - errorType - - stacktrace diff --git a/api/services/ocean/spark/schemas/oceanSparkJob.yaml b/api/services/ocean/spark/schemas/oceanSparkJob.yaml deleted file mode 100644 index 53bbf1d19..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkJob.yaml +++ /dev/null @@ -1,36 +0,0 @@ -type: object -required: -- id -- displayName -- accountId -- organizationId -- clusterId -- controllerClusterId -- createdAt -- updatedAt -description: > - The description of an Ocean Spark job -properties: - id: - $ref: "oceanSparkJobId.yaml" - displayName: - $ref: "oceanSparkJobDisplayName.yaml" - controllerClusterId: - $ref: "controllerClusterId.yaml" - clusterId: - $ref: "oceanSparkClusterId.yaml" - organizationId: - $ref: "organizationId.yaml" - accountId: - $ref: "accountId.yaml" - - createdAt: - # I had to write createdAt and updatedAt manually and not use createdAtUpdatedAt.yaml. - # Otherwise the object is marked as "recursive". This looks like a redoc bug. - $ref: "createdAt.yaml" - updatedAt: - $ref: "updatedAt.yaml" - lastApp: - $ref: "oceanSparkApplication.yaml" - config: - $ref: "oceanSparkApplicationSpec.yaml" \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkJobDisplayName.yaml b/api/services/ocean/spark/schemas/oceanSparkJobDisplayName.yaml deleted file mode 100644 index ed208a441..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkJobDisplayName.yaml +++ /dev/null @@ -1,5 +0,0 @@ -type: string -description: > - A non-unique free-form name for the job used in the Spot console. - Defaults to the job ID. -example: "Daily Reporting" diff --git a/api/services/ocean/spark/schemas/oceanSparkJobId.yaml b/api/services/ocean/spark/schemas/oceanSparkJobId.yaml deleted file mode 100644 index a099af07c..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkJobId.yaml +++ /dev/null @@ -1,5 +0,0 @@ -allOf: -- $ref: "k8sName.yaml" -- description: > - A unique identifier for an Ocean Spark job. - example: "daily-reporting" diff --git a/api/services/ocean/spark/schemas/oceanSparkJobIntegerTrend.yaml b/api/services/ocean/spark/schemas/oceanSparkJobIntegerTrend.yaml deleted file mode 100644 index 6959e2dc7..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkJobIntegerTrend.yaml +++ /dev/null @@ -1,15 +0,0 @@ -type: object -required: -- last -- deltaLast10 -description: > - A description of the recent trend of this metric -properties: - last: - type: integer - example: 49 - description: The most recent value of this metric - deltaLast10: - type: number - example: 0.20 - description: The relative variation of the most recent value of this metric compared to the median of the previous 10 values diff --git a/api/services/ocean/spark/schemas/oceanSparkJobNumberTrend.yaml b/api/services/ocean/spark/schemas/oceanSparkJobNumberTrend.yaml deleted file mode 100644 index 5c26483f0..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkJobNumberTrend.yaml +++ /dev/null @@ -1,15 +0,0 @@ -type: object -required: -- last -- deltaLast10 -description: > - A description of the recent trend of this metric -properties: - last: - type: number - example: 0.8 - description: The most recent value of this metric - deltaLast10: - type: number - example: 0.2 - description: The relative variation of the most recent value of this metric compared to the median of the previous 10 values diff --git a/api/services/ocean/spark/schemas/oceanSparkJobTimedeltaTrend.yaml b/api/services/ocean/spark/schemas/oceanSparkJobTimedeltaTrend.yaml deleted file mode 100644 index 7b93a7beb..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkJobTimedeltaTrend.yaml +++ /dev/null @@ -1,15 +0,0 @@ -type: object -required: -- last -- deltaLast10 -description: > - A description of the recent trend of this metric -properties: - last: - type: integer - example: 3600 - description: The most recent value of this metric - deltaLast10: - type: number - example: 0.20 - description: The relative variation of the most recent value of this metric compared to the median of the previous 10 values diff --git a/api/services/ocean/spark/schemas/oceanSparkJobWithConfig.yaml b/api/services/ocean/spark/schemas/oceanSparkJobWithConfig.yaml deleted file mode 100644 index 02768d377..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkJobWithConfig.yaml +++ /dev/null @@ -1,40 +0,0 @@ -type: object -required: -- id -- displayName -- accountId -- organizationId -- clusterId -- controllerClusterId -- createdAt -- updatedAt -description: > - The description of an Ocean Spark job with config -properties: - id: - $ref: "oceanSparkJobId.yaml" - displayName: - $ref: "oceanSparkJobDisplayName.yaml" - organizationId: - $ref: "organizationId.yaml" - accountId: - $ref: "accountId.yaml" - controllerClusterId: - $ref: "controllerClusterId.yaml" - clusterId: - $ref: "oceanSparkClusterId.yaml" - createdAt: - # I had to write createdAt and updatedAt manually and not use createdAtUpdatedAt.yaml. - # Otherwise the object is marked as "recursive". This looks like a redoc bug. - $ref: "createdAt.yaml" - updatedAt: - $ref: "updatedAt.yaml" - lastApp: - $ref: "oceanSparkApplication.yaml" - history: - description: "The most recent Spark applications in this job." - type: array - items: - $ref: "oceanSparkApplication.yaml" - config: - $ref: "oceanSparkApplicationSpec.yaml" diff --git a/api/services/ocean/spark/schemas/oceanSparkJobWithConfigWithoutApps.yaml b/api/services/ocean/spark/schemas/oceanSparkJobWithConfigWithoutApps.yaml deleted file mode 100644 index 6cfebf03d..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkJobWithConfigWithoutApps.yaml +++ /dev/null @@ -1,31 +0,0 @@ -type: object -required: -- id -- displayName -- accountId -- organizationId -- clusterId -- controllerClusterId -- createdAt -- updatedAt -description: > - The description of an Ocean Spark job with config -properties: - internalId: - $ref: "internalId.yaml" - id: - $ref: "oceanSparkJobId.yaml" - displayName: - $ref: "oceanSparkJobDisplayName.yaml" - controllerClusterId: - $ref: "controllerClusterId.yaml" - clusterId: - $ref: "oceanSparkClusterId.yaml" - createdAt: - # I had to write createdAt and updatedAt manually and not use createdAtUpdatedAt.yaml. - # Otherwise the object is marked as "recursive". This looks like a redoc bug. - $ref: "createdAt.yaml" - updatedAt: - $ref: "updatedAt.yaml" - config: - $ref: "oceanSparkApplicationSpec.yaml" diff --git a/api/services/ocean/spark/schemas/oceanSparkKilledSparkApplication.yaml b/api/services/ocean/spark/schemas/oceanSparkKilledSparkApplication.yaml deleted file mode 100644 index 9420a8fc0..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkKilledSparkApplication.yaml +++ /dev/null @@ -1,70 +0,0 @@ -type: object -required: -- id -- displayName -- accountId -- organizationId -- userId -- clusterId -- controllerClusterId -- appState -- submissionSource -- createdAt -- updatedAt -allOf: -- $ref: "../../../../commons/schemas/createdAtUpdatedAt.yaml" -- type: object - description: > - The description of a Spark application - properties: - id: - $ref: "oceanSparkApplicationId.yaml" - displayName: - $ref: "oceanSparkApplicationDisplayName.yaml" - accountId: - $ref: "accountId.yaml" - organizationId: - $ref: "organizationId.yaml" - userId: - $ref: "userId.yaml" - clusterId: - $ref: "oceanSparkClusterId.yaml" - controllerClusterId: - $ref: "controllerClusterId.yaml" - appState: - $ref: "oceanSparkApplicationState.yaml" - submissionSource: - $ref: "oceanSparkApplicationSubmissionSource.yaml" - appType: - $ref: "oceanSparkApplicationType.yaml" - startedAt: - type: string - format: date-time - description: > - The time when the Spark application started running (the app state becomes RUNNING). - This is not the time when the application launch was requested (this is `createdAt`). - example: "2021-11-18T17:09:37+00:00" - endedAt: - type: string - format: date-time - description: > - The time when the Spark application terminated. - example: "2021-11-18T17:09:37+00:00" - killRequestedAt: - $ref: "killRequestedAt.yaml" - liveLog: - type: object - description: API pointers to endpoints serving logs and events related to the Spark application - properties: - logsStreamUrl: - type: string - format: uri - description: URL of the endpoint serving the live driver logs - example: /ocean/spark/cluster/osc-20fac3f1/app/daily-reporting-2021-08-18/logs/live - kubeEventsStreamUrl: - type: string - format: uri - description: URL of the endpoint serving a stream of Kubernetes events - example: /ocean/spark/cluster/osc-20fac3f1/app/daily-reporting-2021-08-18/kubeEvents/live - cores: - $ref: "cores.yaml" \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkSubmittedSparkApplication.yaml b/api/services/ocean/spark/schemas/oceanSparkSubmittedSparkApplication.yaml deleted file mode 100644 index 2c3fdea2b..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkSubmittedSparkApplication.yaml +++ /dev/null @@ -1,89 +0,0 @@ -type: object -required: -- id -- displayName -- accountId -- organizationId -- userId -- clusterId -- controllerClusterId -- appState -- submissionSource -- createdAt -- updatedAt -allOf: -- $ref: "../../../../commons/schemas/createdAtUpdatedAt.yaml" -- type: object - description: > - The description of a Spark application - properties: - id: - $ref: "oceanSparkApplicationId.yaml" - displayName: - $ref: "oceanSparkApplicationDisplayName.yaml" - accountId: - $ref: "accountId.yaml" - organizationId: - $ref: "organizationId.yaml" - userId: - $ref: "userId.yaml" - clusterId: - $ref: "oceanSparkClusterId.yaml" - controllerClusterId: - $ref: "controllerClusterId.yaml" - appState: - $ref: "oceanSparkApplicationState.yaml" - submissionSource: - $ref: "oceanSparkApplicationSubmissionSource.yaml" - appType: - $ref: "oceanSparkApplicationType.yaml" - job: - type: object - description: > - The job to which the application belongs. - A job is collection of Spark applications, typically a workload run on a schedule. - required: - - id - - displayName - properties: - id: - $ref: oceanSparkJobId.yaml - displayName: - $ref: oceanSparkJobDisplayName.yaml - config: - $ref: "oceanSparkApplicationSpec.yaml" - startedAt: - type: string - format: date-time - description: > - The time when the Spark application started running (the app state becomes RUNNING). - This is not the time when the application launch was requested (this is `createdAt`). - example: "2021-11-18T17:09:37+00:00" - endedAt: - type: string - format: date-time - description: > - The time when the Spark application terminated. - example: "2021-11-18T17:09:37+00:00" - killRequestedAt: - $ref: "killRequestedAt.yaml" - liveLog: - type: object - description: API pointers to endpoints serving logs and events related to the Spark application - properties: - logsStreamUrl: - type: string - format: uri - description: URL of the endpoint serving the live driver logs - example: /ocean/spark/cluster/osc-20fac3f1/app/daily-reporting-2021-08-18/logs/live - kubeEventsStreamUrl: - type: string - format: uri - description: URL of the endpoint serving a stream of Kubernetes events - example: /ocean/spark/cluster/osc-20fac3f1/app/daily-reporting-2021-08-18/kubeEvents/live - sparkEventLog: - $ref: "sparkEventLog.yaml" - configurationTemplate: - $ref: "configurationTemplate.yaml" - cores: - $ref: "cores.yaml" \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkVirtualNodeGroup.yaml b/api/services/ocean/spark/schemas/oceanSparkVirtualNodeGroup.yaml deleted file mode 100644 index a82b95ae7..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkVirtualNodeGroup.yaml +++ /dev/null @@ -1,22 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark Dedicated Virtual Node Group. -title: Ocean Spark VNG -required: - - oceanClusterId - - oceanSparkClusterId - - vngId -allOf: - - type: object - description: > - The description of an Ocean Spark VNG - properties: - oceanClusterId: - $ref: "oceanClusterId.yaml" - oceanSparkClusterId: - $ref: "oceanSparkClusterId.yaml" - vngId: - type: string - example: "ols-e3ea5883" - description: > - A unique identifier for the Ocean Virtual Node Group \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkWorkspace.yaml b/api/services/ocean/spark/schemas/oceanSparkWorkspace.yaml deleted file mode 100644 index 0cf83c58f..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkWorkspace.yaml +++ /dev/null @@ -1,41 +0,0 @@ -type: object -description: > - The object specifying the Ocean Spark workspace. -title: Ocean Spark Workspace -required: - - id - - name - - ownerUserId - - state - - createdAt - - url -allOf: -- type: object - description: > - The description of an Ocean Spark workspace - properties: - id: - $ref: "oceanSparkWorkspaceId.yaml" - name: - type: string - example: "cosmos" - description: > - The name of the Ocean Spark workspace - ownerUserId: - type: string - description: > - The owner user id of the Ocean Spark workspace - example: "163018" - state: - $ref: "oceanSparkWorkspaceState.yaml" - createdAt: - type: string - format: date-time - description: The creation date of the Ocean Spark workspace - example: "2021-11-20T13:29:30.000Z" - url: - type: string - description: > - The URL of the Ocean Spark workspace - example: "/api/ocean/spark/cluster/osc-93f1ae79/workspace/wksp-163018-b1ff5921/proxy" -- $ref: "../../../../commons/schemas/createdAtUpdatedAt.yaml" diff --git a/api/services/ocean/spark/schemas/oceanSparkWorkspaceCreate.yaml b/api/services/ocean/spark/schemas/oceanSparkWorkspaceCreate.yaml deleted file mode 100644 index ee69decef..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkWorkspaceCreate.yaml +++ /dev/null @@ -1,8 +0,0 @@ -type: object -description: > - The object specifying the configuration of the Ocean Spark workspace. -title: Ocean Spark Workspace -allOf: -- type: object - description: > - The description of an Ocean Spark workspace \ No newline at end of file diff --git a/api/services/ocean/spark/schemas/oceanSparkWorkspaceId.yaml b/api/services/ocean/spark/schemas/oceanSparkWorkspaceId.yaml deleted file mode 100644 index ec032550c..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkWorkspaceId.yaml +++ /dev/null @@ -1,4 +0,0 @@ -type: string -example: "wksp-170654-1bc9c7a0" -description: > - A unique identifier for the Ocean Spark workspace diff --git a/api/services/ocean/spark/schemas/oceanSparkWorkspaceStart.yaml b/api/services/ocean/spark/schemas/oceanSparkWorkspaceStart.yaml deleted file mode 100644 index 565ed38cb..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkWorkspaceStart.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -description: > - The object specifying the configuration of the Ocean Spark workspace. -title: Ocean Spark workspace -allOf: -- type: object - description: > - The description of an Ocean Spark workspace - required: - - oceanWorkspaceId diff --git a/api/services/ocean/spark/schemas/oceanSparkWorkspaceState.yaml b/api/services/ocean/spark/schemas/oceanSparkWorkspaceState.yaml deleted file mode 100644 index 5e5777576..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkWorkspaceState.yaml +++ /dev/null @@ -1,19 +0,0 @@ -description: > - The current state of the Ocean Spark workspace. - - * `WORKSPACE_STATE_RUNNING`: The workspace is RUNNING. - - * `WORKSPACE_STATE_STARTING`: The workspace is STARTING. - - * `WORKSPACE_STATE_STOPPING`: The workspace is STOPPING. - - * `WORKSPACE_STATE_STOPPED`: The workspace has STOPPED. - - * `WORKSPACE_STATE_UNSPECIFIED`: The workspace status API has an unexpected, internal error. -example: "WORKSPACE_STATE_RUNNING" -enum: - - WORKSPACE_STATE_RUNNING - - WORKSPACE_STATE_STARTING - - WORKSPACE_STATE_STOPPING - - WORKSPACE_STATE_STOPPED - - WORKSPACE_STATE_UNSPECIFIED diff --git a/api/services/ocean/spark/schemas/oceanSparkWorkspaceStop.yaml b/api/services/ocean/spark/schemas/oceanSparkWorkspaceStop.yaml deleted file mode 100644 index 565ed38cb..000000000 --- a/api/services/ocean/spark/schemas/oceanSparkWorkspaceStop.yaml +++ /dev/null @@ -1,10 +0,0 @@ -type: object -description: > - The object specifying the configuration of the Ocean Spark workspace. -title: Ocean Spark workspace -allOf: -- type: object - description: > - The description of an Ocean Spark workspace - required: - - oceanWorkspaceId diff --git a/api/services/ocean/spark/schemas/organizationId.yaml b/api/services/ocean/spark/schemas/organizationId.yaml deleted file mode 100644 index f07b505fc..000000000 --- a/api/services/ocean/spark/schemas/organizationId.yaml +++ /dev/null @@ -1,3 +0,0 @@ -type: integer -example: 606012341234 -description: The ID of the organization diff --git a/api/services/ocean/spark/schemas/paginatedList.yaml b/api/services/ocean/spark/schemas/paginatedList.yaml deleted file mode 100644 index aec94f045..000000000 --- a/api/services/ocean/spark/schemas/paginatedList.yaml +++ /dev/null @@ -1,19 +0,0 @@ -type: object -required: - - page - - total -properties: - total: - type: integer - description: The total number of items in the collection - example: 3256 - page: - type: array - items: - type: object - description: The items of the current page - example: [] - after: - $ref: "after.yaml" - before: - $ref: "before.yaml" diff --git a/api/services/ocean/spark/schemas/sparkEventLog.yaml b/api/services/ocean/spark/schemas/sparkEventLog.yaml deleted file mode 100644 index 7c4dd8c54..000000000 --- a/api/services/ocean/spark/schemas/sparkEventLog.yaml +++ /dev/null @@ -1,19 +0,0 @@ -type: object -properties: - createdAt: - type: string - format: date-time - description: > - The time when the Spark event log was created. - example: "2019-08-24T14:15:22Z" - updatedAt: - type: string - format: date-time - description: > - The time when the Spark event log was last updated. - example: "2019-08-24T14:15:22Z" - availability: - type: string - description: > - The availability of the Spark event log. - example: "COMPLETE" diff --git a/api/services/ocean/spark/schemas/updatedAt.yaml b/api/services/ocean/spark/schemas/updatedAt.yaml deleted file mode 100644 index 373aa81e7..000000000 --- a/api/services/ocean/spark/schemas/updatedAt.yaml +++ /dev/null @@ -1,4 +0,0 @@ -type: string -format: date-time -example: "2018-10-10T10:50:29.000+0000" -description: "The time when the entity was last updated" diff --git a/api/services/ocean/spark/schemas/userId.yaml b/api/services/ocean/spark/schemas/userId.yaml deleted file mode 100644 index d77950298..000000000 --- a/api/services/ocean/spark/schemas/userId.yaml +++ /dev/null @@ -1,3 +0,0 @@ -type: integer -description: The identifier of the user who created the application -example: 59438 diff --git a/api/spot.yaml b/api/spot.yaml index ced9b16b7..6f00edac0 100644 --- a/api/spot.yaml +++ b/api/spot.yaml @@ -116,16 +116,6 @@ tags: If you wish to learn more about it reach out to our support team. - - name: Ocean Spark - description: | - Ocean for Apache Spark is a managed cloud-native Spark platform that can be deployed in your cloud account. - - Running on top of Ocean, Spot’s serverless infrastructure engine for containers, Ocean Spark makes it easy for your data teams to be successful with Apache Spark on Kubernetes, without dealing with the complexity of managing servers. - - externalDocs: - description: Ocean Spark - url: https://docs.flexera.com/spot/ocean-spark/ - - name: EMR Scaler description: AWS EMR Scaler externalDocs: @@ -887,58 +877,6 @@ paths: $ref: services/ocean/cd/paths/workloadRollback.yaml /ocean/cd/workload/{workloadName}/namespace/{namespace}/graph: $ref: services/ocean/cd/paths/workloadGraph.yaml - /ocean/spark/cluster: - $ref: services/ocean/spark/paths/clusters.yaml - /ocean/spark/cluster/{clusterId}: - $ref: services/ocean/spark/paths/cluster.yaml - /ocean/spark/cluster/sparkCoreHours: - $ref: services/ocean/spark/paths/clusterSparkCoreHours.yaml - /ocean/spark/cluster/{clusterId}/appCompletionTrend: - $ref: services/ocean/spark/paths/clusterAppCompletionTrend.yaml - /ocean/spark/cluster/{clusterId}/appLoadHistory: - $ref: services/ocean/spark/paths/clusterAppLoadHistory.yaml - /ocean/spark/cluster/{clusterId}/statistics: - $ref: services/ocean/spark/paths/clusterStatistics.yaml - /ocean/spark/app: - $ref: services/ocean/spark/paths/applications.yaml - /ocean/spark/cluster/{clusterId}/app: - $ref: services/ocean/spark/paths/clusterApplications.yaml - /ocean/spark/cluster/{clusterId}/app/{applicationId}: - $ref: services/ocean/spark/paths/clusterApplication.yaml - /ocean/spark/cluster/{clusterId}/app/{applicationId}/issues: - $ref: services/ocean/spark/paths/clusterApplicationIssues.yaml - /ocean/spark/cluster/{clusterId}/app/{applicationId}/log/live: - $ref: services/ocean/spark/paths/clusterApplicationLogsLive.yaml - /ocean/spark/cluster/{clusterId}/app/{applicationId}/log/archive: - $ref: services/ocean/spark/paths/clusterApplicationLogsArchive.yaml - /ocean/spark/cluster/{clusterId}/app/{applicationId}/executor-log/archive: - $ref: services/ocean/spark/paths/clusterApplicationExecutorLogsArchive.yaml - /ocean/spark/cluster/{clusterId}/app/{applicationId}/kubeEvent/live: - $ref: services/ocean/spark/paths/clusterApplicationKubeEventsLive.yaml - /ocean/spark/configTemplate: - $ref: services/ocean/spark/paths/configTemplates.yaml - /ocean/spark/cluster/{clusterId}/configTemplate: - $ref: services/ocean/spark/paths/clusterConfigTemplates.yaml - /ocean/spark/cluster/{clusterId}/configTemplate/{configTemplateId}: - $ref: services/ocean/spark/paths/clusterConfigTemplate.yaml - /ocean/spark/job: - $ref: services/ocean/spark/paths/jobs.yaml - /ocean/spark/cluster/{clusterId}/job: - $ref: services/ocean/spark/paths/clusterJobs.yaml - /ocean/spark/cluster/{clusterId}/job/{jobId}: - $ref: services/ocean/spark/paths/clusterJob.yaml - /ocean/spark/cluster/{clusterId}/job/{jobId}/config: - $ref: services/ocean/spark/paths/jobConfig.yaml - /ocean/spark/cluster/{clusterId}/virtualNodeGroup: - $ref: services/ocean/spark/paths/virtualNodeGroup.yaml - /ocean/spark/cluster/{clusterId}/workspace: - $ref: services/ocean/spark/paths/workspaces.yaml - /ocean/spark/cluster/{clusterId}/workspace/{workspaceId}: - $ref: services/ocean/spark/paths/workspace.yaml - /ocean/spark/cluster/{clusterId}/workspace/{workspaceId}/start: - $ref: services/ocean/spark/paths/workspaceStart.yaml - /ocean/spark/cluster/{clusterId}/workspace/{workspaceId}/stop: - $ref: services/ocean/spark/paths/workspaceStop.yaml /insights/savings: $ref: services/insights/paths/organizationSavings.yaml /connect/executions/formatted_execution/{exe_id}: @@ -1069,4 +1007,3 @@ paths: /ccoUsageExporter/flexeraIntegration: $ref: services/ccoUsageExporter/flexeraIntegration/paths/flexeraIntegration.yaml -