You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

pcm.api 30 kB

3 years ago
3 years ago
3 years ago
3 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964
  1. syntax = "v1"
  2. import (
  3. "core/pcm-core.api"
  4. "hpc/pcm-hpc.api"
  5. "ai/pcm-ai.api"
  6. "storage/pcm-storage.api"
  7. "vm/pcm-vm.api"
  8. "cloud/pcm-cloud.api"
  9. "storelink/pcm-storelink.api"
  10. "schedule/pcm-schedule.api"
  11. "participant/pcm-participant.api"
  12. "monitoring/pcm-monitoring.api"
  13. )
  14. info(
  15. title: "pcm api service"
  16. desc: "type desc here"
  17. author: "type author here"
  18. email: "type email here"
  19. version: "type version here"
  20. )
  21. //core端接口
  22. @server(
  23. prefix: pcm/v1
  24. group: core
  25. )
  26. service pcm {
  27. @doc "查询P端服务列表"
  28. @handler participantListHandler
  29. get /core/participantList returns (participantListResp)
  30. @doc "yaml提交任务"
  31. @handler scheduleTaskByYamlHandler
  32. post /core/scheduleTaskByYaml (scheduleTaskByYamlReq)
  33. @doc "提交任务"
  34. @handler commitTaskHandler
  35. post /core/commitTask (commitTaskReq)
  36. @doc "提交虚拟机任务"
  37. @handler commitVmTaskHandler
  38. post /core/commitVmTask (commitVmTaskReq) returns (commitVmTaskResp)
  39. @doc "提交虚拟机任务临时"
  40. @handler commitVmTaskTempHandler
  41. post /core/commitVmTaskTemp (commitVmTaskReq) returns (commitVmTaskResp)
  42. @doc "删除任务"
  43. @handler deleteTaskHandler
  44. delete /core/deleteTask/:id (deleteTaskReq)
  45. @doc "查询任务列表"
  46. @handler TaskListHandler
  47. get /core/taskList (taskListReq) returns (taskListResp)
  48. @doc "查询任务详情"
  49. @handler TaskDetailHandler
  50. get /core/taskDetail/:taskId (taskDetailReq) returns (taskDetailResp)
  51. @doc "任务概览"
  52. @handler JobTotalHandler
  53. get /core/jobTotal returns (jobTotalResp)
  54. @doc "数据中心概览"
  55. @handler listCenterHandler
  56. get /core/listCenter returns (listCenterResp)
  57. @doc "查询集群列表"
  58. @handler listClusterHandler
  59. get /core/listCluster/:centerId (listClusterReq) returns (listClusterResp)
  60. @doc "获取region"
  61. @handler getRegionHandler
  62. get /core/getRegion returns (getRegionResp)
  63. @doc "获取region列表"
  64. @handler listRegionHandler
  65. get /core/listRegion returns (listRegionResp)
  66. @doc "查询算力"
  67. @handler getComputingPowerHandler
  68. get /core/getComputingPower returns (cpResp)
  69. @doc "查询通用信息"
  70. @handler getGeneralInfoHandler
  71. get /core/getGeneralInfo returns (GiResp)
  72. @doc "查询控制面板配置信息"
  73. @handler getResourcePanelConfigHandler
  74. get /core/getResourcePanelConfigHandler returns (ResourcePanelConfigResp)
  75. @doc "设置控制面板配置信息"
  76. @handler putResourcePanelConfigHandler
  77. put /core/resourcePanelConfigHandler (ResourcePanelConfigReq)
  78. @doc "获取算力统计信息"
  79. @handler getComputilityStatisticsHandler
  80. get /core/getComputilityStatistics returns (ComputilityStatisticsResp)
  81. @doc "获取节点资产"
  82. @handler nodeAssetsHandler
  83. get /core/assets returns (NodeAssetsResp)
  84. @doc "Center Resources top3"
  85. @handler centerResourcesHandler
  86. get /core/centerResources returns (centerResourcesResp)
  87. @doc "Synchronize Cluster Load Information"
  88. @handler syncClusterLoadHandler
  89. post /core/syncClusterLoad (syncClusterLoadReq)
  90. @doc "metrics"
  91. @handler metricsHandler
  92. get /core/metrics
  93. @doc "provided to participant to pull task info from core"
  94. @handler pullTaskInfoHandler
  95. get /core/pullTaskInfo (PullTaskInfoReq) returns (PullTaskInfoResp)
  96. @doc "provided to participant to push task info to core"
  97. @handler pushTaskInfoHandler
  98. post /core/pushTaskInfo (PushTaskInfoReq) returns (PushTaskInfoResp)
  99. @doc "paging queries the task list"
  100. @handler pageListTaskHandler
  101. get /core/task/list (pageTaskReq) returns(PageResult)
  102. }
  103. //hpc二级接口
  104. @server(
  105. prefix: pcm/v1
  106. group: hpc
  107. )
  108. service pcm {
  109. @doc "提交超算任务"
  110. @handler commitHpcTaskHandler
  111. post /hpc/commitHpcTask (commitHpcTaskReq) returns (commitHpcTaskResp)
  112. @doc "超算总览"
  113. @handler overViewHandler
  114. get /hpc/overview (hpcOverViewReq) returns (hpcOverViewResp)
  115. @doc "超算适配器列表"
  116. @handler adapterSummaryHandler
  117. get /hpc/adapterSummary (hpcAdapterSummaryReq) returns (hpcAdapterSummaryResp)
  118. @doc "超算查询任务列表"
  119. @handler jobHandler
  120. get /hpc/job (hpcJobReq) returns (hpcJobResp)
  121. @doc "超算查询资产列表"
  122. @handler queueAssetsHandler
  123. get /hpc/queueAssets returns (QueueAssetsResp)
  124. }
  125. //cloud二级接口
  126. @server(
  127. prefix: pcm/v1
  128. group: cloud
  129. )
  130. service pcm {
  131. @doc "云算任务列表"
  132. @handler cloudListHandler
  133. get /task/list returns (cloudListResp)
  134. @doc "yaml删除"
  135. @handler deleteYamlHandler
  136. get /cloud/DeleteYaml (ApplyReq) returns (DeleteResp)
  137. @doc "控制器监控"
  138. @handler controllerMetricsHandler
  139. get /cloud/controller/Metrics (ControllerMetricsReq) returns (ControllerMetricsResp)
  140. @doc "数算集群注册"
  141. @handler registerClusterHandler
  142. post /cloud/registerCluster (RegisterClusterReq) returns (CloudResp)
  143. @doc "数算集群删除"
  144. @handler deleteClusterHandler
  145. post /cloud/deleteCluster (deleteClusterReq) returns (CloudResp)
  146. @doc "触发租户更新"
  147. @handler noticeTenantHandler
  148. get /cloud/noticeTenant returns (CloudResp)
  149. @doc "租户更新"
  150. @handler updateTenantHandler
  151. post /cloud/updateTenant (UpdateTenantReq) returns (CloudResp)
  152. @doc "Obtain cluster list information according to adapterId"
  153. @handler getClusterListHandler
  154. get /core/clusterList (getClusterListReq) returns (getClusterListResp)
  155. }
  156. //智算二级接口
  157. @server(
  158. prefix: pcm/v1
  159. group: ai
  160. )
  161. service pcm {
  162. @doc "查询数据集列表"
  163. @handler listDataSetHandler
  164. get /ai/listDataSet/:projectId (DataSetReq) returns (DataSetResp)
  165. @doc "创建数据集"
  166. @handler CreateDataSetHandler
  167. post /ai/createDataSet/:projectId (CreateDataSetReq) returns (CreateDataSetResp)
  168. @doc "删除数据集"
  169. @handler DeleteDataSetHandler
  170. delete /ai/deleteDataSet/:projectId/:datasetId (DeleteDataSetReq) returns (DeleteDataSetResp)
  171. @doc "创建导入任务"
  172. @handler CreateTaskHandler
  173. post /ai/CreateTask/:projectId/:datasetId (ImportTaskDataReq) returns (ImportTaskDataResp)
  174. @doc "查询数据集导入任务列表"
  175. @handler ListImportHandler
  176. get /ai/ListImport/:projectId/:datasetId (ListImportTasksReq) returns (ListImportTasksResp)
  177. @doc "查询训练作业列表"
  178. @handler GetListTrainingJobsHandler
  179. get /ai/GetListTrainingJobs/:projectId (ListTrainingJobsreq) returns (ListTrainingJobsresp)
  180. @doc "删除训练作业"
  181. @handler DeleteTrainingJobHandler
  182. delete /ai/DeleteTrainingJob/:projectId/:trainingJobId (DeleteTrainingJobReq) returns (DeleteTrainingJobResp)
  183. @doc "创建算法"
  184. @handler CreateAlgorithmHandler
  185. post /ai/CreateAlgorithm/:projectId (CreateAlgorithmReq) returns (CreateAlgorithmResp)
  186. @doc "查询创建算法列表"
  187. @handler ListAlgorithms
  188. get /ai/ListAlgorithms/:projectId (ListAlgorithmsReq) returns (ListAlgorithmsResp)
  189. @doc "删除算法"
  190. @handler DeleteAlgorithm
  191. delete /ai/DeleteAlgorithm/:projectId/:algorithmId (DeleteAlgorithmReq) returns (DeleteAlgorithmResp)
  192. @doc "创建训练作业"
  193. @handler CreateTrainingJobHandler
  194. post /ai/CreateTrainingJob/:projectId (CreateTrainingJobReq) returns (CreateTrainingJobResp)
  195. @doc "展示算法详情"
  196. @handler ShowAlgorithmByUuid
  197. get /ai/ShowAlgorithmByUuid/:projectId/:algorithmId (ShowAlgorithmByUuidReq) returns (ShowAlgorithmByUuidResp)
  198. @doc "创建导出任务"
  199. @handler CreateExportTaskHandler
  200. post /ai/CreateExportTask/:projectId/:datasetId (CreateExportTaskReq) returns (ExportTaskDataResp)
  201. @doc "获取导出任务数据集"
  202. @handler GetExportTasksOfDatasetHandler
  203. get /ai/GetExportTasksOfDataset/:projectId/:datasetId (GetExportTasksOfDatasetReq) returns (GetExportTasksOfDatasetResp)
  204. @doc "获取导出任务数据集状态"
  205. @handler GetExportTaskStatusOfDatasetHandler
  206. get /ai/GetExportTaskStatusOfDataset/:projectId/:resourceId/:taskId (GetExportTaskStatusOfDatasetReq) returns (GetExportTaskStatusOfDatasetResp)
  207. @doc "创建处理任务"
  208. @handler CreateProcessorTaskHandler
  209. post /ai/CreateProcessorTask (CreateProcessorTaskReq) returns (CreateProcessorTaskResp)
  210. @doc "创建服务"
  211. @handler CreateServiceHandler
  212. post /ai/CreateService/:projectId (CreateServiceReq) returns (CreateServiceResp)
  213. @doc "展示服务"
  214. @handler ListServicesHandler
  215. get /ai/ListServices/:projectId (ListServicesReq) returns (ListServicesResp)
  216. @doc "展示服务详情"
  217. @handler ShowServiceHandler
  218. get /ai/ShowService/:projectId/:serviceId (ShowServiceReq) returns (ShowServiceResp)
  219. @doc "删除服务"
  220. @handler DeleteServiceHandler
  221. delete /ai/DeleteService/:projectId/:serviceId (DeleteServiceReq) returns (DeleteServiceResp)
  222. @doc "查询专属资源池列表"
  223. @handler ListClustersHandler
  224. get /ai/ListClusters (ListClustersReq) returns (ListClustersResp)
  225. /******************Notebook Method start*************************/
  226. @doc "查询notebook列表"
  227. @handler listNotebookHandler
  228. get /ai/listNotebook (ListNotebookReq) returns (ListNotebookResp)
  229. @doc "创建notebook"
  230. @handler createNotebookHandler
  231. post /ai/createNotebook (CreateNotebookReq) returns (CreateNotebookResp)
  232. @doc "启动notebook"
  233. @handler startNotebookHandler
  234. post /ai/startNotebook (StartNotebookReq) returns (StartNotebookResp)
  235. @doc "停止notebook"
  236. @handler stopNotebookHandler
  237. post /ai/stopNotebook (StopNotebookReq) returns (StopNotebookResp)
  238. @doc "查询notebook存储"
  239. @handler getNotebookStorageHandler
  240. get /ai/getNotebookStorage (GetNotebookStorageReq) returns (GetNotebookStorageResp)
  241. @doc "挂载notebook存储"
  242. @handler mountNotebookStorageHandler
  243. post /ai/mountNotebookStorage (MountNotebookStorageReq) returns (MountNotebookStorageResp)
  244. /******************Notebook Method end*************************/
  245. /******************Visualization Job Method start*************************/
  246. @doc "获取虚拟化任务"
  247. @handler getVisualizationJobHandler
  248. get /ai/getVisualizationJob (GetVisualizationJobReq) returns (GetVisualizationJobResp)
  249. @doc "创建虚拟化任务"
  250. @handler createVisualizationJobHandler
  251. post /ai/CreateVisualizationJob (CreateVisualizationJobReq) returns (CreateVisualizationJobResp)
  252. /******************Visualization Job Method start*************************/
  253. }
  254. //screen接口
  255. @server(
  256. prefix: pcm/v1
  257. group: storage
  258. )
  259. service pcm {
  260. @doc "存储概览"
  261. @handler screenStorageHandler
  262. get /storage/screenStorage (StorageScreenReq) returns (StorageScreenResp)
  263. @doc "日常算力查询"
  264. @handler dailyPowerScreenHandler
  265. get /storage/dailyPowerScreen (DailyPowerScreenReq) returns (DailyPowerScreenResp)
  266. @doc "算力中心算力情况"
  267. @handler perCenterComputerPowersHandler
  268. get /storage/perCenterComputerPowers (PerCenterComputerPowersReq) returns (PerCenterComputerPowersResp)
  269. }
  270. //镜像接口
  271. @server(
  272. prefix: pcm/v1
  273. group: image
  274. )
  275. service pcm {
  276. @doc "镜像上传"
  277. @handler uploadHandler
  278. post /upload
  279. @doc "镜像分块"
  280. @handler chunkHandler
  281. post /chunk
  282. @doc "查询镜像列表"
  283. @handler imageListHandler
  284. get /image/list returns (imageListResp)
  285. @doc "数据集检查"
  286. @handler dataSetCheckHandler
  287. get /dataSet/check/:fileMd5 (checkReq) returns (checkResp)
  288. @doc "上传数据集"
  289. @handler uploadDataSetHandler
  290. post /dataSet/upload
  291. }
  292. //openstack 接口
  293. @server(
  294. prefix: pcm/v1
  295. group: vm
  296. )
  297. service pcm {
  298. @doc "openstack计算中心概览"
  299. @handler GetComputeLimitsHandler
  300. get /vm/getComputeLimits (GetComputeLimitsReq) returns (GetComputeLimitsResp)
  301. @doc "查询卷列表"
  302. @handler GetVolumeLimitsHandler
  303. get /vm/getVolumeLimits (GetVolumeLimitsReq) returns (GetVolumeLimitsResp)
  304. @doc "查询网络数量"
  305. @handler GetNetworkNumHandler
  306. get /vm/getNetworkNum (ListNetworksReq) returns (NetworkNum)
  307. @doc "查询镜像列表"
  308. @handler getImageNumHandler
  309. get /vm/getImageNum (ListImagesReq) returns (ImageNum)
  310. @doc "查询虚拟机列表"
  311. @handler ListServerHandler
  312. get /vm/listServer (ListServersReq) returns (ListServersResp)
  313. @doc "查询虚拟机详情列表"
  314. @handler ListServersDetailedHandler
  315. get /vm/listServersDetailed (ListServersDetailedReq) returns (ListServersDetailedResp)
  316. @doc "删除虚拟机"
  317. @handler DeleteServerHandler
  318. delete /vm/deleteServer (DeleteServerReq) returns (DeleteServerResp)
  319. @doc "创建虚拟机"
  320. @handler CreateServerHandler
  321. post /vm/createServer (CreateServerReq) returns (CreateServerResp)
  322. @doc "跨域创建虚拟机"
  323. @handler CreateMulServerHandler
  324. post /vm/createMulServer (CreateMulServerReq) returns (CreateMulServerResp)
  325. @doc "根据ID查询虚拟机详情"
  326. @handler GetServersDetailedByIdHandler
  327. get /vm/getServersDetailedById (GetServersDetailedByIdReq) returns (GetServersDetailedByIdResp)
  328. @doc "更新虚拟机"
  329. @handler UpdateServerHandler
  330. put /vm/updateServer (UpdateServerReq) returns (UpdateServerResp)
  331. @doc "启动虚拟机"
  332. @handler StartServerHandler
  333. post /vm/startServer (StartServerReq) returns (StartServerResp)
  334. @doc "停止虚拟机"
  335. @handler StopServerHandler
  336. post /vm/stopServer (StopServerReq) returns (StopServerResp)
  337. @doc "重启虚拟机"
  338. @handler RebootServerHandler
  339. post /vm/rebootServer (RebootServerReq) returns (RebootServerResp)
  340. @doc "暂停虚拟机"
  341. @handler PauseServerHandler
  342. post /vm/pauseServer (PauseServerReq) returns (PauseServerResp)
  343. @doc "取消暂停虚拟机"
  344. @handler UnpauseServerHandler
  345. post /vm/unpauseServer (UnpauseServerReq) returns (UnpauseServerResp)
  346. @doc "调整大小"
  347. @handler ResizeServerHandler
  348. post /vm/resizeServer (ResizeServerReq) returns (ResizeServerResp)
  349. @doc "迁移"
  350. @handler MigrateServerHandler
  351. post /vm/migrateServer (MigrateServerReq) returns (MigrateServerResp)
  352. @doc "搁置"
  353. @handler ShelveServerHandler
  354. post /vm/shelveServer (ShelveServerReq) returns (ShelveServerResp)
  355. @doc "设置密码"
  356. @handler ChangeAdministrativePasswordHandler
  357. post /vm/changeAdministrativePassword (ChangeAdministrativePasswordReq) returns (ChangeAdministrativePasswordResp)
  358. @doc "救援"
  359. @handler RescueServerHandler
  360. post /vm/rescueServer (RescueServerReq) returns (RescueServerResp)
  361. @doc "取消救援"
  362. @handler UnRescueHandler
  363. post /vm/unRescueServer (UnRescueServerReq) returns (UnRescueServerResp)
  364. @doc "中止"
  365. @handler SuspendServerHandler
  366. post /vm/suspendServer (SuspendServerReq) returns (SuspendServerResp)
  367. @doc "将安全组添加到服务器"
  368. @handler AddSecurityGroupToServerHandler
  369. post /vm/addSecurityGroupToServer (AddSecurityGroupToServerReq) returns (AddSecurityGroupToServerResp)
  370. @doc "从服务器中删除安全"
  371. @handler removeSecurityGroupHandler
  372. post /vm/removeSecurityGroup (removeSecurityGroupReq) returns (removeSecurityGroupResp)
  373. @doc "创建规格"
  374. @handler CreateFlavorHandler
  375. post /vm/createFlavor (CreateFlavorReq) returns (CreateFlavorResp)
  376. @doc "创建规格"
  377. @handler DeleteFlavorHandler
  378. post /vm/deleteFlavor (DeleteFlavorReq) returns (DeleteFlavorResp)
  379. @doc "查询镜像列表"
  380. @handler ListImagesHandler
  381. get /vm/listImages (ListImagesReq) returns (ListImagesResp)
  382. @doc "删除镜像"
  383. @handler DeleteImageHandler
  384. delete /vm/deleteImage (DeleteImageReq) returns (DeleteImageResp)
  385. @doc "创建镜像"
  386. @handler CreateImageHandler
  387. post /vm/createImage (CreateImageReq) returns (CreateImageResp)
  388. @doc "上传镜像"
  389. @handler UploadImageHandler
  390. put /vm/uploadImage (UploadOsImageReq) returns (UploadOsImageResp)
  391. @doc "查询网络列表"
  392. @handler ListNetworksHandler
  393. get /vm/listNetworks (ListNetworksReq) returns (ListNetworksResp)
  394. @doc "删除网络"
  395. @handler DeleteNetworkHandler
  396. delete /vm/deleteNetwork (DeleteNetworkReq) returns (DeleteNetworkResp)
  397. @doc "创建网络"
  398. @handler CreateNetworkHandler
  399. post /vm/createNetwork (CreateNetworkReq) returns (CreateNetworkResp)
  400. @doc "创建子网"
  401. @handler CreateSubnetHandler
  402. post /vm/createSubnet (CreateSubnetReq) returns (CreateSubnetResp)
  403. @doc "查询网络详情"
  404. @handler ShowNetworkDetailsHandler
  405. get /vm/showNetworkDetails (ShowNetworkDetailsReq) returns (ShowNetworkDetailsResp)
  406. @doc "更新网络"
  407. @handler UpdateNetworkHandler
  408. put /vm/updateNetwork (UpdateNetworkReq) returns (UpdateNetworkResp)
  409. @doc "批量创建网络"
  410. @handler BulkCreateNetworksHandler
  411. post /vm/bulkCreateNetworks (BulkCreateNetworksReq) returns (BulkCreateNetworksResp)
  412. @doc "查询子网列表"
  413. @handler ListSubnetsHandler
  414. get /vm/listSubnets (ListSubnetsReq) returns (ListSubnetsResp)
  415. @doc "删除子网"
  416. @handler DeleteSubnetHandler
  417. delete /vm/deleteSubnet (DeleteSubnetReq) returns (DeleteSubnetResp)
  418. @doc "修改子网"
  419. @handler UpdateSubnetHandler
  420. put /vm/updateSubnet (UpdateSubnetReq) returns (UpdateSubnetResp)
  421. @doc "查询网络列表"
  422. @handler ListNetworkSegmentRangesRangeHandler
  423. get /vm/listNetworkSegmentRanges (ListNetworkSegmentRangesReq) returns (ListNetworkSegmentRangesResp)
  424. @doc "创建网段"
  425. @handler CreateNetworkSegmentRangeHandler
  426. post /vm/createNetworkSegmentRange (CreateNetworkSegmentRangeReq) returns (CreateNetworkSegmentRangeResp)
  427. @doc "删除网段"
  428. @handler DeleteNetworkSegmentRangesHandler
  429. delete /vm/deleteNetworkSegmentRanges (DeleteNetworkSegmentRangesReq) returns (DeleteNetworkSegmentRangesResp)
  430. @doc "修改网段"
  431. @handler UpdateNetworkSegmentRangesHandler
  432. put /vm/updateNetworkSegmentRanges (UpdateNetworkSegmentRangesReq) returns (UpdateNetworkSegmentRangesResp)
  433. @doc "显示网段详情"
  434. @handler ShowNetworkSegmentRangeDetailsHandler
  435. get /vm/showNetworkSegmentRangeDetails (ShowNetworkSegmentRangeDetailsReq) returns (ShowNetworkSegmentRangeDetailsResp)
  436. @doc "创建端口"
  437. @handler CreatePortHandler
  438. post /vm/createPort (CreatePortReq) returns (CreatePortResp)
  439. @doc "查询端口列表"
  440. @handler ListPortsHandler
  441. get /vm/listPortsReq (ListPortsReq) returns (ListPortsResp)
  442. @doc "删除端口"
  443. @handler DeletePortHandler
  444. delete /vm/deletePort (DeletePortReq) returns (DeletePortResp)
  445. @doc "修改端口"
  446. @handler UpdatePortHandler
  447. put /vm/updatePort (UpdatePortReq) returns (UpdatePortResp)
  448. @doc "查询端口详情"
  449. @handler ShowPortDetailsHandler
  450. get /vm/showPortDetails (ShowPortDetailsReq) returns (ShowPortDetailsResp)
  451. @doc "创建路由"
  452. @handler CreateRouterHandler
  453. post /vm/createRouter (CreateRouterReq) returns (CreateRouterResp)
  454. @doc "查询路由列表"
  455. @handler ListRoutersHandler
  456. get /vm/listRouters (ListRoutersReq) returns (ListRoutersResp)
  457. @doc "删除路由"
  458. @handler DeleteRouterHandler
  459. delete /vm/deleteRouter (DeleteRouterReq) returns (DeleteRouterResp)
  460. @doc "修改路由"
  461. @handler UpdateRouterHandler
  462. put /vm/updateRouter (UpdateRouterReq) returns (UpdateRouterResp)
  463. @doc "查询路由详情"
  464. @handler ShowRouterDetailsHandler
  465. get /vm/showRouterDetails (ShowRouterDetailsReq) returns (ShowRouterDetailsResp)
  466. @doc "创建浮动ip"
  467. @handler CreateFloatingIPHandler
  468. post /vm/createFloatingIP (CreateFloatingIPReq) returns (CreateFloatingIPResp)
  469. @doc "查询浮动ip列表"
  470. @handler ListFloatingIPsHandler
  471. get /vm/listFloatingIPs (ListFloatingIPsReq) returns (ListFloatingIPsResp)
  472. @doc "删除浮动ip"
  473. @handler DeleteFloatingIPHandler
  474. delete /vm/deleteFloatingIP (DeleteFloatingIPReq) returns (DeleteFloatingIPResp)
  475. @doc "修改浮动ip"
  476. @handler UpdateFloatingIPHandler
  477. put /vm/updateFloatingIP (UpdateFloatingIPReq) returns (UpdateFloatingIPResp)
  478. @doc "查询浮动ip详情"
  479. @handler ShowFloatingIPDetailsHandler
  480. get /vm/showFloatingIPDetails (ShowFloatingIPDetailsReq) returns (ShowFloatingIPDetailsResp)
  481. @doc "创建防火墙"
  482. @handler CreateFirewallGroupHandler
  483. post /vm/createFirewallGroup (CreateFirewallGroupReq) returns (CreateFirewallGroupResp)
  484. @doc "查询防火墙列表"
  485. @handler ListFirewallGroupsHandler
  486. get /vm/listFirewallGroups (ListFirewallGroupsReq) returns (ListFirewallGroupsResp)
  487. @doc "删除防火墙"
  488. @handler DeleteFirewallGroupHandler
  489. delete /vm/deleteFirewallGroup (DeleteFirewallGroupReq) returns (DeleteFirewallGroupResp)
  490. @doc "修改防火墙"
  491. @handler UpdateFirewallGroupHandler
  492. put /vm/updateFirewallGroup (UpdateFirewallGroupReq) returns (UpdateFirewallGroupResp)
  493. @doc "查询防火墙详情"
  494. @handler ShowFirewallGroupDetailsHandler
  495. get /vm/showFirewallGroupDetails (ShowFirewallGroupDetailsReq) returns (ShowFirewallGroupDetailsResp)
  496. @doc "创建防火墙策略"
  497. @handler CreateFirewallPolicyHandler
  498. post /vm/createFirewallPolicy (CreateFirewallPolicyReq) returns (CreateFirewallPolicyResp)
  499. @doc "查询防火墙策略列表"
  500. @handler ListFirewallPoliciesHandler
  501. get /vm/listFirewallPolicies (ListFirewallPoliciesReq) returns (ListFirewallPoliciesResp)
  502. @doc "删除防火墙策略"
  503. @handler DeleteFirewallPolicyHandler
  504. delete /vm/deleteFirewallPolicy (DeleteFirewallPolicyReq) returns (DeleteFirewallPolicyResp)
  505. @doc "查询防火墙策略详情"
  506. @handler ShowFirewallRuleDetailsHandler
  507. get /vm/showFirewallRuleDetails (ShowFirewallRuleDetailsReq) returns (ShowFirewallRuleDetailsResp)
  508. @doc "查询防火墙策略详情"
  509. @handler ShowFirewallPolicyDetailsHandler
  510. get /vm/showFirewallPolicyDetails (ShowFirewallPolicyDetailsReq) returns (ShowFirewallPolicyDetailsResp)
  511. @doc "创建防火墙策略"
  512. @handler CreateFirewallRuleHandler
  513. post /vm/createFirewallRule (CreateFirewallRuleReq) returns (CreateFirewallRuleResp)
  514. @doc "查询防火墙策略列表"
  515. @handler ListFirewallRulesHandler
  516. get /vm/listFirewallRules (ListFirewallRulesReq) returns (ListFirewallRulesResp)
  517. @doc "删除防火墙策略"
  518. @handler DeleteFirewallRuleHandler
  519. delete /vm/deleteFirewallRule (DeleteFirewallRuleReq) returns (DeleteFirewallRuleResp)
  520. @doc "创建安全组"
  521. @handler CreateSecurityGroupHandler
  522. post /vm/createSecurityGroup (CreateSecurityGroupReq) returns (CreateSecurityGroupResp)
  523. @doc "查询安全组列表"
  524. @handler ListSecurityGroupsHandler
  525. get /vm/listSecurityGroups (ListSecurityGroupsReq) returns (ListSecurityGroupsResp)
  526. @doc "删除安全组"
  527. @handler DeleteSecurityGroupHandler
  528. delete /vm/deleteSecurityGroup (DeleteSecurityGroupReq) returns (DeleteSecurityGroupResp)
  529. @doc "修改安全组"
  530. @handler UpdateSecurityGroupHandler
  531. put /vm/updateSecurityGroup (UpdateSecurityGroupReq) returns (UpdateSecurityGroupResp)
  532. @doc "查询安全组详情"
  533. @handler ShowSecurityGroupHandler
  534. get /vm/showSecurityGroup (ShowSecurityGroupReq) returns (ShowSecurityGroupResp)
  535. @doc "创建安全组规则"
  536. @handler CreateSecurityGroupRuleHandler
  537. post /vm/createSecurityGroupRule (CreateSecurityGroupRuleReq) returns (CreateSecurityGroupRuleResp)
  538. @doc "查询安全组规则列表"
  539. @handler ListSecurityGroupRulesHandler
  540. get /vm/listSecurityGroupRules (ListSecurityGroupRulesReq) returns (ListSecurityGroupRulesResp)
  541. @doc "删除安全组规则"
  542. @handler DeleteSecurityGroupRuleHandler
  543. delete /vm/deleteSecurityGroupRule (DeleteSecurityGroupRuleReq) returns (DeleteSecurityGroupRuleResp)
  544. @doc "查询安全组规则详情"
  545. @handler ShowSecurityGroupRuleHandler
  546. get /vm/showSecurityGroupRule (ShowSecurityGroupRuleReq) returns (ShowSecurityGroupRuleResp)
  547. @doc "查询卷详情列表"
  548. @handler ListVolumesDetailHandler
  549. get /vm/listVolumesDetail (ListVolumesDetailReq) returns (ListVolumesDetailResp)
  550. @doc "删除卷"
  551. @handler DeleteVolumeHandler
  552. delete /vm/deleteVolume (DeleteVolumeReq) returns (DeleteVolumeResp)
  553. @doc "创建卷"
  554. @handler CreateVolumeHandler
  555. post /vm/createVolume (CreateVolumeReq) returns (CreateVolumeResp)
  556. @doc "查询规格详情列表"
  557. @handler ListFlavorsDetailHandler
  558. get /vm/listFlavorsDetail (ListFlavorsDetailReq) returns (ListFlavorsDetailResp)
  559. @doc "查询规格类型列表"
  560. @handler ListVolumeTypesHandler
  561. get /vm/listVolumeTypes (ListVolumeTypesReq) returns (ListVolumeTypesResp)
  562. @doc "更新卷"
  563. @handler UpdateVolumeHandler
  564. put /vm/updateVolume (UpdateVolumeReq) returns (UpdateVolumeResp)
  565. @doc "创建卷类型"
  566. @handler CreateVolumeTypesHandler
  567. post /vm/createVolumeTypes (CreateVolumeTypeReq) returns (CreateVolumeTypeResp)
  568. @doc "删除卷类型"
  569. @handler DeleteVolumeTypeHandler
  570. delete /vm/deleteVolumeType (DeleteVolumeTypeReq) returns (DeleteVolumeTypeResp)
  571. @doc "查询卷列表"
  572. @handler ListVolumesHandler
  573. get /vm/listVolumes (ListVolumesReq) returns (ListVolumesResp)
  574. @doc "根据ID获取卷详情"
  575. @handler GetVolumeDetailedByIdHandler
  576. get /vm/getVolumeDetailedById (GetVolumeDetailedByIdReq) returns (GetVolumeDetailedByIdResp)
  577. @doc "查询节点列表"
  578. @handler ListNodesHandler
  579. get /vm/listNodes (ListNodesReq) returns (ListNodesResp)
  580. @doc "创建节点"
  581. @handler CreateNodeHandler
  582. post /vm/createNode (CreateNodeReq) returns (CreateNodeResp)
  583. @doc "删除节点"
  584. @handler DeleteNodeHandler
  585. delete /vm/deleteNode (DeleteNodeReq) returns (DeleteNodeResp)
  586. @doc "查询节点详情"
  587. @handler ShowNodeDetailsHandler
  588. get /vm/showNodeDetails (ShowNodeDetailsReq) returns (ShowNodeDetailsResp)
  589. }
  590. //存算联动 接口
  591. @server(
  592. prefix: pcm/v1
  593. group: storelink
  594. )
  595. service pcm {
  596. @handler UploadLinkImageHandler
  597. post /storelink/uploadImage (UploadLinkImageReq) returns (UploadLinkImageResp)
  598. @handler GetLinkImageListHandler
  599. get /storelink/getImageList (GetLinkImageListReq) returns (GetLinkImageListResp)
  600. @handler DeleteLinkImageHandler
  601. delete /storelink/deleteImage (DeleteLinkImageReq) returns (DeleteLinkImageResp)
  602. @handler SubmitLinkTaskHandler
  603. post /storelink/submitTask (SubmitLinkTaskReq) returns (SubmitLinkTaskResp)
  604. @handler GetLinkTaskHandler
  605. get /storelink/getTask (GetLinkTaskReq) returns (GetLinkTaskResp)
  606. @handler DeleteLinkTaskHandler
  607. delete /storelink/deleteTask (DeleteLinkTaskReq) returns (DeleteLinkTaskResp)
  608. @handler GetParticipantsHandler
  609. get /storelink/getParticipants (GetParticipantsReq) returns (GetParticipantsResp)
  610. @handler GetAISpecsHandler
  611. get /storelink/getResourceSpecs (GetResourceSpecsReq) returns (GetResourceSpecsResp)
  612. }
  613. // 接口
  614. @server(
  615. prefix: pcm/v1
  616. group: apps
  617. )
  618. service pcm {
  619. @doc "应用列表"
  620. @handler AppListHandler
  621. get /apps/list (AppListReq) returns (AppListResp)
  622. @doc "获取应用分发详情"
  623. @handler AppDetailHandler
  624. get /apps/distribute/:appName (AppDetailReq) returns (AppDetailResp)
  625. @doc "应用pods列表"
  626. @handler AppPodsHandler
  627. get /apps/pods/:appName (AppDetailReq) returns (AppDetailResp)
  628. @doc "获取应用详情"
  629. @handler GetAppByAppName
  630. get /apps/getAppByAppName/:appName (AppDetailReq) returns (AppTaskResp)
  631. @doc "删除应用"
  632. @handler DeleteAppByAppName
  633. delete /apps/deleteApp (DeleteAppReq) returns (DeleteAppResp)
  634. @doc "更新应用"
  635. @handler UpdateAppByAppName
  636. put /apps/updateApp (DeleteAppReq) returns (AppTaskResp)
  637. @doc "重启应用"
  638. @handler RestartAppByAppName
  639. put /apps/restartApp (DeleteAppReq) returns (AppResp)
  640. @doc "暂停应用"
  641. @handler PauseAppByAppName
  642. put /apps/pauseApp (DeleteAppReq) returns (AppResp)
  643. @doc "启动应用"
  644. @handler StartAppByAppName
  645. put /apps/startApp (DeleteAppReq) returns (AppResp)
  646. }
  647. // 接口
  648. @server(
  649. prefix: pcm/v1
  650. group: adapters
  651. )
  652. service pcm {
  653. @handler AdaptersListHandler
  654. get /adapter/list (AdapterQueryReq) returns (PageResult)
  655. @handler CreateAdapterHandler
  656. post /adapter/create (AdapterCreateReq) returns (AdapterResp)
  657. @handler UpdateAdapterHandler
  658. put /adapter/update (AdapterReq) returns (AdapterResp)
  659. @handler DeleteAdapterHandler
  660. delete /adapter/delete (AdapterDelReq) returns (AdapterResp)
  661. @handler GetAdapterHandler
  662. get /adapter/get (AdapterDelReq) returns (AdapterInfo)
  663. @handler ClusterListHandler
  664. get /adapter/cluster/list (ClusterReq) returns (PageResult)
  665. @handler CreateClusterHandler
  666. post /adapter/cluster/create (ClusterCreateReq) returns (ClusterResp)
  667. @handler UpdateClusterHandler
  668. put /adapter/cluster/update (ClusterCreateReq) returns (ClusterResp)
  669. @handler DeleteClusterHandler
  670. delete /adapter/cluster/delete (FId) returns (ClusterResp)
  671. @handler GetClusterHandler
  672. get /adapter/cluster/get (FId) returns (ClusterResp)
  673. @handler GetAdapterRelationHandler
  674. get /adapter/relation (AdapterRelationQueryReq) returns (PageResult)
  675. @handler GetClusterSumHandler
  676. get /adapter/clusterSum (clusterSumReq) returns (clusterSumReqResp)
  677. }
  678. @server(
  679. prefix: pcm/v1
  680. group: schedule
  681. )
  682. service pcm {
  683. @handler ScheduleGetAiResourceTypesHandler
  684. get /schedule/ai/getResourceTypes returns (AiResourceTypesResp)
  685. @handler ScheduleGetAiTaskTypesHandler
  686. get /schedule/ai/getTaskTypes returns (AiTaskTypesResp)
  687. @handler ScheduleGetDatasetsHandler
  688. get /schedule/ai/getDatasets returns (AiDatasetsResp)
  689. @handler ScheduleGetStrategyHandler
  690. get /schedule/ai/getStrategies returns (AiStrategyResp)
  691. @handler ScheduleGetAlgorithmsHandler
  692. get /schedule/ai/getAlgorithms/:resourceType/:taskType/:dataset (AiAlgorithmsReq) returns (AiAlgorithmsResp)
  693. @handler ScheduleSubmitHandler
  694. post /schedule/submit (ScheduleReq) returns (ScheduleResp)
  695. }
  696. @server(
  697. prefix: pcm/v1
  698. group: dictionary
  699. )
  700. service pcm {
  701. @handler GetDict
  702. get /dict/:id (CId) returns (DictResp)
  703. @handler ListDict
  704. get /dicts (DictReq) returns (PageResult)
  705. @handler AddDict
  706. post /dict (DictEditReq) returns (DictResp)
  707. @handler EditDict
  708. put /dict (DictEditReq) returns (DictResp)
  709. @handler DeleteDict
  710. delete /dict/:id (CId) returns (DictResp)
  711. @handler GetDictItem
  712. get /dictItem/:id (CId) returns (DictItemResp)
  713. @handler ListDictItem
  714. get /dictItems (DictItemReq) returns (PageResult)
  715. @handler AddDictItem
  716. post /dictItem (DictItemEditReq) returns (DictItemResp)
  717. @handler EditDictItem
  718. put /dictItem (DictItemEditReq) returns (DictItemResp)
  719. @handler DeleteDictItem
  720. delete /dictItem/:id (CId) returns (DictItemResp)
  721. @handler ListDictItemByCode
  722. get /dictItem/code/:dictCode (DictCodeReq) returns (PageResult)
  723. }
  724. @server(
  725. prefix: pcm/v1
  726. group: monitoring
  727. )
  728. service pcm {
  729. @handler CreateAlertRuleHandler
  730. post /monitoring/alert/rule (CreateAlertRuleReq)
  731. @doc "alert rules"
  732. @handler alertRulesHandler
  733. get /monitoring/alert/rule returns (AlertRulesResp)
  734. @doc "cluster resource load"
  735. @handler clustersLoadHandler
  736. get /monitoring/cluster/load (clustersLoadReq) returns (clustersLoadResp)
  737. @doc "node resource load"
  738. @handler nodesLoadTopHandler
  739. get /monitoring/node/top (nodesLoadTopReq) returns (nodesLoadTopResp)
  740. }

PCM is positioned as Software stack over Cloud, aiming to build the standards and ecology of heterogeneous cloud collaboration for JCC in a non intrusive and autonomous peer-to-peer manner.