
- Massive replacement of changing `code.gitea.io/gitea` to `forgejo.org`. - Resolves forgejo/discussions#258 Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7337 Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org> Reviewed-by: Michael Kriese <michael.kriese@gmx.de> Reviewed-by: Beowulf <beowulf@beocode.eu> Reviewed-by: Panagiotis "Ivory" Vasilopoulos <git@n0toose.net> Co-authored-by: Gusted <postmaster@gusted.xyz> Co-committed-by: Gusted <postmaster@gusted.xyz>
35 lines
1 KiB
Go
35 lines
1 KiB
Go
// Copyright 2022 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package container
|
|
|
|
import (
|
|
"context"
|
|
"strings"
|
|
|
|
packages_model "forgejo.org/models/packages"
|
|
user_model "forgejo.org/models/user"
|
|
container_module "forgejo.org/modules/packages/container"
|
|
)
|
|
|
|
// UpdateRepositoryNames updates the repository name property for all packages of the specific owner
|
|
func UpdateRepositoryNames(ctx context.Context, owner *user_model.User, newOwnerName string) error {
|
|
ps, err := packages_model.GetPackagesByType(ctx, owner.ID, packages_model.TypeContainer)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
newOwnerName = strings.ToLower(newOwnerName)
|
|
|
|
for _, p := range ps {
|
|
if err := packages_model.DeletePropertyByName(ctx, packages_model.PropertyTypePackage, p.ID, container_module.PropertyRepository); err != nil {
|
|
return err
|
|
}
|
|
|
|
if _, err := packages_model.InsertProperty(ctx, packages_model.PropertyTypePackage, p.ID, container_module.PropertyRepository, newOwnerName+"/"+p.LowerName); err != nil {
|
|
return err
|
|
}
|
|
}
|
|
|
|
return nil
|
|
}
|