@@ -1146,16 +1146,6 @@ func CreateRepository(ctx context.Context, doer, u *User, repo *Repository, over
1146
1146
return fmt .Errorf ("recalculateAccesses: %v" , err )
1147
1147
}
1148
1148
1149
- if u .Visibility == api .VisibleTypePublic && ! repo .IsPrivate {
1150
- // Create/Remove git-daemon-export-ok for git-daemon...
1151
- daemonExportFile := path .Join (repo .RepoPath (), `git-daemon-export-ok` )
1152
- if f , err := os .Create (daemonExportFile ); err != nil {
1153
- log .Error ("Failed to create %s: %v" , daemonExportFile , err )
1154
- } else {
1155
- f .Close ()
1156
- }
1157
- }
1158
-
1159
1149
if setting .Service .AutoWatchNewRepos {
1160
1150
if err = watchRepo (db .GetEngine (ctx ), doer .ID , repo .ID , true ); err != nil {
1161
1151
return fmt .Errorf ("watchRepo: %v" , err )
@@ -1169,6 +1159,31 @@ func CreateRepository(ctx context.Context, doer, u *User, repo *Repository, over
1169
1159
return nil
1170
1160
}
1171
1161
1162
+ // CheckDaemonExportOK creates/removes git-daemon-export-ok for git-daemon...
1163
+ func (repo * Repository ) CheckDaemonExportOK () error {
1164
+ // Create/Remove git-daemon-export-ok for git-daemon...
1165
+ daemonExportFile := path .Join (repo .RepoPath (), `git-daemon-export-ok` )
1166
+ isExist , err := util .IsExist (daemonExportFile )
1167
+ isPublic := ! repo .IsPrivate && repo .Owner .Visibility == api .VisibleTypePublic
1168
+ if err != nil {
1169
+ log .Error ("Unable to check if %s exists. Error: %v" , daemonExportFile , err )
1170
+ return err
1171
+ }
1172
+ if ! isPublic && isExist {
1173
+ if err = util .Remove (daemonExportFile ); err != nil {
1174
+ log .Error ("Failed to remove %s: %v" , daemonExportFile , err )
1175
+ }
1176
+ } else if isPublic && ! isExist {
1177
+ if f , err := os .Create (daemonExportFile ); err != nil {
1178
+ log .Error ("Failed to create %s: %v" , daemonExportFile , err )
1179
+ } else {
1180
+ f .Close ()
1181
+ }
1182
+ }
1183
+
1184
+ return nil
1185
+ }
1186
+
1172
1187
func countRepositories (userID int64 , private bool ) int64 {
1173
1188
sess := db .GetEngine (db .DefaultContext ).Where ("id > 0" )
1174
1189
@@ -1318,24 +1333,9 @@ func updateRepository(e db.Engine, repo *Repository, visibilityChanged bool) (er
1318
1333
}
1319
1334
1320
1335
// Create/Remove git-daemon-export-ok for git-daemon...
1321
- daemonExportFile := path .Join (repo .RepoPath (), `git-daemon-export-ok` )
1322
- isExist , err := util .IsExist (daemonExportFile )
1323
- isPublic := ! repo .IsPrivate && repo .Owner .Visibility == api .VisibleTypePublic
1324
- if err != nil {
1325
- log .Error ("Unable to check if %s exists. Error: %v" , daemonExportFile , err )
1336
+ if err := repo .CheckDaemonExportOK (); err != nil {
1326
1337
return err
1327
1338
}
1328
- if ! isPublic && isExist {
1329
- if err = util .Remove (daemonExportFile ); err != nil {
1330
- log .Error ("Failed to remove %s: %v" , daemonExportFile , err )
1331
- }
1332
- } else if isPublic && ! isExist {
1333
- if f , err := os .Create (daemonExportFile ); err != nil {
1334
- log .Error ("Failed to create %s: %v" , daemonExportFile , err )
1335
- } else {
1336
- f .Close ()
1337
- }
1338
- }
1339
1339
1340
1340
forkRepos , err := getRepositoriesByForkID (e , repo .ID )
1341
1341
if err != nil {
0 commit comments