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

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

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.