Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Okstad <pokstad@gitlab.com>2019-11-08 11:19:20 +0300
committerZeger-Jan van de Weg <git@zjvandeweg.nl>2019-11-08 11:19:20 +0300
commit6a063adc84153b9cc933ddd1df21f4b293da4ec6 (patch)
tree82ca50b732ba60d65ef35d19df0a03a35516c39c
parent751b5899fc2de4b452e7a36e896bf10b048dd1f0 (diff)
Update fetch.go to use command DSL
-rw-r--r--internal/git/objectpool/fetch.go44
1 files changed, 31 insertions, 13 deletions
diff --git a/internal/git/objectpool/fetch.go b/internal/git/objectpool/fetch.go
index 6230bb049..2eae85b17 100644
--- a/internal/git/objectpool/fetch.go
+++ b/internal/git/objectpool/fetch.go
@@ -32,7 +32,7 @@ func (o *ObjectPool) FetchFromOrigin(ctx context.Context, origin *gitalypb.Repos
return err
}
- getRemotes, err := git.Command(ctx, o, "remote")
+ getRemotes, err := git.SafeCmd(ctx, o, nil, git.SubCmd{Name: "remote"})
if err != nil {
return err
}
@@ -51,12 +51,18 @@ func (o *ObjectPool) FetchFromOrigin(ctx context.Context, origin *gitalypb.Repos
var setOriginCmd *command.Command
if originExists {
- setOriginCmd, err = git.Command(ctx, o, "remote", "set-url", sourceRemote, originPath)
+ setOriginCmd, err = git.SafeCmd(ctx, o, nil, git.SubCmd{
+ Name: "remote",
+ Args: []string{"set-url", sourceRemote, originPath},
+ })
if err != nil {
return err
}
} else {
- setOriginCmd, err = git.Command(ctx, o, "remote", "add", sourceRemote, originPath)
+ setOriginCmd, err = git.SafeCmd(ctx, o, nil, git.SubCmd{
+ Name: "remote",
+ Args: []string{"add", sourceRemote, originPath},
+ })
if err != nil {
return err
}
@@ -71,7 +77,11 @@ func (o *ObjectPool) FetchFromOrigin(ctx context.Context, origin *gitalypb.Repos
}
refSpec := fmt.Sprintf("+refs/*:%s/*", sourceRefNamespace)
- fetchCmd, err := git.Command(ctx, o, "fetch", "--quiet", sourceRemote, refSpec)
+ fetchCmd, err := git.SafeCmd(ctx, o, nil, git.SubCmd{
+ Name: "fetch",
+ Flags: []git.Option{git.Flag{"--quiet"}},
+ Args: []string{sourceRemote, refSpec},
+ })
if err != nil {
return err
}
@@ -88,7 +98,10 @@ func (o *ObjectPool) FetchFromOrigin(ctx context.Context, origin *gitalypb.Repos
return err
}
- packRefs, err := git.Command(ctx, o, "pack-refs", "--all")
+ packRefs, err := git.SafeCmd(ctx, o, nil, git.SubCmd{
+ Name: "pack-refs",
+ Flags: []git.Option{git.Flag{"--all"}},
+ })
if err != nil {
return err
}
@@ -110,7 +123,10 @@ const danglingObjectNamespace = "refs/dangling"
// an object is still used anywhere, so the only safe thing to do is to
// assume that every object _is_ used.
func rescueDanglingObjects(ctx context.Context, repo repository.GitRepo) error {
- fsck, err := git.Command(ctx, repo, "fsck", "--connectivity-only", "--dangling")
+ fsck, err := git.SafeCmd(ctx, repo, nil, git.SubCmd{
+ Name: "fsck",
+ Flags: []git.Option{git.Flag{"--connectivity-only"}, git.Flag{"--dangling"}},
+ })
if err != nil {
return err
}
@@ -149,13 +165,15 @@ func rescueDanglingObjects(ctx context.Context, repo repository.GitRepo) error {
}
func repackPool(ctx context.Context, pool repository.GitRepo) error {
- repackArgs := []string{
- "-c", "pack.island=" + sourceRefNamespace + "/heads",
- "-c", "pack.island=" + sourceRefNamespace + "/tags",
- "-c", "pack.writeBitmapHashCache=true",
- "repack", "-aidb",
- }
- repackCmd, err := git.Command(ctx, pool, repackArgs...)
+ repackArgs := []git.Option{
+ git.ValueFlag{"-c", "pack.island=" + sourceRefNamespace + "/heads"},
+ git.ValueFlag{"-c", "pack.island=" + sourceRefNamespace + "/tags"},
+ git.ValueFlag{"-c", "pack.writeBitmapHashCache=true"},
+ }
+ repackCmd, err := git.SafeCmd(ctx, pool, repackArgs, git.SubCmd{
+ Name: "repack",
+ Flags: []git.Option{git.Flag{"-aidb"}},
+ })
if err != nil {
return err
}