Browse Source

Mirror: Update DB on Address-Update too (#12964) (#12967)

* Mirror: Update DB on Address-Update too (#12964)

* Mirror: Update DB on Address-Update too

* new name for function to better describe

* fix lint
tags/v1.12.5
6543 3 years ago
parent
commit
3e279dfb0b
No account linked to committer's email address
2 changed files with 10 additions and 6 deletions
  1. 2
    2
      routers/repo/setting.go
  2. 8
    4
      services/mirror/mirror.go

+ 2
- 2
routers/repo/setting.go View File

@@ -185,8 +185,8 @@ func SettingsPost(ctx *context.Context, form auth.RepoSettingForm) {

address = u.String()

if err := mirror_service.SaveAddress(ctx.Repo.Mirror, address); err != nil {
ctx.ServerError("SaveAddress", err)
if err := mirror_service.UpdateAddress(ctx.Repo.Mirror, address); err != nil {
ctx.ServerError("UpdateAddress", err)
return
}


+ 8
- 4
services/mirror/mirror.go View File

@@ -90,8 +90,8 @@ func AddressNoCredentials(m *models.Mirror) string {
return u.String()
}

// SaveAddress writes new address to Git repository config.
func SaveAddress(m *models.Mirror, addr string) error {
// UpdateAddress writes new address to Git repository and database
func UpdateAddress(m *models.Mirror, addr string) error {
repoPath := m.Repo.RepoPath()
// Remove old origin
_, err := git.NewCommand("remote", "rm", "origin").RunInDir(repoPath)
@@ -99,8 +99,12 @@ func SaveAddress(m *models.Mirror, addr string) error {
return err
}

_, err = git.NewCommand("remote", "add", "origin", "--mirror=fetch", addr).RunInDir(repoPath)
return err
if _, err = git.NewCommand("remote", "add", "origin", "--mirror=fetch", addr).RunInDir(repoPath); err != nil {
return err
}

m.Repo.OriginalURL = addr
return models.UpdateRepositoryCols(m.Repo, "original_url")
}

// gitShortEmptySha Git short empty SHA

Loading…
Cancel
Save