From df887af179e7f3af3d6b9aa2740db0f17895a7dc Mon Sep 17 00:00:00 2001 From: Michael Leopard Date: Mon, 11 Feb 2019 07:47:41 -0500 Subject: [PATCH 1/4] Porting FetchRemote to go --- internal/service/repository/fetch_remote.go | 38 ++++++++++++--------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/internal/service/repository/fetch_remote.go b/internal/service/repository/fetch_remote.go index b29db8b56a5..6d90b3dc87d 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 + } -- GitLab From 72e412c19eb8509eb541598d96af8214d85b413f Mon Sep 17 00:00:00 2001 From: Michael Leopard Date: Mon, 11 Feb 2019 07:58:56 -0500 Subject: [PATCH 2/4] Adding unreleased changelog --- changelogs/unreleased/rewrite-fetch-remote.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 changelogs/unreleased/rewrite-fetch-remote.yml diff --git a/changelogs/unreleased/rewrite-fetch-remote.yml b/changelogs/unreleased/rewrite-fetch-remote.yml new file mode 100644 index 00000000000..a2fb95bcb69 --- /dev/null +++ b/changelogs/unreleased/rewrite-fetch-remote.yml @@ -0,0 +1,5 @@ +--- +title: Porting FetchRemote to go +merge_request: 1071 +author: +type: performance -- GitLab From efa4d5f2695def92fc5aa6dec26629ffb94eef87 Mon Sep 17 00:00:00 2001 From: Michael Leopard Date: Mon, 11 Feb 2019 08:47:10 -0500 Subject: [PATCH 3/4] Updating changelog --- changelogs/unreleased/rewrite-fetch-remote.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/changelogs/unreleased/rewrite-fetch-remote.yml b/changelogs/unreleased/rewrite-fetch-remote.yml index a2fb95bcb69..1b51e08a48a 100644 --- a/changelogs/unreleased/rewrite-fetch-remote.yml +++ b/changelogs/unreleased/rewrite-fetch-remote.yml @@ -1,5 +1,5 @@ --- -title: Porting FetchRemote to go +title: Reimplement FetchRemote to go merge_request: 1071 author: type: performance -- GitLab From 5f877001043b5c7765a0c19270b6087365a3b2d7 Mon Sep 17 00:00:00 2001 From: Michael Leopard Date: Mon, 11 Feb 2019 08:50:03 -0500 Subject: [PATCH 4/4] Updating changelog --- changelogs/unreleased/rewrite-fetch-remote.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/changelogs/unreleased/rewrite-fetch-remote.yml b/changelogs/unreleased/rewrite-fetch-remote.yml index 1b51e08a48a..cae0417bff7 100644 --- a/changelogs/unreleased/rewrite-fetch-remote.yml +++ b/changelogs/unreleased/rewrite-fetch-remote.yml @@ -1,5 +1,5 @@ --- -title: Reimplement FetchRemote to go +title: Reimplement FetchRemote in go merge_request: 1071 author: type: performance -- GitLab