fix: update enable_prune even if mirror_interval is not provided (#28905)

Currently, the `updateMirror` function which update the mirror interval
and enable prune properties is only executed by the `Edit` function. But
it is only triggered if `opts.MirrorInterval` is not null, even if
`opts.EnablePrune` is not null.

With this patch, it is now possible to update the enable_prune property
with a patch request without modifying the mirror_interval.

## Example request with httpie

### Currently:
**Does nothing**
```bash
http PATCH https://gitea.your-server/api/v1/repos/myOrg/myRepo "enable_prune:=false" -A bearer -a $gitea_token
```

**Updates both properties**
```bash
http PATCH https://gitea.your-server/api/v1/repos/myOrg/myRepo "enable_prune:=false" "mirror_interval=10m" -A bearer -a $gitea_token
```

### With the patch
**Updates enable_prune only**
```bash
http PATCH https://gitea.your-server/api/v1/repos/myOrg/myRepo "enable_prune:=false" -A bearer -a $gitea_token
```
This commit is contained in:
Anthony Quéré 2024-01-25 13:51:32 +01:00 committed by GitHub
parent 071b7b2a03
commit 3084c990b0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -637,7 +637,7 @@ func Edit(ctx *context.APIContext) {
} }
} }
if opts.MirrorInterval != nil { if opts.MirrorInterval != nil || opts.EnablePrune != nil {
if err := updateMirror(ctx, opts); err != nil { if err := updateMirror(ctx, opts); err != nil {
return return
} }