aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--models/repo/mirror.go8
-rw-r--r--services/mirror/mirror_pull.go3
2 files changed, 11 insertions, 0 deletions
diff --git a/models/repo/mirror.go b/models/repo/mirror.go
index 8494331ff7..df4e320752 100644
--- a/models/repo/mirror.go
+++ b/models/repo/mirror.go
@@ -6,6 +6,7 @@
package repo
import (
+ "context"
"errors"
"fmt"
"time"
@@ -113,6 +114,13 @@ func UpdateMirror(m *Mirror) error {
return updateMirror(db.GetEngine(db.DefaultContext), m)
}
+// TouchMirror updates the mirror updatedUnix
+func TouchMirror(ctx context.Context, m *Mirror) error {
+ m.UpdatedUnix = timeutil.TimeStampNow()
+ _, err := db.GetEngine(ctx).ID(m.ID).Cols("updated_unix").Update(m)
+ return err
+}
+
// DeleteMirrorByRepoID deletes a mirror by repoID
func DeleteMirrorByRepoID(repoID int64) error {
_, err := db.GetEngine(db.DefaultContext).Delete(&Mirror{RepoID: repoID})
diff --git a/services/mirror/mirror_pull.go b/services/mirror/mirror_pull.go
index d032a932cf..d142a48ca0 100644
--- a/services/mirror/mirror_pull.go
+++ b/services/mirror/mirror_pull.go
@@ -411,6 +411,9 @@ func SyncPullMirror(ctx context.Context, repoID int64) bool {
log.Trace("SyncMirrors [repo: %-v]: Running Sync", m.Repo)
results, ok := runSync(ctx, m)
if !ok {
+ if err = repo_model.TouchMirror(ctx, m); err != nil {
+ log.Error("SyncMirrors [repo: %-v]: failed to TouchMirror: %v", m.Repo, err)
+ }
return false
}