mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-31 03:18:24 +00:00 
			
		
		
		
	Add Debian package registry (#22854)
Co-authored-by: @awkwardbunny This PR adds a Debian package registry. You can follow [this tutorial](https://www.baeldung.com/linux/create-debian-package) to build a *.deb package for testing. Source packages are not supported at the moment and I did not find documentation of the architecture "all" and how these packages should be treated. --------- Co-authored-by: Brian Hong <brian@hongs.me> Co-authored-by: techknowlogick <techknowlogick@gitea.io>
This commit is contained in:
		| @@ -21,6 +21,7 @@ import ( | ||||
| 	"code.gitea.io/gitea/routers/api/packages/conan" | ||||
| 	"code.gitea.io/gitea/routers/api/packages/conda" | ||||
| 	"code.gitea.io/gitea/routers/api/packages/container" | ||||
| 	"code.gitea.io/gitea/routers/api/packages/debian" | ||||
| 	"code.gitea.io/gitea/routers/api/packages/generic" | ||||
| 	"code.gitea.io/gitea/routers/api/packages/helm" | ||||
| 	"code.gitea.io/gitea/routers/api/packages/maven" | ||||
| @@ -272,6 +273,24 @@ func CommonRoutes(ctx gocontext.Context) *web.Route { | ||||
| 				conda.UploadPackageFile(ctx) | ||||
| 			}) | ||||
| 		}, reqPackageAccess(perm.AccessModeRead)) | ||||
| 		r.Group("/debian", func() { | ||||
| 			r.Get("/repository.key", debian.GetRepositoryKey) | ||||
| 			r.Group("/dists/{distribution}", func() { | ||||
| 				r.Get("/{filename}", debian.GetRepositoryFile) | ||||
| 				r.Get("/by-hash/{algorithmn}/{hash}", debian.GetRepositoryFileByHash) | ||||
| 				r.Group("/{component}/{architecture}", func() { | ||||
| 					r.Get("/{filename}", debian.GetRepositoryFile) | ||||
| 					r.Get("/by-hash/{algorithmn}/{hash}", debian.GetRepositoryFileByHash) | ||||
| 				}) | ||||
| 			}) | ||||
| 			r.Group("/pool/{distribution}/{component}", func() { | ||||
| 				r.Get("/{name}_{version}_{architecture}.deb", debian.DownloadPackageFile) | ||||
| 				r.Group("", func() { | ||||
| 					r.Put("/upload", debian.UploadPackageFile) | ||||
| 					r.Delete("/{name}/{version}/{architecture}", debian.DeletePackageFile) | ||||
| 				}, reqPackageAccess(perm.AccessModeWrite)) | ||||
| 			}) | ||||
| 		}, reqPackageAccess(perm.AccessModeRead)) | ||||
| 		r.Group("/generic", func() { | ||||
| 			r.Group("/{packagename}/{packageversion}", func() { | ||||
| 				r.Delete("", reqPackageAccess(perm.AccessModeWrite), generic.DeletePackage) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user