Skip to content

Commit 7ffb936

Browse files
authored
feat(indexserver): Introduce KeepDeleted Config for keeping stale Repos (#964)
1 parent bf9caa2 commit 7ffb936

File tree

1 file changed

+16
-3
lines changed

1 file changed

+16
-3
lines changed

cmd/zoekt-indexserver/config.go

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ type ConfigEntry struct {
5050
ExcludeTopics []string
5151
Active bool
5252
NoArchived bool
53+
KeepDeleted bool
5354
GerritFetchMetaConfig bool
5455
GerritRepoNameFormat string
5556
ExcludeUserRepos bool
@@ -169,7 +170,7 @@ func executeMirror(cfg []ConfigEntry, repoDir string, pendingRepos chan<- string
169170
var cmd *exec.Cmd
170171
if c.GitHubURL != "" || c.GithubUser != "" || c.GithubOrg != "" {
171172
cmd = exec.Command("zoekt-mirror-github",
172-
"-dest", repoDir, "-delete")
173+
"-dest", repoDir)
173174
if c.GitHubURL != "" {
174175
cmd.Args = append(cmd.Args, "-url", c.GitHubURL)
175176
}
@@ -196,6 +197,9 @@ func executeMirror(cfg []ConfigEntry, repoDir string, pendingRepos chan<- string
196197
if c.NoArchived {
197198
cmd.Args = append(cmd.Args, "-no_archived")
198199
}
200+
if !c.KeepDeleted {
201+
cmd.Args = append(cmd.Args, "-delete")
202+
}
199203
} else if c.GitilesURL != "" {
200204
cmd = exec.Command("zoekt-mirror-gitiles",
201205
"-dest", repoDir, "-name", c.Name)
@@ -213,7 +217,7 @@ func executeMirror(cfg []ConfigEntry, repoDir string, pendingRepos chan<- string
213217
cmd.Args = append(cmd.Args, c.CGitURL)
214218
} else if c.BitBucketServerURL != "" {
215219
cmd = exec.Command("zoekt-mirror-bitbucket-server",
216-
"-dest", repoDir, "-url", c.BitBucketServerURL, "-delete")
220+
"-dest", repoDir, "-url", c.BitBucketServerURL)
217221
if c.BitBucketServerProject != "" {
218222
cmd.Args = append(cmd.Args, "-project", c.BitBucketServerProject)
219223
}
@@ -232,6 +236,9 @@ func executeMirror(cfg []ConfigEntry, repoDir string, pendingRepos chan<- string
232236
if c.CredentialPath != "" {
233237
cmd.Args = append(cmd.Args, "-credentials", c.CredentialPath)
234238
}
239+
if !c.KeepDeleted {
240+
cmd.Args = append(cmd.Args, "-delete")
241+
}
235242
} else if c.GitLabURL != "" {
236243
cmd = exec.Command("zoekt-mirror-gitlab",
237244
"-dest", repoDir, "-url", c.GitLabURL)
@@ -253,9 +260,12 @@ func executeMirror(cfg []ConfigEntry, repoDir string, pendingRepos chan<- string
253260
if c.NoArchived {
254261
cmd.Args = append(cmd.Args, "-no_archived")
255262
}
263+
if !c.KeepDeleted {
264+
cmd.Args = append(cmd.Args, "-delete")
265+
}
256266
} else if c.GerritApiURL != "" {
257267
cmd = exec.Command("zoekt-mirror-gerrit",
258-
"-dest", repoDir, "-delete")
268+
"-dest", repoDir)
259269
if c.CredentialPath != "" {
260270
cmd.Args = append(cmd.Args, "-http-credentials", c.CredentialPath)
261271
}
@@ -274,6 +284,9 @@ func executeMirror(cfg []ConfigEntry, repoDir string, pendingRepos chan<- string
274284
if c.GerritRepoNameFormat != "" {
275285
cmd.Args = append(cmd.Args, "-repo-name-format", c.GerritRepoNameFormat)
276286
}
287+
if !c.KeepDeleted {
288+
cmd.Args = append(cmd.Args, "-delete")
289+
}
277290
cmd.Args = append(cmd.Args, c.GerritApiURL)
278291
} else {
279292
log.Printf("executeMirror: ignoring config, because it does not contain any valid repository definition: %v", c)

0 commit comments

Comments
 (0)