forked from Shiloh/githaven
Check if the release is converted from the tag when updating the release (#30984)
Call `notify_service.NewRelease` when a release is created from an existing tag.
This commit is contained in:
parent
d0d6aad85f
commit
fc89363832
@ -204,7 +204,7 @@ func UpdateRelease(ctx context.Context, doer *user_model.User, gitRepo *git.Repo
|
|||||||
if rel.ID == 0 {
|
if rel.ID == 0 {
|
||||||
return errors.New("UpdateRelease only accepts an exist release")
|
return errors.New("UpdateRelease only accepts an exist release")
|
||||||
}
|
}
|
||||||
isCreated, err := createTag(gitRepo.Ctx, gitRepo, rel, "")
|
isTagCreated, err := createTag(gitRepo.Ctx, gitRepo, rel, "")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -216,6 +216,12 @@ func UpdateRelease(ctx context.Context, doer *user_model.User, gitRepo *git.Repo
|
|||||||
}
|
}
|
||||||
defer committer.Close()
|
defer committer.Close()
|
||||||
|
|
||||||
|
oldRelease, err := repo_model.GetReleaseByID(ctx, rel.ID)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
isConvertedFromTag := oldRelease.IsTag && !rel.IsTag
|
||||||
|
|
||||||
if err = repo_model.UpdateRelease(ctx, rel); err != nil {
|
if err = repo_model.UpdateRelease(ctx, rel); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -292,7 +298,7 @@ func UpdateRelease(ctx context.Context, doer *user_model.User, gitRepo *git.Repo
|
|||||||
}
|
}
|
||||||
|
|
||||||
if !rel.IsDraft {
|
if !rel.IsDraft {
|
||||||
if !isCreated {
|
if !isTagCreated && !isConvertedFromTag {
|
||||||
notify_service.UpdateRelease(gitRepo.Ctx, doer, rel)
|
notify_service.UpdateRelease(gitRepo.Ctx, doer, rel)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user