@@ -127,25 +127,33 @@ func MigrateRepositoryGitData(ctx context.Context, u *models.User, repo *models.
127
127
}
128
128
129
129
if opts .Mirror {
130
- var interval = setting .Mirror .DefaultInterval
130
+ mirrorModel := models.Mirror {
131
+ RepoID : repo .ID ,
132
+ Interval : setting .Mirror .DefaultInterval ,
133
+ EnablePrune : true ,
134
+ NextUpdateUnix : timeutil .TimeStampNow ().AddDuration (setting .Mirror .DefaultInterval ),
135
+ }
136
+
131
137
if opts .MirrorInterval != "" {
132
- interval , err = time .ParseDuration (opts .MirrorInterval )
138
+ parsedInterval , err : = time .ParseDuration (opts .MirrorInterval )
133
139
if err != nil {
134
140
log .Error ("Failed to set Interval: %v" , err )
135
141
return repo , err
136
142
}
137
- if interval != 0 && interval < setting .Mirror .MinInterval {
138
- err := fmt .Errorf ("Interval is set below Minimum Interval" )
143
+ if parsedInterval == 0 {
144
+ mirrorModel .Interval = 0
145
+ mirrorModel .NextUpdateUnix = 0
146
+ } else if parsedInterval < setting .Mirror .MinInterval {
147
+ err := fmt .Errorf ("Interval %s is set below Minimum Interval of %s" , parsedInterval , setting .Mirror .MinInterval )
139
148
log .Error ("Interval: %s is too frequent" , opts .MirrorInterval )
140
149
return repo , err
150
+ } else {
151
+ mirrorModel .Interval = parsedInterval
152
+ mirrorModel .NextUpdateUnix = timeutil .TimeStampNow ().AddDuration (parsedInterval )
141
153
}
142
154
}
143
- if err = models .InsertMirror (& models.Mirror {
144
- RepoID : repo .ID ,
145
- Interval : interval ,
146
- EnablePrune : true ,
147
- NextUpdateUnix : timeutil .TimeStampNow ().AddDuration (interval ),
148
- }); err != nil {
155
+
156
+ if err = models .InsertMirror (& mirrorModel ); err != nil {
149
157
return repo , fmt .Errorf ("InsertOne: %v" , err )
150
158
}
151
159
0 commit comments