mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2025-11-13 07:23:29 +00:00
Global and organization registries (#1672)
Co-authored-by: Anbraten <6918444+anbraten@users.noreply.github.com>
This commit is contained in:
@@ -61,11 +61,18 @@ func apiRoutes(e *gin.RouterGroup) {
|
||||
org.Use(session.MustOrgMember(true))
|
||||
org.DELETE("", session.MustAdmin(), api.DeleteOrg)
|
||||
org.GET("", api.GetOrg)
|
||||
|
||||
org.GET("/secrets", api.GetOrgSecretList)
|
||||
org.POST("/secrets", api.PostOrgSecret)
|
||||
org.GET("/secrets/:secret", api.GetOrgSecret)
|
||||
org.PATCH("/secrets/:secret", api.PatchOrgSecret)
|
||||
org.DELETE("/secrets/:secret", api.DeleteOrgSecret)
|
||||
|
||||
org.GET("/registries", api.GetOrgRegistryList)
|
||||
org.POST("/registries", api.PostOrgRegistry)
|
||||
org.GET("/registries/:registry", api.GetOrgRegistry)
|
||||
org.PATCH("/registries/:registry", api.PatchOrgRegistry)
|
||||
org.DELETE("/registries/:registry", api.DeleteOrgRegistry)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -118,6 +125,13 @@ func apiRoutes(e *gin.RouterGroup) {
|
||||
repo.DELETE("/secrets/:secret", session.MustPush, api.DeleteSecret)
|
||||
|
||||
// requires push permissions
|
||||
repo.GET("/registries", session.MustPush, api.GetRegistryList)
|
||||
repo.POST("/registries", session.MustPush, api.PostRegistry)
|
||||
repo.GET("/registries/:registry", session.MustPush, api.GetRegistry)
|
||||
repo.PATCH("/registries/:registry", session.MustPush, api.PatchRegistry)
|
||||
repo.DELETE("/registries/:registry", session.MustPush, api.DeleteRegistry)
|
||||
|
||||
// TODO: remove with 3.x
|
||||
repo.GET("/registry", session.MustPush, api.GetRegistryList)
|
||||
repo.POST("/registry", session.MustPush, api.PostRegistry)
|
||||
repo.GET("/registry/:registry", session.MustPush, api.GetRegistry)
|
||||
@@ -184,6 +198,21 @@ func apiRoutes(e *gin.RouterGroup) {
|
||||
secrets.DELETE("/:secret", api.DeleteGlobalSecret)
|
||||
}
|
||||
|
||||
// global registries can be read without actual values by any user
|
||||
readGlobalRegistries := apiBase.Group("/registries")
|
||||
{
|
||||
readGlobalRegistries.Use(session.MustUser())
|
||||
readGlobalRegistries.GET("", api.GetGlobalRegistryList)
|
||||
readGlobalRegistries.GET("/:registry", api.GetGlobalRegistry)
|
||||
}
|
||||
registries := apiBase.Group("/registries")
|
||||
{
|
||||
registries.Use(session.MustAdmin())
|
||||
registries.POST("", api.PostGlobalRegistry)
|
||||
registries.PATCH("/:registry", api.PatchGlobalRegistry)
|
||||
registries.DELETE("/:registry", api.DeleteGlobalRegistry)
|
||||
}
|
||||
|
||||
logLevel := apiBase.Group("/log-level")
|
||||
{
|
||||
logLevel.Use(session.MustAdmin())
|
||||
|
||||
Reference in New Issue
Block a user