mirror of
https://github.com/Rain-kl/OpenFlare.git
synced 2026-10-11 01:36:37 +08:00
79820b33eb
Add upload-from-url so admins can paste an HTTP(S) link and let the control plane download the archive with browser-like headers. Private/LAN hosts and insecure TLS certificates are allowed for internal artifact stores; package size and format checks reuse the existing local-upload pipeline.
29 lines
1.2 KiB
Go
29 lines
1.2 KiB
Go
// Copyright 2026 Arctel.net
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
package openflare
|
|
|
|
import (
|
|
"github.com/Rain-kl/Wavelet/internal/apps/openflare/apiutil"
|
|
"github.com/Rain-kl/Wavelet/internal/apps/openflare/pages"
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
func registerPagesRoutes(apiGroup *gin.RouterGroup) {
|
|
pagesRoute := apiGroup.Group("/pages")
|
|
pagesRoute.Use(apiutil.AdminMiddlewares()...)
|
|
{
|
|
apiutil.RegisterCollection(pagesRoute, "GET", pages.ListProjectsHandler)
|
|
pagesRoute.GET("/:id", pages.GetProjectHandler)
|
|
apiutil.RegisterCollection(pagesRoute, "POST", pages.CreateProjectHandler)
|
|
pagesRoute.POST("/:id/update", pages.UpdateProjectHandler)
|
|
pagesRoute.POST("/:id/delete", pages.DeleteProjectHandler)
|
|
pagesRoute.GET("/:id/deployments", pages.ListDeploymentsHandler)
|
|
pagesRoute.POST("/:id/deployments/upload", pages.UploadDeploymentHandler)
|
|
pagesRoute.POST("/:id/deployments/upload-from-url", pages.UploadDeploymentFromURLHandler)
|
|
pagesRoute.POST("/:id/deployments/:deployment_id/activate", pages.ActivateDeploymentHandler)
|
|
pagesRoute.POST("/:id/deployments/:deployment_id/delete", pages.DeleteDeploymentHandler)
|
|
pagesRoute.GET("/deployments/:deployment_id/files", pages.ListDeploymentFilesHandler)
|
|
}
|
|
}
|