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 29 kB

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

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.