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.

routes.go 18 kB

2 years ago
2 years ago
2 years ago
2 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690
  1. // Code generated by goctl. DO NOT EDIT.
  2. package handler
  3. import (
  4. "net/http"
  5. ai "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/handler/ai"
  6. apps "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/handler/apps"
  7. cloud "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/handler/cloud"
  8. core "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/handler/core"
  9. hpc "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/handler/hpc"
  10. image "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/handler/image"
  11. storage "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/handler/storage"
  12. storelink "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/handler/storelink"
  13. vm "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/handler/vm"
  14. "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/svc"
  15. "github.com/zeromicro/go-zero/rest"
  16. )
  17. func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
  18. server.AddRoutes(
  19. []rest.Route{
  20. {
  21. Method: http.MethodGet,
  22. Path: "/core/participantList",
  23. Handler: core.ParticipantListHandler(serverCtx),
  24. },
  25. {
  26. Method: http.MethodPost,
  27. Path: "/core/scheduleTaskByYaml",
  28. Handler: core.ScheduleTaskByYamlHandler(serverCtx),
  29. },
  30. {
  31. Method: http.MethodPost,
  32. Path: "/core/commitTask",
  33. Handler: core.CommitTaskHandler(serverCtx),
  34. },
  35. {
  36. Method: http.MethodPost,
  37. Path: "/core/commitHpcTask",
  38. Handler: core.CommitHpcTaskHandler(serverCtx),
  39. },
  40. {
  41. Method: http.MethodDelete,
  42. Path: "/core/deleteTask/:id",
  43. Handler: core.DeleteTaskHandler(serverCtx),
  44. },
  45. {
  46. Method: http.MethodGet,
  47. Path: "/core/taskList",
  48. Handler: core.TaskListHandler(serverCtx),
  49. },
  50. {
  51. Method: http.MethodGet,
  52. Path: "/core/taskDetail/:taskId",
  53. Handler: core.TaskDetailHandler(serverCtx),
  54. },
  55. {
  56. Method: http.MethodGet,
  57. Path: "/core/jobTotal",
  58. Handler: core.JobTotalHandler(serverCtx),
  59. },
  60. {
  61. Method: http.MethodGet,
  62. Path: "/core/listCenter",
  63. Handler: core.ListCenterHandler(serverCtx),
  64. },
  65. {
  66. Method: http.MethodGet,
  67. Path: "/core/listCluster/:centerId",
  68. Handler: core.ListClusterHandler(serverCtx),
  69. },
  70. {
  71. Method: http.MethodPost,
  72. Path: "/core/submitJob",
  73. Handler: core.SubmitJobHandler(serverCtx),
  74. },
  75. {
  76. Method: http.MethodGet,
  77. Path: "/core/getRegion",
  78. Handler: core.GetRegionHandler(serverCtx),
  79. },
  80. {
  81. Method: http.MethodGet,
  82. Path: "/core/listRegion",
  83. Handler: core.ListRegionHandler(serverCtx),
  84. },
  85. {
  86. Method: http.MethodGet,
  87. Path: "/core/getComputingPower",
  88. Handler: core.GetComputingPowerHandler(serverCtx),
  89. },
  90. {
  91. Method: http.MethodGet,
  92. Path: "/core/getGeneralInfo",
  93. Handler: core.GetGeneralInfoHandler(serverCtx),
  94. },
  95. {
  96. Method: http.MethodGet,
  97. Path: "/core/listDomainResource",
  98. Handler: core.ListDomainResourceHandler(serverCtx),
  99. },
  100. {
  101. Method: http.MethodGet,
  102. Path: "/core/getResourcePanelConfigHandler",
  103. Handler: core.GetResourcePanelConfigHandler(serverCtx),
  104. },
  105. {
  106. Method: http.MethodPut,
  107. Path: "/core/resourcePanelConfigHandler",
  108. Handler: core.PutResourcePanelConfigHandler(serverCtx),
  109. },
  110. {
  111. Method: http.MethodGet,
  112. Path: "/core/getComputilityStatistics",
  113. Handler: core.GetComputilityStatisticsHandler(serverCtx),
  114. },
  115. {
  116. Method: http.MethodGet,
  117. Path: "/core/assets",
  118. Handler: core.NodeAssetsHandler(serverCtx),
  119. },
  120. {
  121. Method: http.MethodPost,
  122. Path: "/core/saveHashcat",
  123. Handler: core.SaveHashcatHandler(serverCtx),
  124. },
  125. {
  126. Method: http.MethodGet,
  127. Path: "/core/getHashcat/:crackTaskId",
  128. Handler: core.GetHashcatHandler(serverCtx),
  129. },
  130. },
  131. rest.WithPrefix("/pcm/v1"),
  132. )
  133. server.AddRoutes(
  134. []rest.Route{
  135. {
  136. Method: http.MethodGet,
  137. Path: "/hpc/listJob",
  138. Handler: hpc.ListJobHandler(serverCtx),
  139. },
  140. {
  141. Method: http.MethodGet,
  142. Path: "/hpc/listHistoryJob",
  143. Handler: hpc.ListHistoryJobHandler(serverCtx),
  144. },
  145. {
  146. Method: http.MethodGet,
  147. Path: "/queue/assets",
  148. Handler: hpc.QueueAssetsHandler(serverCtx),
  149. },
  150. },
  151. rest.WithPrefix("/pcm/v1"),
  152. )
  153. server.AddRoutes(
  154. []rest.Route{
  155. {
  156. Method: http.MethodGet,
  157. Path: "/task/list",
  158. Handler: cloud.CloudListHandler(serverCtx),
  159. },
  160. {
  161. Method: http.MethodGet,
  162. Path: "/cloud/DeleteYaml",
  163. Handler: cloud.DeleteYamlHandler(serverCtx),
  164. },
  165. {
  166. Method: http.MethodGet,
  167. Path: "/cloud/controller/Metrics",
  168. Handler: cloud.ControllerMetricsHandler(serverCtx),
  169. },
  170. {
  171. Method: http.MethodPost,
  172. Path: "/cloud/registerCluster",
  173. Handler: cloud.RegisterClusterHandler(serverCtx),
  174. },
  175. {
  176. Method: http.MethodPost,
  177. Path: "/cloud/deleteCluster",
  178. Handler: cloud.DeleteClusterHandler(serverCtx),
  179. },
  180. {
  181. Method: http.MethodGet,
  182. Path: "/cloud/noticeTenant",
  183. Handler: cloud.NoticeTenantHandler(serverCtx),
  184. },
  185. {
  186. Method: http.MethodPost,
  187. Path: "/cloud/updateTenant",
  188. Handler: cloud.UpdateTenantHandler(serverCtx),
  189. },
  190. },
  191. rest.WithPrefix("/pcm/v1"),
  192. )
  193. server.AddRoutes(
  194. []rest.Route{
  195. {
  196. Method: http.MethodGet,
  197. Path: "/ai/listDataSet/:projectId",
  198. Handler: ai.ListDataSetHandler(serverCtx),
  199. },
  200. {
  201. Method: http.MethodPost,
  202. Path: "/ai/createDataSet/:projectId",
  203. Handler: ai.CreateDataSetHandler(serverCtx),
  204. },
  205. {
  206. Method: http.MethodDelete,
  207. Path: "/ai/deleteDataSet/:projectId/:datasetId",
  208. Handler: ai.DeleteDataSetHandler(serverCtx),
  209. },
  210. {
  211. Method: http.MethodPost,
  212. Path: "/ai/CreateTask/:projectId/:datasetId",
  213. Handler: ai.CreateTaskHandler(serverCtx),
  214. },
  215. {
  216. Method: http.MethodGet,
  217. Path: "/ai/ListImport/:projectId/:datasetId",
  218. Handler: ai.ListImportHandler(serverCtx),
  219. },
  220. {
  221. Method: http.MethodGet,
  222. Path: "/ai/GetListTrainingJobs/:projectId",
  223. Handler: ai.GetListTrainingJobsHandler(serverCtx),
  224. },
  225. {
  226. Method: http.MethodDelete,
  227. Path: "/ai/DeleteTrainingJob/:projectId/:trainingJobId",
  228. Handler: ai.DeleteTrainingJobHandler(serverCtx),
  229. },
  230. {
  231. Method: http.MethodPost,
  232. Path: "/ai/CreateAlgorithm/:projectId",
  233. Handler: ai.CreateAlgorithmHandler(serverCtx),
  234. },
  235. {
  236. Method: http.MethodGet,
  237. Path: "/ai/ListAlgorithms/:projectId",
  238. Handler: ai.ListAlgorithmsHandler(serverCtx),
  239. },
  240. {
  241. Method: http.MethodDelete,
  242. Path: "/ai/DeleteAlgorithm/:projectId/:algorithmId",
  243. Handler: ai.DeleteAlgorithmHandler(serverCtx),
  244. },
  245. {
  246. Method: http.MethodPost,
  247. Path: "/ai/CreateTrainingJob/:projectId",
  248. Handler: ai.CreateTrainingJobHandler(serverCtx),
  249. },
  250. {
  251. Method: http.MethodGet,
  252. Path: "/ai/ShowAlgorithmByUuid/:projectId/:algorithmId",
  253. Handler: ai.ShowAlgorithmByUuidHandler(serverCtx),
  254. },
  255. {
  256. Method: http.MethodPost,
  257. Path: "/ai/CreateExportTask/:projectId/:datasetId",
  258. Handler: ai.CreateExportTaskHandler(serverCtx),
  259. },
  260. {
  261. Method: http.MethodGet,
  262. Path: "/ai/GetExportTasksOfDataset/:projectId/:datasetId",
  263. Handler: ai.GetExportTasksOfDatasetHandler(serverCtx),
  264. },
  265. {
  266. Method: http.MethodGet,
  267. Path: "/ai/GetExportTaskStatusOfDataset/:projectId/:resourceId/:taskId",
  268. Handler: ai.GetExportTaskStatusOfDatasetHandler(serverCtx),
  269. },
  270. {
  271. Method: http.MethodPost,
  272. Path: "/ai/CreateProcessorTask",
  273. Handler: ai.CreateProcessorTaskHandler(serverCtx),
  274. },
  275. {
  276. Method: http.MethodPost,
  277. Path: "/ai/CreateService/:projectId",
  278. Handler: ai.CreateServiceHandler(serverCtx),
  279. },
  280. {
  281. Method: http.MethodGet,
  282. Path: "/ai/ListServices/:projectId",
  283. Handler: ai.ListServicesHandler(serverCtx),
  284. },
  285. {
  286. Method: http.MethodGet,
  287. Path: "/ai/ShowService/:projectId/:serviceId",
  288. Handler: ai.ShowServiceHandler(serverCtx),
  289. },
  290. {
  291. Method: http.MethodDelete,
  292. Path: "/ai/DeleteService/:projectId/:serviceId",
  293. Handler: ai.DeleteServiceHandler(serverCtx),
  294. },
  295. {
  296. Method: http.MethodGet,
  297. Path: "/ai/ListClusters",
  298. Handler: ai.ListClustersHandler(serverCtx),
  299. },
  300. {
  301. Method: http.MethodGet,
  302. Path: "/ai/listNotebook",
  303. Handler: ai.ListNotebookHandler(serverCtx),
  304. },
  305. {
  306. Method: http.MethodPost,
  307. Path: "/ai/createNotebook",
  308. Handler: ai.CreateNotebookHandler(serverCtx),
  309. },
  310. {
  311. Method: http.MethodPost,
  312. Path: "/ai/startNotebook",
  313. Handler: ai.StartNotebookHandler(serverCtx),
  314. },
  315. {
  316. Method: http.MethodPost,
  317. Path: "/ai/stopNotebook",
  318. Handler: ai.StopNotebookHandler(serverCtx),
  319. },
  320. {
  321. Method: http.MethodGet,
  322. Path: "/ai/getNotebookStorage",
  323. Handler: ai.GetNotebookStorageHandler(serverCtx),
  324. },
  325. {
  326. Method: http.MethodPost,
  327. Path: "/ai/mountNotebookStorage",
  328. Handler: ai.MountNotebookStorageHandler(serverCtx),
  329. },
  330. {
  331. Method: http.MethodGet,
  332. Path: "/ai/getVisualizationJob",
  333. Handler: ai.GetVisualizationJobHandler(serverCtx),
  334. },
  335. {
  336. Method: http.MethodPost,
  337. Path: "/ai/CreateVisualizationJob",
  338. Handler: ai.CreateVisualizationJobHandler(serverCtx),
  339. },
  340. },
  341. rest.WithPrefix("/pcm/v1"),
  342. )
  343. server.AddRoutes(
  344. []rest.Route{
  345. {
  346. Method: http.MethodGet,
  347. Path: "/storage/screenStorage",
  348. Handler: storage.ScreenStorageHandler(serverCtx),
  349. },
  350. {
  351. Method: http.MethodGet,
  352. Path: "/storage/dailyPowerScreen",
  353. Handler: storage.DailyPowerScreenHandler(serverCtx),
  354. },
  355. {
  356. Method: http.MethodGet,
  357. Path: "/storage/perCenterComputerPowers",
  358. Handler: storage.PerCenterComputerPowersHandler(serverCtx),
  359. },
  360. },
  361. rest.WithPrefix("/pcm/v1"),
  362. )
  363. server.AddRoutes(
  364. []rest.Route{
  365. {
  366. Method: http.MethodPost,
  367. Path: "/upload",
  368. Handler: image.UploadHandler(serverCtx),
  369. },
  370. {
  371. Method: http.MethodPost,
  372. Path: "/chunk",
  373. Handler: image.ChunkHandler(serverCtx),
  374. },
  375. {
  376. Method: http.MethodGet,
  377. Path: "/image/list",
  378. Handler: image.ImageListHandler(serverCtx),
  379. },
  380. {
  381. Method: http.MethodGet,
  382. Path: "/dataSet/check/:fileMd5",
  383. Handler: image.DataSetCheckHandler(serverCtx),
  384. },
  385. {
  386. Method: http.MethodPost,
  387. Path: "/dataSet/upload",
  388. Handler: image.UploadDataSetHandler(serverCtx),
  389. },
  390. },
  391. rest.WithPrefix("/pcm/v1"),
  392. )
  393. server.AddRoutes(
  394. []rest.Route{
  395. {
  396. Method: http.MethodGet,
  397. Path: "/vm/getComputeLimits",
  398. Handler: vm.GetComputeLimitsHandler(serverCtx),
  399. },
  400. {
  401. Method: http.MethodGet,
  402. Path: "/vm/getVolumeLimits",
  403. Handler: vm.GetVolumeLimitsHandler(serverCtx),
  404. },
  405. {
  406. Method: http.MethodGet,
  407. Path: "/vm/listServer",
  408. Handler: vm.ListServerHandler(serverCtx),
  409. },
  410. {
  411. Method: http.MethodGet,
  412. Path: "/vm/listServersDetailed",
  413. Handler: vm.ListServersDetailedHandler(serverCtx),
  414. },
  415. {
  416. Method: http.MethodDelete,
  417. Path: "/vm/deleteServer",
  418. Handler: vm.DeleteServerHandler(serverCtx),
  419. },
  420. {
  421. Method: http.MethodPost,
  422. Path: "/vm/createServer",
  423. Handler: vm.CreateServerHandler(serverCtx),
  424. },
  425. {
  426. Method: http.MethodGet,
  427. Path: "/vm/getServersDetailedById",
  428. Handler: vm.GetServersDetailedByIdHandler(serverCtx),
  429. },
  430. {
  431. Method: http.MethodPut,
  432. Path: "/vm/updateServer",
  433. Handler: vm.UpdateServerHandler(serverCtx),
  434. },
  435. {
  436. Method: http.MethodPost,
  437. Path: "/vm/startServer",
  438. Handler: vm.StartServerHandler(serverCtx),
  439. },
  440. {
  441. Method: http.MethodPost,
  442. Path: "/vm/stopServer",
  443. Handler: vm.StopServerHandler(serverCtx),
  444. },
  445. {
  446. Method: http.MethodPost,
  447. Path: "/vm/rebootServer",
  448. Handler: vm.RebootServerHandler(serverCtx),
  449. },
  450. {
  451. Method: http.MethodPost,
  452. Path: "/vm/pauseServer",
  453. Handler: vm.PauseServerHandler(serverCtx),
  454. },
  455. {
  456. Method: http.MethodGet,
  457. Path: "/vm/listImages",
  458. Handler: vm.ListImagesHandler(serverCtx),
  459. },
  460. {
  461. Method: http.MethodDelete,
  462. Path: "/vm/deleteImage",
  463. Handler: vm.DeleteImageHandler(serverCtx),
  464. },
  465. {
  466. Method: http.MethodPost,
  467. Path: "/vm/createImage",
  468. Handler: vm.CreateImageHandler(serverCtx),
  469. },
  470. {
  471. Method: http.MethodPut,
  472. Path: "/vm/uploadImage",
  473. Handler: vm.UploadImageHandler(serverCtx),
  474. },
  475. {
  476. Method: http.MethodGet,
  477. Path: "/vm/listNetworks",
  478. Handler: vm.ListNetworksHandler(serverCtx),
  479. },
  480. {
  481. Method: http.MethodDelete,
  482. Path: "/vm/deleteNetwork",
  483. Handler: vm.DeleteNetworkHandler(serverCtx),
  484. },
  485. {
  486. Method: http.MethodPost,
  487. Path: "/vm/createNetwork",
  488. Handler: vm.CreateNetworkHandler(serverCtx),
  489. },
  490. {
  491. Method: http.MethodPost,
  492. Path: "/vm/createSubnet",
  493. Handler: vm.CreateSubnetHandler(serverCtx),
  494. },
  495. {
  496. Method: http.MethodGet,
  497. Path: "/vm/showNetworkDetails",
  498. Handler: vm.ShowNetworkDetailsHandler(serverCtx),
  499. },
  500. {
  501. Method: http.MethodPut,
  502. Path: "/vm/updateNetwork",
  503. Handler: vm.UpdateNetworkHandler(serverCtx),
  504. },
  505. {
  506. Method: http.MethodPost,
  507. Path: "/vm/bulkCreateNetworks",
  508. Handler: vm.BulkCreateNetworksHandler(serverCtx),
  509. },
  510. {
  511. Method: http.MethodGet,
  512. Path: "/vm/listVolumesDetail",
  513. Handler: vm.ListVolumesDetailHandler(serverCtx),
  514. },
  515. {
  516. Method: http.MethodDelete,
  517. Path: "/vm/deleteVolume",
  518. Handler: vm.DeleteVolumeHandler(serverCtx),
  519. },
  520. {
  521. Method: http.MethodPost,
  522. Path: "/vm/createVolume",
  523. Handler: vm.CreateVolumeHandler(serverCtx),
  524. },
  525. {
  526. Method: http.MethodGet,
  527. Path: "/vm/listFlavorsDetail",
  528. Handler: vm.ListFlavorsDetailHandler(serverCtx),
  529. },
  530. {
  531. Method: http.MethodGet,
  532. Path: "/vm/listVolumeTypes",
  533. Handler: vm.ListVolumeTypesHandler(serverCtx),
  534. },
  535. {
  536. Method: http.MethodPut,
  537. Path: "/vm/updateVolume",
  538. Handler: vm.UpdateVolumeHandler(serverCtx),
  539. },
  540. {
  541. Method: http.MethodPost,
  542. Path: "/vm/createVolumeTypes",
  543. Handler: vm.CreateVolumeTypesHandler(serverCtx),
  544. },
  545. {
  546. Method: http.MethodDelete,
  547. Path: "/vm/deleteVolumeType",
  548. Handler: vm.DeleteVolumeTypeHandler(serverCtx),
  549. },
  550. {
  551. Method: http.MethodGet,
  552. Path: "/vm/listVolumes",
  553. Handler: vm.ListVolumesHandler(serverCtx),
  554. },
  555. {
  556. Method: http.MethodGet,
  557. Path: "/vm/getVolumeDetailedById",
  558. Handler: vm.GetVolumeDetailedByIdHandler(serverCtx),
  559. },
  560. {
  561. Method: http.MethodGet,
  562. Path: "/vm/listNodes",
  563. Handler: vm.ListNodesHandler(serverCtx),
  564. },
  565. {
  566. Method: http.MethodPost,
  567. Path: "/vm/createNode",
  568. Handler: vm.CreateNodeHandler(serverCtx),
  569. },
  570. {
  571. Method: http.MethodDelete,
  572. Path: "/vm/deleteNode",
  573. Handler: vm.DeleteNodeHandler(serverCtx),
  574. },
  575. {
  576. Method: http.MethodGet,
  577. Path: "/vm/showNodeDetails",
  578. Handler: vm.ShowNodeDetailsHandler(serverCtx),
  579. },
  580. },
  581. rest.WithPrefix("/pcm/v1"),
  582. )
  583. server.AddRoutes(
  584. []rest.Route{
  585. {
  586. Method: http.MethodPost,
  587. Path: "/storelink/uploadImage",
  588. Handler: storelink.UploadLinkImageHandler(serverCtx),
  589. },
  590. {
  591. Method: http.MethodGet,
  592. Path: "/storelink/getImageList",
  593. Handler: storelink.GetLinkImageListHandler(serverCtx),
  594. },
  595. {
  596. Method: http.MethodDelete,
  597. Path: "/storelink/deleteImage",
  598. Handler: storelink.DeleteLinkImageHandler(serverCtx),
  599. },
  600. {
  601. Method: http.MethodPost,
  602. Path: "/storelink/submitTask",
  603. Handler: storelink.SubmitLinkTaskHandler(serverCtx),
  604. },
  605. {
  606. Method: http.MethodGet,
  607. Path: "/storelink/getTask",
  608. Handler: storelink.GetLinkTaskHandler(serverCtx),
  609. },
  610. {
  611. Method: http.MethodDelete,
  612. Path: "/storelink/deleteTask",
  613. Handler: storelink.DeleteLinkTaskHandler(serverCtx),
  614. },
  615. {
  616. Method: http.MethodGet,
  617. Path: "/storelink/getParticipants",
  618. Handler: storelink.GetParticipantsHandler(serverCtx),
  619. },
  620. {
  621. Method: http.MethodGet,
  622. Path: "/storelink/getResourceSpecs",
  623. Handler: storelink.GetAISpecsHandler(serverCtx),
  624. },
  625. },
  626. rest.WithPrefix("/pcm/v1"),
  627. )
  628. server.AddRoutes(
  629. []rest.Route{
  630. {
  631. Method: http.MethodGet,
  632. Path: "/apps/list",
  633. Handler: apps.AppListHandler(serverCtx),
  634. },
  635. {
  636. Method: http.MethodGet,
  637. Path: "/apps/distribute/:appName",
  638. Handler: apps.AppDetailHandler(serverCtx),
  639. },
  640. {
  641. Method: http.MethodGet,
  642. Path: "/apps/pods/:appName",
  643. Handler: apps.AppPodsHandler(serverCtx),
  644. },
  645. {
  646. Method: http.MethodGet,
  647. Path: "/apps/getAppByAppName/:appName",
  648. Handler: apps.GetAppByAppNameHandler(serverCtx),
  649. },
  650. {
  651. Method: http.MethodDelete,
  652. Path: "/apps/deleteApp",
  653. Handler: apps.DeleteAppByAppNameHandler(serverCtx),
  654. },
  655. {
  656. Method: http.MethodPut,
  657. Path: "/apps/updateApp",
  658. Handler: apps.UpdateAppByAppNameHandler(serverCtx),
  659. },
  660. {
  661. Method: http.MethodPut,
  662. Path: "/apps/restartApp",
  663. Handler: apps.RestartAppByAppNameHandler(serverCtx),
  664. },
  665. {
  666. Method: http.MethodPut,
  667. Path: "/apps/pauseApp",
  668. Handler: apps.PauseAppByAppNameHandler(serverCtx),
  669. },
  670. {
  671. Method: http.MethodPut,
  672. Path: "/apps/startApp",
  673. Handler: apps.StartAppByAppNameHandler(serverCtx),
  674. },
  675. },
  676. rest.WithPrefix("/pcm/v1"),
  677. )
  678. }

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.