mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-01 05:36:19 +01:00
Fix branch/tag notifications in mirror sync (#13855)
* Fix branch/tag notifications in mirror sync * Fix gofmt Co-authored-by: Gitea <gitea@fake.local> Co-authored-by: Lauris BH <lauris@nix.lv>
This commit is contained in:
parent
d0d59e3730
commit
8561f26695
1 changed files with 20 additions and 0 deletions
|
@ -149,6 +149,11 @@ func parseRemoteUpdateOutput(output string) []*mirrorSyncResult {
|
||||||
|
|
||||||
switch {
|
switch {
|
||||||
case strings.HasPrefix(lines[i], " * "): // New reference
|
case strings.HasPrefix(lines[i], " * "): // New reference
|
||||||
|
if strings.HasPrefix(lines[i], " * [new tag]") {
|
||||||
|
refName = git.TagPrefix + refName
|
||||||
|
} else if strings.HasPrefix(lines[i], " * [new branch]") {
|
||||||
|
refName = git.BranchPrefix + refName
|
||||||
|
}
|
||||||
results = append(results, &mirrorSyncResult{
|
results = append(results, &mirrorSyncResult{
|
||||||
refName: refName,
|
refName: refName,
|
||||||
oldCommitID: gitShortEmptySha,
|
oldCommitID: gitShortEmptySha,
|
||||||
|
@ -438,6 +443,21 @@ func syncMirror(repoID string) {
|
||||||
|
|
||||||
// Create reference
|
// Create reference
|
||||||
if result.oldCommitID == gitShortEmptySha {
|
if result.oldCommitID == gitShortEmptySha {
|
||||||
|
if tp == git.TagPrefix {
|
||||||
|
tp = "tag"
|
||||||
|
} else if tp == git.BranchPrefix {
|
||||||
|
tp = "branch"
|
||||||
|
}
|
||||||
|
commitID, err := gitRepo.GetRefCommitID(result.refName)
|
||||||
|
if err != nil {
|
||||||
|
log.Error("gitRepo.GetRefCommitID [repo_id: %s, ref_name: %s]: %v", m.RepoID, result.refName, err)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
notification.NotifySyncPushCommits(m.Repo.MustOwner(), m.Repo, &repo_module.PushUpdateOptions{
|
||||||
|
RefFullName: result.refName,
|
||||||
|
OldCommitID: git.EmptySHA,
|
||||||
|
NewCommitID: commitID,
|
||||||
|
}, repo_module.NewPushCommits())
|
||||||
notification.NotifySyncCreateRef(m.Repo.MustOwner(), m.Repo, tp, result.refName)
|
notification.NotifySyncCreateRef(m.Repo.MustOwner(), m.Repo, tp, result.refName)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue