diff options
author | Patrick Steinhardt <psteinhardt@gitlab.com> | 2021-03-10 15:48:27 +0300 |
---|---|---|
committer | Patrick Steinhardt <psteinhardt@gitlab.com> | 2021-03-10 16:25:07 +0300 |
commit | fecffa868655a86b3358230a8218f9318af565e2 (patch) | |
tree | 15adc6dfdd3d55e25971ca4b6ea069e135b17bba | |
parent | 842d86ff6bd91d9826b613851472ae1defdd9b00 (diff) |
operations: Use proper types for `isAncestor()`
Convert `isAncestor()` to use properly typed arguments and
return values.
-rw-r--r-- | internal/gitaly/service/operations/cherry_pick.go | 2 | ||||
-rw-r--r-- | internal/gitaly/service/operations/merge.go | 11 | ||||
-rw-r--r-- | internal/gitaly/service/operations/revert.go | 2 |
3 files changed, 10 insertions, 5 deletions
diff --git a/internal/gitaly/service/operations/cherry_pick.go b/internal/gitaly/service/operations/cherry_pick.go index 3818fd240..9dacf57e9 100644 --- a/internal/gitaly/service/operations/cherry_pick.go +++ b/internal/gitaly/service/operations/cherry_pick.go @@ -100,7 +100,7 @@ func (s *Server) userCherryPick(ctx context.Context, req *gitalypb.UserCherryPic } if !branchCreated { - ancestor, err := s.isAncestor(ctx, req.Repository, oldrev.String(), newrev.String()) + ancestor, err := s.isAncestor(ctx, req.Repository, oldrev, newrev) if err != nil { return nil, err } diff --git a/internal/gitaly/service/operations/merge.go b/internal/gitaly/service/operations/merge.go index 74edf8229..747b224f3 100644 --- a/internal/gitaly/service/operations/merge.go +++ b/internal/gitaly/service/operations/merge.go @@ -158,7 +158,12 @@ func (s *Server) UserFFBranch(ctx context.Context, in *gitalypb.UserFFBranchRequ return nil, helper.ErrInvalidArgument(err) } - ancestor, err := s.isAncestor(ctx, in.Repository, revision.String(), in.CommitId) + commitID, err := git.NewObjectIDFromHex(in.CommitId) + if err != nil { + return nil, helper.ErrInvalidArgumentf("cannot parse commit ID: %w", err) + } + + ancestor, err := s.isAncestor(ctx, in.Repository, revision, commitID) if err != nil { return nil, err } @@ -296,11 +301,11 @@ func (s *Server) UserMergeToRef(ctx context.Context, request *gitalypb.UserMerge }, nil } -func (s *Server) isAncestor(ctx context.Context, repo repository.GitRepo, ancestor, descendant string) (bool, error) { +func (s *Server) isAncestor(ctx context.Context, repo repository.GitRepo, ancestor, descendant git.ObjectID) (bool, error) { cmd, err := s.gitCmdFactory.New(ctx, repo, nil, git.SubCmd{ Name: "merge-base", Flags: []git.Option{git.Flag{Name: "--is-ancestor"}}, - Args: []string{ancestor, descendant}, + Args: []string{ancestor.String(), descendant.String()}, }) if err != nil { return false, helper.ErrInternalf("isAncestor: %w", err) diff --git a/internal/gitaly/service/operations/revert.go b/internal/gitaly/service/operations/revert.go index 31b815b0c..f6a028058 100644 --- a/internal/gitaly/service/operations/revert.go +++ b/internal/gitaly/service/operations/revert.go @@ -93,7 +93,7 @@ func (s *Server) UserRevert(ctx context.Context, req *gitalypb.UserRevertRequest } if !branchCreated { - ancestor, err := s.isAncestor(ctx, req.Repository, oldrev.String(), newrev.String()) + ancestor, err := s.isAncestor(ctx, req.Repository, oldrev, newrev) if err != nil { return nil, err } |