mirror of
https://github.com/go-gitea/gitea
synced 2025-07-09 20:17:21 +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:
@ -117,13 +117,15 @@ func DeleteFileByID(ctx context.Context, fileID int64) error {
|
||||
|
||||
// PackageFileSearchOptions are options for SearchXXX methods
|
||||
type PackageFileSearchOptions struct {
|
||||
OwnerID int64
|
||||
PackageType string
|
||||
VersionID int64
|
||||
Query string
|
||||
CompositeKey string
|
||||
Properties map[string]string
|
||||
OlderThan time.Duration
|
||||
OwnerID int64
|
||||
PackageType string
|
||||
VersionID int64
|
||||
Query string
|
||||
CompositeKey string
|
||||
Properties map[string]string
|
||||
OlderThan time.Duration
|
||||
HashAlgorithmn string
|
||||
Hash string
|
||||
db.Paginator
|
||||
}
|
||||
|
||||
@ -182,6 +184,15 @@ func (opts *PackageFileSearchOptions) toConds() builder.Cond {
|
||||
cond = cond.And(builder.Lt{"package_file.created_unix": time.Now().Add(-opts.OlderThan).Unix()})
|
||||
}
|
||||
|
||||
if opts.Hash != "" && (opts.HashAlgorithmn == "md5" || opts.HashAlgorithmn == "sha1" || opts.HashAlgorithmn == "sha256" || opts.HashAlgorithmn == "sha512") {
|
||||
innerCond := builder.
|
||||
Expr("package_blob.id = package_file.blob_id").
|
||||
And(builder.Eq{
|
||||
"package_blob.hash_" + opts.HashAlgorithmn: opts.Hash,
|
||||
})
|
||||
cond = cond.And(builder.Exists(builder.Select("package_blob.id").From("package_blob").Where(innerCond)))
|
||||
}
|
||||
|
||||
return cond
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user