You've already forked woodpecker
mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2025-06-24 22:06:51 +02:00
Access repos by their ids (#1691)
closes #1295 closes #648 # TODO - [x] add new routes with `:repoID` - [x] load repo in middleware using `:repoID` if present - [x] update UI routes `:owner/:name` to `:repoID` - [x] load repos using id in UI - [x] add lookup endpoint `:owner/:name` to `:repoID` - [x] redirect `:owner/:name` to `:repoID` in UI - [x] use badge with `:repoID` route in UI - [x] update `woodpecker-go` - [x] check cli - [x] add migrations / deprecation notes - [x] check if #648 got solved directly - [x] Test - [x] create repo - [x] repo pages - [x] ui redirects - [x] forge status links
This commit is contained in:
@ -61,8 +61,9 @@ func apiRoutes(e *gin.Engine) {
|
||||
}
|
||||
}
|
||||
|
||||
apiBase.POST("/repos/:owner/:name", session.MustUser(), api.PostRepo)
|
||||
repoBase := apiBase.Group("/repos/:owner/:name")
|
||||
apiBase.GET("/repos/lookup/*repo_full_name", api.LookupRepo) // TODO: check if this public route is a security issue
|
||||
apiBase.POST("/repos", session.MustUser(), api.PostRepo)
|
||||
repoBase := apiBase.Group("/repos/:repo_id")
|
||||
{
|
||||
repoBase.Use(session.SetRepo())
|
||||
repoBase.Use(session.SetPerm())
|
||||
@ -125,12 +126,18 @@ func apiRoutes(e *gin.Engine) {
|
||||
}
|
||||
}
|
||||
|
||||
badges := apiBase.Group("/badges/:owner/:name")
|
||||
badges := apiBase.Group("/badges/:repo_id_or_owner")
|
||||
{
|
||||
badges.GET("/status.svg", api.GetBadge)
|
||||
badges.GET("/cc.xml", api.GetCC)
|
||||
}
|
||||
|
||||
_badges := apiBase.Group("/badges/:repo_id_or_owner/:repo_name")
|
||||
{
|
||||
_badges.GET("/status.svg", api.GetBadge)
|
||||
_badges.GET("/cc.xml", api.GetCC)
|
||||
}
|
||||
|
||||
pipelines := apiBase.Group("/pipelines")
|
||||
{
|
||||
pipelines.Use(session.MustAdmin())
|
||||
|
Reference in New Issue
Block a user