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:
authorMichael Leopard <mleopard@gitlab.com>2019-02-11 15:47:41 +0300
committerMichael Leopard <mleopard@gitlab.com>2019-02-11 15:47:41 +0300
commitdf887af179e7f3af3d6b9aa2740db0f17895a7dc (patch)
treeae27332a42692d6a9414a801d08c5c8ac7ac8bb0
parent94ecbad5f45e36d9ece21e26bb998543a0094c5c (diff)
Porting FetchRemote to go
-rw-r--r--internal/service/repository/fetch_remote.go38
1 files changed, 22 insertions, 16 deletions
diff --git a/internal/service/repository/fetch_remote.go b/internal/service/repository/fetch_remote.go
index b29db8b56..6d90b3dc8 100644
--- a/internal/service/repository/fetch_remote.go
+++ b/internal/service/repository/fetch_remote.go
@@ -3,31 +3,37 @@ package repository
import (
"context"
- grpc_logrus "github.com/grpc-ecosystem/go-grpc-middleware/logging/logrus"
- log "github.com/sirupsen/logrus"
"gitlab.com/gitlab-org/gitaly-proto/go/gitalypb"
- "gitlab.com/gitlab-org/gitaly/internal/rubyserver"
+ "gitlab.com/gitlab-org/gitaly/internal/git"
)
func (s *server) FetchRemote(ctx context.Context, in *gitalypb.FetchRemoteRequest) (*gitalypb.FetchRemoteResponse, error) {
- grpc_logrus.Extract(ctx).WithFields(log.Fields{
- "Remote": in.GetRemote(),
- "Force": in.GetForce(),
- "NoTags": in.GetNoTags(),
- "Timeout": in.GetTimeout(),
- "SSHKey": in.GetSshKey(),
- "KnownHosts": in.GetKnownHosts(),
- }).Debug("FetchRemote")
-
- client, err := s.RepositoryServiceClient(ctx)
+ repo := in.GetRepository()
+
+ force := ""
+ if in.GetForce() {
+ force = "--force"
+ }
+
+ prune := "--prune"
+ if in.GetNoPrune() {
+ prune = ""
+ }
+
+ tags := "--tags"
+ if in.GetNoTags() {
+ tags = "--no-tags"
+ }
+
+ cmd, err := git.Command(ctx, repo, "fetch", in.GetRemote(), prune, force, tags, "--quiet")
if err != nil {
return nil, err
}
- clientCtx, err := rubyserver.SetHeaders(ctx, in.GetRepository())
- if err != nil {
+ if err := cmd.Wait(); err != nil {
return nil, err
}
- return client.FetchRemote(clientCtx, in)
+ return &gitalypb.FetchRemoteResponse{}, nil
+
}