Rewrite WriteRef in Go
This RPC is still in gitaly-ruby but it can be moved to the Go parent process. This should not be hard.
These are the tests that cover WriteRef: https://gitlab.com/gitlab-org/gitaly/blob/master/internal/service/repository/write_ref_test.go
The Go handler, which currently proxies to gitaly-ruby, is in https://gitlab.com/gitlab-org/gitaly/blob/master/internal/service/repository/write_ref.go
The ruby implementation is in https://gitlab.com/gitlab-org/gitaly/blob/master/ruby/lib/gitlab/git/repository.rb (search for write_ref
).
When you work on this, check out the rspec tests that cover this RPC and the underlying implementation, and ask yourself if the Go implementation will have enough coverage.
Keep the ruby implementation around in the first iteration of this issue for the sake of backwards compatibility.